Cassandra 0.7のソースコードを読んでいく。



apache-cassandra-0.7.0-src.tar.gzのソースを読み始めました。
「dir apache-cassandra-0.7.0-src\src\java\org /A:-H /S 」でディレクト内のファイルを調べてみると345ファイルあるようです。
これらのファイルを読んでいきたいと思います。
 

パッケージ構成に関して

「org/apache/cassandra」配下にいくつかサブパッケージがあります。

 

No パッケージ名 概要
1 auth 認証用?
2 avro Apache Avro?
3 cache Cache処理?
4 cli CliClient?
5 client RingCacheというクラスが1つあった
6 concurrent 並列処理クラス?
7 config 設定ファイル系?
8 db DBの実装。一番ファイルが多そう
9 dht BootStrapperとあるのでなにかの処理系?
10 gms Gossipとある
11 hadoop hadoop連携用か?
12 io 保存処理などか?
13 locator ネットワーク処理か?
14 net ネットワーク系のなにか?
15 scheduler RoundRobinSchedulerというのがあった?
16 service サービスクラス?
17 streaming ストリーミング処理?
18 thrift CassandraServer、CassandraDaemonというのがあった
19 tools なんかのコマンドクラスがあった
20 utils ユーティリティクラス?

 
とりあえず、「org.apache.cassandra.db.Column」やら「org.apache.cassandra.db.ColumnFamily」を眺めていた。

thriftクライアントで利用しているのは、ここのパッケージだと思ったら違う場所にあるようだ。

「interface/thrift/gen-java/org/apache/cassandra/thrift」にクライアント側で利用できる
クラスがいろいろ存在した。31クラスあった。
 

thriftクライアントに関して

「package org.apache.cassandra.thrift」という構成でいろいろクラスが
存在する。

こちらのソースコードもいろいろ確認できればと思う。