Cassandraソースコード読み – 環境設定

Cassandraの運用に際して、Hot Spot的な問題が発生したのをきっかけに、ソースコードレベルから、詳細にCassandraの仕組みを理解したいと思ったので、月一ぐらいで、徐々に書いていこうと思っています。

まずは、テスト的な意味合いも込めて、最初に、テスト環境の設定をします。

環境

  • OSX Yosemite, Version 10.10.5
  • IntelliJ IDEA 14.1.4 Community Edition
  • Java
    java version “1.8.0_91”
    Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
    Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

  • Cassandra (cassandra-3.0のブランチ) 用のIntelliJ Idea Projectの作成
    https://wiki.apache.org/cassandra/RunningCassandraInIDEA
    の指示通りセッティングすれば、問題なく通りました。
    ただ、JVMのバージョンなどで、ant generate-eclipse-filesのステップで、通らないことがありました。
  • Client側のIntellij Project作成 ( CQL3 )
    Scalaを使用しているので、sbtプロジェクトを作成しました。
    以下は、Data StaxのDriverを使用するSbt ファイル例

    lazy val root = Project( id="cassandra", base=file(".")).
    settings(
    name := "cassandra",
    version := "1.0",
    scalaVersion := "2.10.4",
    organization := "mmaioe.com",
    libraryDependencies ++= Seq(
    // DataStax Cassandra Driver
    "com.datastax.cassandra" % "cassandra-driver-core" % "3.0.0"
    )
    )

これで、Cassandra自体のIntellij IDEA Projectと、CassandraのClient側のプロジェクトができたので、CQL Statementのクエリ作成から、クエリの送信、Cassandraでどのように処理されてるかを追える環境ができました。