Googling/postgresql

[postgreSQL] 대용량 테스트 데이터 만들기 (Dummy Data)

2021. 5. 20. 09:56
728x90
반응형

Postgresql 테스트를 위하여 충분한 운영 데이터가 있다면 좋겠지만 데이터가 많지 않을수도 있고 데이터 접근이 어려울 수도 있고 실제로 데이터 보안상 마음대로 가져다 테스트 해볼 수 없는 부분이기에 테스트는 테스트 데이터를 활용하여 하는 것이 맞다고 본다.

 

지극히 개인 경험으로 100만 건부터 1억건 이상의 테이블 모두 만나봤지만, 확실히 100만에서 1000만으로 뛸때, 1000만에서 1억으로 뛸때 확실히 성능상 이슈가 생긴다. 또, 1개의 테이블이 인덱스 튜닝으로 적절하게 유지되는 수준은 1000만 이내가 적정한 것으로 보인다. 더 데이터가 많아진다면 인덱스 튜닝 뿐만 아니라 좀 더 샤딩(Sharding), 파티셔닝(Partitioning)과 같은 고급 기술이 필요해보인다.

 

여튼, 최소 100만건은 있어야 테스트가 가능하다고 보이기에 다음과 같이 손쉽게 만들어 테스트 해보면 좋을 것 같다.

 

CREATE TABLE dummy_test AS
SELECT
	dummy as idx1,
	(dummy%5) as idx2,
	(dummy%10) as idx3,
	'테스트' || dummy AS test_string1,
	'테스트' || (dummy%5) AS test_string2,
	'테스트' || (dummy%10) AS test_string3,
	'테스트 테스트 테스트' || dummy AS test_string4,
	'테스트 테스트 테스트' || (dummy%5) AS test_string5,
	'테스트 테스트 테스트' || (dummy%10) AS test_string6,
	md5(random()::text) AS random_string
FROM
	generate_series(1, 1000000) AS dummy;
    
SELECT * FROM dummy_test;

 

반응형

'Googling > postgresql' 카테고리의 다른 글

[postgreSQL] 써보니 유용한 쿼리 (feat. 메타 정보 쿼리)  (0) 2022.02.22
[RDBMS] PostgreSQL vs MySQL 차이 (fear. 버전을 막론하고)  (4) 2021.08.07
[postgreSQL] 카운트 쿼리 쓸 때 알아두면 좋은 것 (null, limit)  (0) 2021.08.02
[postgreSQL] 재귀쿼리 만들기 (Recursive) ( + 매우 주의해야하는 케이스 : 무한루프)  (2) 2021.08.01
[postgreSQL] 인덱스의 성능을 위하여 알아둘 것. 카디널리티  (0) 2021.05.26
'Googling/postgresql' 카테고리의 다른 글
  • [RDBMS] PostgreSQL vs MySQL 차이 (fear. 버전을 막론하고)
  • [postgreSQL] 카운트 쿼리 쓸 때 알아두면 좋은 것 (null, limit)
  • [postgreSQL] 재귀쿼리 만들기 (Recursive) ( + 매우 주의해야하는 케이스 : 무한루프)
  • [postgreSQL] 인덱스의 성능을 위하여 알아둘 것. 카디널리티
날개단
날개단
이왕 하는거 우왕 나오게
날개단
날개단 기술 블로그
날개단
전체
오늘
어제
  • 분류 전체보기 (66)
    • Small Talk (2)
    • Retrospective (13)
    • Document (4)
    • Googling (1)
      • cs (7)
      • postgresql (8)
      • Vue + Nuxt (3)
      • javascript (3)
      • typescript (1)
      • Node.js (1)
      • Git (1)
      • JSP (1)
      • html + css (1)
      • Android (1)
      • tools (4)
    • Achieving (1)
      • ToyProject (1)
      • Study (0)
    • Deep Dive Series (12)
      • Paging (4)
      • Good Condition (5)
      • Image Resizing (2)
      • Algorithm (1)
    • Review (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 개발자회고
  • 신입개발자
  • if문
  • 사이드프로젝트
  • 개발자변신
  • 코드리팩토링
  • 페이징
  • 토이프로젝트
  • 상반기회고
  • 조건문
  • 좋은조건문
  • nuxt
  • 스타트업개발자
  • 포스트그레
  • 개발자
  • EARLYRETURN
  • 좋은분기
  • PostgreSQL
  • 회고
  • 스타트업회고

최근 댓글

최근 글

hELLO · Designed By 정상우.
날개단
[postgreSQL] 대용량 테스트 데이터 만들기 (Dummy Data)
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.