最近HBaseをいじっていたけれど、列指向分散DBには他にも色々あるらしい。
・HBase(BigTableのJavaによる実装)
・Cassandra(BigTableとDynamoの合体。Javaによる実装)
・Hypertable(BigTableのC++による実装)
・Voldemort(DynamoのJavaによる実装)(名前を言ってはいけないあのお方と何の関係が?^^;)
・CouchDB
・MongoDB
etc
…誰かがそのうち違いを正しくきれいにまとめてくれるでしょう(他力本願)
いわゆるNoSQLと呼ばれるDBの群雄割拠時代に入ってきたところなので、どれを勉強しておけばいいのか、いまいち見当が付かない…。
ApacheプロジェクトにすらHBaseとCassandraの2種類あるけど、どうなるのやら。
とりあえず、Apache Cassandraをちょっと試してみようと思う。
まだWindowsへのインストールと起動確認しかしていないが、ここまでだったら(笑)HBaseよりも圧倒的にお手軽。Cygwinとか要らないし。
ただ、テーブル構造でいきなり悩む。key/valueストアという点ではHBaseと変わらないだろうと思ったら、そこからして微妙に大違い(苦笑)
Voldemortも名前からして興味あるが(笑)、検索すると違うものが上位に出てきて不便だぞ(爆)
そういう意味じゃCassandraも同じだけど(苦笑)、まぁ「Apache Cassandra」で区別できるから。