注意: Cassandraの内部APIはバージョン1.0以降でも変更される可能性が高いです。
JVMベースのコード内で簡単にCassandraノードを起動できます。次のコードはCassandraDaemonの処理の内容です:
// キースペースの初期化
for (String table : Table.getAllTableNames())
{
if (logger.isDebugEnabled())
logger.debug("opening keyspace " + table);
Table tbl = Table.open(table);
tbl.onStart();
}
// 必要に応じてコミットログからのリカバリ
RecoveryManager.doRecovery();
// サーバの起動
StorageService.instance().initServer();こうすることで、Thriftを経由せずに内部のStorageProxy APIを利用することができるようになります。
より高レベルなCassandraサービスの埋込みは次に詳しく記載されており、バージョン0.6にコミットされています。 http://prettyprint.me/2010/02/14/running-cassandra-as-an-embedded-service/