ycsb 는 cloud database, nosql database 를 대상으로 하는 benchmarking tool(성능 측정 툴) 이다.

 

ycsb 가 다룰 수 있는 db는 official git 에 나와있는 directory의 list 로 확인 가능하다.

 

이 글을 포스팅하는 시점(2020년 1월 21일) 최신 버전은 0.17.0 버전이지만, maven 으로 직접 build 하는 경우 0.18.0 버전으로 진행 가능하다.

 

 

 

ubuntu 리눅스 위에서 작업하였다.

 

공식 문서를 적극 참고한다.

 

설치하는 방법은 두 가지가 있다.

 

  1. 코드를 가져와서 maven 으로 직접 build 하는 방법
  2. build 된 파일을 그냥 다운로드 하는 방법

 

 

 

 

 

< 1. 코드를 가져와서 maven 으로 직접 build 하는 방법 >

 

https://github.com/brianfrankcooper/YCSB.git

 

위 주소의 git 을 local 의 적당한 위치에 clone 한다.

 

git clone https://github.com/brianfrankcooper/YCSB.git

cd YCSB

 

 

pom.xml 이 있는 위치에서 maven 을 사용하여 build 한다.

아래 명령어를 사용하면 모든 database 에 관해 build를 진행한다.

전체 build 는 (인터넷으로 받는 시간도 있고 build 하는 시간도 있고해서) 꽤 오래 걸리기 때문에 가급적이면 사용하지 않도록 한다.

 

 

mvn clean package

 

 

필자가 전체 build 를 미리 해 둔 파일을 여기서 받을 수 있다(build 날짜 2020년 1월 28일).

 

 

아래 명령어를 사용하면 원하는 database 에 관한 build만 진행한다.

가령, 나는 mongodb 에 대한 벤치마킹만 할 예정이므로 mongodb 에 관한 build 만 진행하길 원한다면 아래처럼 한다.

 

 

mvn -pl mongodb -am clean package

 

 

 

만약 ubuntu 에 mvn이 설치되어있지 않다면, 아래 명령어로 설치한다. 참고

 

sudo apt-get install -y maven

mvn -version # 설치된 maven 의 version 을 확인한다.

 

 

( maven 이 2버전이라면 여러가지 error 를 불러오므로, maven 3 버전으로 설치해야한다.

maven 2 버전으로 build 할 시 일어나는 에러에 대한 참고 링크 )

 

 

 

 

 

 

 

 

 

 

< 2. build 된 파일을 그냥 다운로드 하는 방법 >

 

 

 

아래 명령어대로, 파일을 받은 후 압축만 풀어주면 된다.

 

 

Download the latest version:

curl -O --location https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz
tar xfvz ycsb-0.17.0.tar.gz
cd ycsb-0.17.0

 

 

 

 

 

 

 

 

 

 

 

 

 


설치 후 ycsb 를 run 하는 방법은 bin 내에 있는 ycsb 를 실행하는 것이다.

 

 

./bin/ycsb

 

 

이걸 당최 어떻게 실행시키라는 건지 이해가 안 되도 괜찮다.

 

실제로 workload 를 돌리고 benchmarking(성능 평가)를 하는 방법은, 아래 hands-on 링크 를 해보면

 

자연스레 어떻게 사용하는 건지 알게 될 것이다.

 

다만, ycsb 는 shell script 파일인데, 내부에서 java와 python2 를 사용한다.

 

java와 python2 가 설치되어있지 않다면 여기 를 참고하여 설치한다.

(참고로 ubuntu 기준임)

 

 

 

ycsb 에서 workloads 를 실행하는 구체적인 단계 링크

 

ycsb 에서 mongoDB 를 이용하여 성능 측정하는 hands on 링크

 

ycsb 에서 hbase 를 이용하여 성능 측정하는 hands on 링크

 

 

 

 

 

+ Recent posts