일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- GUI 또는 CLI전환
- ipvlan
- Oracle
- cloudready OS
- putty
- docker
- YCSB
- cmd인스톨러설치
- MySQL
- 컨테이너 복원
- cmd로msi파일설치
- VPN
- 인강배속
- 시스템예약종료
- Dell Venue 8 Pro
- 영상배속
- Linux
- 파이썬 스톱워치
- docker container backup
- ventoy 사용법
- docker container restore
- Windows
- OTT셋톱박스
- 딜라이브플러스h3
- cubrid
- 웹영상배속
- #Oracle
- CentOS
- CentOS7
- 컨테이너 백업
- Today
- Total
일단은 프로그래머 나부랭이
태블릿 pc에서 DBMS 의 benchmark를 돌려보자 본문
이번에는 Dell venue 8 pro에 DBMS를 설치하고 benchmark를 수행해봤습니다.
먼저 OS 설치 방법은 아래의 링크를 타고 이전 글을 참고해주시기 바랍니다.
Dell venue 8에 cloudready 설치하기 : this1.tistory.com/entry/윈도우-태블릿에-cloudready-OS-chromium-OS-설치하기
Cloudready OS에는 linux container를 생성해주는 기능이 있습니다.
이를 이용하면, 태블릿 pc를 서버처럼 이용할 수도 있을 것 같아서 한번 테스트 해봤습니다.
테스트 방법은 DBMS를 설치하고 Benchmark 프로그램인 YCSB를 수행해봤습니다.
설치방법
테스트 해본 DBMS는 CUBRID와 MySQL 두가지이며, 둘 다 오픈소스 DBMS로 유명하기 때문에 선정하였습니다.
각 프로그램 설치 방법은 아래의 링크를 참고해주세요
- CUBRID
- cubrid download : www.cubrid.org/downloads
- cubrid install guide : www.cubrid.org/manual/ko/11.0/install.html#linux
- MySQL
- mysql download : dev.mysql.com/downloads/
- mysql install guide : dev.mysql.com/doc/mysql-installation-excerpt/8.0/en/
- YCSB
- YCSB download : github.com/brianfrankcooper/YCSB/releases
- YCSB test guide : github.com/brianfrankcooper/YCSB/wiki/Running-a-Workload
테스트 환경정보
Machine : Dell venue 8 pro
OS : Debian 10 container (host : Cloudready OS)
CPU : Intel Atom baytrail z3740D
RAM : 1.3GB (host : 2GB, 내부적으로 container에 할당되는 수치는 고정되어 있는것으로 추정)
Storage : 64GB eMMC (단, container에는 32GB만 할당)
DBMS config setting
각 DB의 설정은 다음과 같이 적용했습니다. (따로 기재하지 않은 값은 default로 진행)
- CUBRID
- [cubrid.conf]
- data_buffer_size=256M
- log_buffer_size=128M
- sort_buffer_size=10M
- [cubrid_broker.conf]
- [query_editor]
- service=off
- [BROKER1]
- MIN_NUM_APPL_SERVER=30
- MAX_NUM_APPL_SERVER=30
- SQL_LOG=OFF
- [query_editor]
- [cubrid.conf]
- MySQL
- [my.cnf]
- [mysqld]
- innodb_buffer_pool_size=256M
- innodb_log_buffer_size=128M
- sort_buffer_size=10M
- skip-log-bin
- [mysqld]
- [my.cnf]
YCSB config setting
recordcount & operationcount는 각각 10만씩 설정했으며, db load 수행 결과는 따로 측정하지 않았습니다.
(workloadb의 경우 read : 95%, update: 5% 비율이나 좀더 극적인 결과를 비교하고 싶어서 제외)
- YCSB
- workloada (read : 50%, update : 50%)
- recordcount=100,000
- operationcount=100,000
- workloadc (read : 100%)
- recordcount=100,000
- operationcount=100,000
- workloada (read : 50%, update : 50%)
테스트 수행 결과
테스트 수행결과는 아래와 같으며, 아래의 수행 결과는 각 workload를 2회씩 수행한 다음 가장 수치가 높은 것을 기재하였습니다. 그리고 테스트 수행시 쓰레드는 30씩만 할당했습니다.
- CUBRID (Threads 30)
- workloada : 573.66
- workloadc : 1533.93
- MySQL (Threads 30)
- workloada : 331.33
- workloadc : 1944.05
테스트 결과 정리
테스트를 수행해본 결과 read 속도는 MySQL이 앞서나, update 속도는 CUBRID가 더 앞서는 것으로 추측이 할 수 있었습니다.
또한, 철지난 윈도우 태블릿에 linux를 설치하고 DBMS를 올려보니, 느리긴 하지만 사용이 가능한 것으로 판단됩니다.
p.s : 위의 테스트는 각 DBMS를 간단하게 설정한 다음 Benchmark를 수행했기 때문에 실제 운영 환경에서는 차이가 있을 가능성이 높습니다. 따라서 위의 테스트 수치는 가볍게 참고해주시면 되겠습니다.
'DBMS' 카테고리의 다른 글
Flashback 정리 (0) | 2022.03.06 |
---|---|
(메모) CUBRID python driver test (0) | 2021.10.11 |
MVCC에 관하여 정리 (0) | 2021.03.25 |
MSSQL의 timestamp에 대해서 (0) | 2018.07.05 |
varchar와 nvarchar의 차이 (0) | 2018.05.29 |