StoryCode

'2022/06/15'에 해당되는 글 2건

  1. 속도.postgres vs mariad
  2. 설치/기본사용.우분투

속도.postgres vs mariad

Database 관리/PostgreSQL
반응형

# 참조 : https://techblog.woowahan.com/6550/

 

# 설치편 먼저 볼 것.

 

Test Machine Spec) DELL Notebook i7 5500U 2C4T 16GMem SSD, Ubuntu 22

 

1) 1000 M Bulk Load Test

Data 1000MB 1000만건) 포맷은 아래 사진 참조

1.1) postgres 테스트

psql # \c service4loadtest;

psql # CREATE TABLE BULKLOADDATA_TBL (
  A date default NULL,  B date default NULL,
  C varchar(10) default NULL,  D varchar(10) default NULL,  E varchar(10) default NULL,  F varchar(10) default NULL,
  G varchar(10) default NULL,  H varchar(10) default NULL,  I varchar(10) default NULL,  J varchar(10) default NULL,
  K integer default NULL,  L integer default NULL,  M integer default NULL,  N integer default NULL,
  O integer default NULL
);

 

psql # \dt

psql # copy bulkloaddata_tbl (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) from '/var/lib/postgresql/databaseloadtest/loadtest.dat'

결론 ) 23초 소요

 

 

mariadb )

mariadb # mysql -uroot -p

mariadb # create database service4loadtest;

mariadb # use service4loadtest;

CREATE TABLE BULKLOADDATA_TBL (
  A date default NULL,  B date default NULL,
  C varchar(10) default NULL,  D varchar(10) default NULL,  E varchar(10) default NULL,  F varchar(10) default NULL,
  G varchar(10) default NULL,  H varchar(10) default NULL,  I varchar(10) default NULL,  J varchar(10) default NULL,
  K int(11) default NULL,  L int(11) default NULL,  M int(11) default NULL,  N int(11) default NULL,
  O int(11) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

mariadb # LOAD DATA INFILE '/home/user/databaseloadtest/loadtest.dat'
INTO TABLE BULKLOADDATA_TBL
FIELDS TERMINATED BY ' '
LINES TERMINATED BY '\n'
(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o);

결과 ) 41 초 소요

 

2) UPDATE 1000만건

psql # UPDATE BULKLOADDATA_TBL SET K = TRUNC(RANDOM() * 10000000);

결론) 35 초

 

mariadb # UPDATE BULKLOADDATA_TBL SET K = FLOOR(RAND() * 10);

결론) 51 초

 

3) 인덱스 생성 1000만건

psql # CREATE INDEX BULKLOADDATA_IDX ON BULKLOADDATA_TBL  ( K );

결론) 6초

mariadb # CREATE INDEX BULKLOADDATA_IDX ON BULKLOADDATA_TBL  ( K );

결론) 32초

 

4) 정수 Max SELECT 1000만건

psql # SELECT MAX(K) FROM BULKLOADDATA_TBL;

결론) 즉시

mariadb # SELECT MAX(K) FROM BULKLOADDATA_TBL;

결론) 0.001 초

 

5) 정수 SUM 1000만건

psql # SELECT SUM(K) FROM BULKLOADDATA_TBL;

결론) 1.5초

mariadb # SELECT SUM(K) FROM BULKLOADDATA_TBL;

mariadb # 2.5초

 

6) 

 

 

반응형

설치/기본사용.우분투

Database 관리/PostgreSQL
반응형

1) sudo apt-get install postgresql postgresql-contrib

 

2) psql --version

 

3) > sudo -i -u postgres

> psql

 

혹은

> sudo -u postgres psql

 

4) 사용자

psql # create user service;

psql # drop user service;

psql # create role service superuser; # drop role service;

psql # \du

psql # \q

 

5) 데이타베이스

psql # create database service4loadtest;

psql # \list

 

 

반응형

'Database 관리 > PostgreSQL' 카테고리의 다른 글

속도.postgres vs mariad  (0) 2022.06.15
Docker 설치  (0) 2022.01.18
필독) 특이 SQL 및 PLAN, Access 방식, 지원 Join, Query Rewrite  (0) 2021.12.30