YCSB導入
実装したMyCassandraをフォーマルなクラウドベンチマークで測定する為にgithubのWikiを参考にYCSBを導入した。
http://wiki.github.com/brianfrankcooper/YCSB/getting-started
まずはCassandraについて動かせるようにしたのでメモしておく。
Cassandraのバージョンはここでは0.X.Yとしておく。(現状はx=5,6,7に対応)
ビルド
ソースをgitで取って、ant
git clone git://github.com/brianfrankcooper/YCSB.git
cd YCSB
ant
Cassandraのlib以下のjarファイル全てをYCSBのdb/cassandra-0.X/lib/にコピーして、DBインタフェース層のコンパイルを個別に行う
cd apache-cassandra-0.X.Y/lib/
cp *.jar ~/YCSB/db/cassandra-0.X/lib/
ant dbcompile-cassandra-0.X
Quick Start
実際の起動前に測定するシステムの個別設定が必要。
参考までにMac上でCassandraについて動かせるようにしたのでメモ。
- db/cassandra- 0.X/libに対してCLASSPATHを通す
- CassandraのKeyspace,ColumnFamily?を設定
- Keyspace 名を"usertable",ColumnFamily名を"data"にする@storage-conf.xml
- インタフェース層のプロパティで名前は設定できる
- Cassandraの起動
- WorkLoad Aのload phase
- WorkLoad Aのtransaction phase
- java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.CassandraClientX -P workloads/workloada -P middle.dat -s > transactions.dat