読者です 読者をやめる 読者になる 読者になる

仕事やプライベートで調べたことのメモ書きなど(@札幌)

仕事やプライベートで調べたこと、興味ある事のメモ書きです。2016年4月から札幌で働いてます。※このブログは個人によるもので、団体を代表するものではありません。

vagrant上にインストールしたAerospikeでycsbを実行してみる

さて、前回はWindows上のVagrantでAerospikeをインストールしてみたので、
takumats.hatenablog.com

今回は無理やりycsbの実行にチャレンジする。
github.com

従った手順は、公式サイトのこの記述。
Documentation | Aerospike

前回作った環境では、Javaが入ってなかったので、まずは以下に従ってjdkをダウンロード
qiita.com

その後、以下に従って、jdkをインストール
zero-config.com
すると、「java -version」が返ってくるようになりました。

mavenのインストールは以下を参考に。
qiita.com

で試行錯誤したらできるようになったのだが、つまづきポイント。

  • namespaceとしてycsbが必要 (aerospike.confで対応 (namespaceやファイル名))
  • 一度やると再実行でエラー (データが入っているため)

実行した感じ

[root@localhost YCSB]# bin/ycsb load aerospike -s -P workloads/workloada
[WARN]  Running against a source checkout. In order to get our runtime dependencies we'll have to invoke Maven. Depending on the state of your system, this may take ~30-45 seconds
[DEBUG]  Running 'mvn -pl com.yahoo.ycsb:aerospike-binding -am package -DskipTests dependency:build-classpath -DincludeScope=compile -Dmdep.outputFilterFile=true'
/usr/java/jdk1.8.0_111/bin/java -cp /opt/YCSB/aerospike/conf:/opt/YCSB/aerospike/target/aerospike-binding-0.9.0-SNAPSHOT.jar:/opt/YCSB/core/target/core-0.9.0-SNAPSHOT.jar:/root/.m2/repository/com/aerospike/aerospike-client/3.1.2/aerospike-client-3.1.2.jar:/root/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.4/HdrHistogram-2.1.4.jar:/root/.m2/repository/org/gnu/gnu-crypto/2.0.1/gnu-crypto-2.0.1.jar:/root/.m2/repository/org/codehaus/jackson/jackson-mapper-asl/1.9.4/jackson-mapper-asl-1.9.4.jar:/root/.m2/repository/org/luaj/luaj-jse/3.0/luaj-jse-3.0.jar:/root/.m2/repository/org/codehaus/jackson/jackson-core-asl/1.9.4/jackson-core-asl-1.9.4.jar:/root/.m2/repository/org/mindrot/jbcrypt/0.3m/jbcrypt-0.3m.jar com.yahoo.ycsb.Client -db com.yahoo.ycsb.db.AerospikeClient -s -P workloads/workloada -load
YCSB Client 0.9.0-SNAPSHOT
Command line: -db com.yahoo.ycsb.db.AerospikeClient -s -P workloads/workloada -load
Loading workload...
Starting test.
DBWrapper: report latency for each error is false and specific error codes to track for latency are: []
2016-11-22 18:50:08:459 0 sec: 0 operations; est completion in 0 seconds
2016-11-22 18:50:08:609 0 sec: 1000 operations; 4901.96 current ops/sec; [CLEANUP: Count=1, Max=253, Min=253, Avg=253, 90=253, 99=253, 99.9=253, 99.99=253] [INSERT: Count=1000, Max=24095, Min=31, Avg=109.41, 90=113, 99=566, 99.9=5871, 99.99=24095]
[OVERALL], RunTime(ms), 209.0
[OVERALL], Throughput(ops/sec), 4784.688995215311
[CLEANUP], Operations, 1.0
[CLEANUP], AverageLatency(us), 253.0
[CLEANUP], MinLatency(us), 253.0
[CLEANUP], MaxLatency(us), 253.0
[CLEANUP], 95thPercentileLatency(us), 253.0
[CLEANUP], 99thPercentileLatency(us), 253.0
[INSERT], Operations, 1000.0
[INSERT], AverageLatency(us), 109.409
[INSERT], MinLatency(us), 31.0
[INSERT], MaxLatency(us), 24095.0
[INSERT], 95thPercentileLatency(us), 200.0
[INSERT], 99thPercentileLatency(us), 566.0
[INSERT], Return=OK, 1000
[root@localhost YCSB]#

一度実行してデータが追加された場合、Set内のデータを削除するにはこんな感じで実行する。

[root@localhost YCSB]# asinfo -v "set-config:context=namespace;id=ycsb;set=usertable;set-delete=true;"