-[[The Apache Cassandra Project:http://cassandra.apache.org/]]
-[[Apache Cassandra - wikipedia:http://ja.wikipedia.org/wiki/Apache_Cassandra]]
-[[Cassandra Wiki - FrontPage_JP:http://wiki.apache.org/cassandra/FrontPage_JP]]

* 概要 [#e0deadd2]
-[[連載:Cassandraのはじめ方 ─ 手を動かしてNoSQLを体感しよう:http://gihyo.jp/dev/serial/01/cassandra]]
--[[第1回 NoSQL,そしてCassandraとは:http://gihyo.jp/dev/serial/01/cassandra/0001]]
--[[第2回 Cassandraのインストールから起動まで:http://gihyo.jp/dev/serial/01/cassandra/0002]]
--[[第3回 Cassandraのデータモデルを理解する:http://gihyo.jp/dev/serial/01/cassandra/0003]]
--[[第4回 JavaでCassandraにアクセスする:http://gihyo.jp/dev/serial/01/cassandra/0004]]
--[[第5回 APIの全体像とデータの投入:http://gihyo.jp/dev/serial/01/cassandra/0005]]
--[[第6回 Cassandraでデータの更新・削除をするには:http://gihyo.jp/dev/serial/01/cassandra/0006]]
--[[第7回 Cassandraで検索するには[前編]:http://gihyo.jp/dev/serial/01/cassandra/0007]]
--[[第8回 Cassandraで検索するには[後編]:http://gihyo.jp/dev/serial/01/cassandra/0008]]

-[[列指向データベースCassandraにPythonで接続する:http://symfoware.blog68.fc2.com/blog-entry-326.html]]

-[[ウノウラボ by Zynga Japan: 今からはじめるCassandra入門:http://labs.unoh.net/2010/08/cassandra.html]]
-[[インフラエンジニアのためのcassandra入門:http://www.slideshare.net/akuwano/cassandra-4098052]]
-[[インフラエンジニアのためのCassandra情報:http://so-net-developer.blog.so-net.ne.jp/archive/c2301334546-1]]
-[[Cassandraのデータモデリング。或いはKeyspaceの設定方法:http://d.hatena.ne.jp/dkfj/20100502/1272811462]]
-[[CassandraとHBaseを比較して入門するNoSQL:http://yutuki.blogspot.com/2010/08/cassandrahbasenosql.html]]
-[[Cassandraの構造:http://lunarium.info/arc/index.php/Cassandra%E3%81%AE%E6%A7%8B%E9%80%A0]]
-[[Cassandraのしくみ データの読み書き編:http://www.slideshare.net/yukim/cassandra-3885571]]
-[[cassandra調査レポート:http://www.slideshare.net/akuwano/up-3749604]]

-[[Cassandra実践入門—Twitter,Facebookが採用するNoSQLシステム:http://gihyo.jp/dev/column/01/database/2011/cassandra_wdp58]]

-[[Riak と Cassandra と HBase、あらまー!:http://blog.livedoor.jp/heitatta/archives/65277779.html]]

* 特徴 [#fe802f91]
-CAP定理のうちAP(可用性:Availabilityと分割耐性:Partition Tolerance)を重視
-一貫性と遅延のトレードオフを調整可能
-[[Eventual Consistency:http://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%99%E3%83%B3%E3%83%81%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%BB%E3%82%B3%E3%83%B3%E3%82%B7%E3%82%B9%E3%83%86%E3%83%B3%E3%82%B7%E3%83%BC]]
-単一障害点(SPOF)がない

** データ構造 [#e1e87699]
-一般的なKVSは1個のkeyに対して1個のvalueを紐付けて管理するが、Cassandraはkeyの部分を階層化して管理することが可能
-Cassandraのkeyは「キースペース」「カラムファミリー」「キー」「カラム」の4階層で構成
-「キー」と「カラム」の間に「スーパーカラム」と呼ぶkeyを挿入して、最大5階層で管理することも可能
-RDBのデータベースはCassandraのキースペースに、テーブルはカラムファミリー、主キーはキー、フィールドはカラムに相当

* SEDA [#zaf97be3]
-[[CassandraとSEDAのアーキテクチャの対応関係:http://dann.g.hatena.ne.jp/dann/20100307/p2]]

* 事例 [#t21648e2]
** Twitter [#vb43a611]
-[[Twitter、MySQLデータベースからCassandraに移行:http://japan.zdnet.com/fyi/story/0,3800100774,20409165,00.htm]]
-[[TwitterとDiggがNoSQLの「Cassandra」を選ぶ理由:http://www.publickey1.jp/blog/10/twitterdiggnosqlcassandra.html]]

** 国内 [#z93288a5]
-[[GMOとくとくショップで利用する分散データストア - Cassandra -:http://www.gmo.jp/report/technology/08/index.php]]
-[[クリエモン:http://www.creamon.net/]]
--[[ヒマをみつけてWeb開発(Cassandra関連):http://blog.webkai.net/?tag=/Cassandra]]

** 大学の研究 [#m8d5b16d]
-[[Cassandra を使ったスケーラビリティのある CMS の設計 [PDF]:http://www.ie.u-ryukyu.ac.jp/~kono/papers/kono/2011/IPSJ-OS11117023.pdf]]

* バージョン [#ccf93346]
-0.7
--[[Cassandra 0.7が登場。セカンダリンデックス、メモリ効率向上、動的スキーマ変更。分散カウンタは実装されず:http://www.publickey1.jp/blog/11/cassandra_07.html]]

* パフォーマンス [#u906899e]
-[[Cassandra versus HBase performance study:http://www.mail-archive.com/cassandra-user@incubator.apache.org/msg02312.html]]
--[[High level summary:http://www.brianfrankcooper.net/pubs/ycsb-v4.pdf]]
--[[Detailed paper:http://www.brianfrankcooper.net/pubs/ycsb.pdf]]

* 関連製品・プロジェクト [#w00ae089]
** [[Flume-Cassandra Log Processor:https://github.com/geminitech/logprocessing]] [#d687e6b4]
-[[Flume-Cassandra Log Processing Systemのオープンソースリリースについて:http://www.gemini-bigdata.com/2011/03/flume-cassandra-log-processing-system.html]]
--[[システム構成図:https://lh3.googleusercontent.com/-bvf4eicYiCs/TXBgKD16znI/AAAAAAAAAOc/iJKPb9qwUug/s1600/Flume-Cassandra.PNG]]
-[[Flume-Cassandra Log Processing Systemのオープンソースリリースについて(2):http://www.gemini-bigdata.com/2011/03/flume-cassandra-log-processing-system2.html]]
--[[プレゼン資料:http://www.slideshare.net/geminimobile/flume-cassandra-real-time-log-processing]]

-[[ジェミナイ、分散KVS「Cassandra」を使ったリアルタイムログ解析システムをOSS化:http://itpro.nikkeibp.co.jp/article/NEWS/20110304/358011/]]

-ログ収集に[[Flume:http://archive.cloudera.com/cdh/3/flume/]]を使用
-ログDBにCassandraを使用

** [[Brisk:http://www.datastax.com/products/brisk]] [#b80ead7d]
-[[WhitePager:http://www.datastax.com/wp-content/uploads/2011/03/WP-Brisk.pdf]]
-[[Apache CassandraとApache Hadoopを一体化した「Brisk」発表:http://sourceforge.jp/magazine/11/03/25/1145255]]
-[[Brisk - 低遅延アプリケーションとHadoop/Hive分析用のBig-Dataプラットフォーム:http://www.infoq.com/jp/news/2011/03/brisk]]
-[[Structure Big DataでのHadoopの未来:DataStax Brisk, EMC, MapR:http://www.infoq.com/jp/news/2011/04/structure_big_data]]

** MyCassandra [#oc8ffbe2]
-[[MyCassandraコトハジメ:http://www.slideshare.net/sunsuk7tp/mycassandra]]
-[[MyCassandraというモジュラー式のNoSQLを作ってます。:http://d.hatena.ne.jp/sunsuk7tp/20110102/1293980827]]

* 環境構築 [#aa240395]
-[[Cassandra Clusterの構築:http://lunarium.info/arc/index.php/Cassandra_Cluster%E3%81%AE%E6%A7%8B%E7%AF%89]]
-[[Mac OSX(Snow Leopard)へ「Cassandra」をインストール:http://kishi-r.com/2010/04/07/mac_cassandra/]]
-[[Cassandra-tools - おおたに6号機blog:http://d.hatena.ne.jp/shot6/]]
-[[Cassandraのはじめ方─手を動かしてNoSQLを体感しよう:http://gihyo.jp/dev/serial/01/cassandra]]
-[[GettingStarted_JP - Cassandra Wiki:http://wiki.apache.org/cassandra/GettingStarted_JP]]
-[[Howto: Build and scale a Cassandra cluster in five minutes:http://blog.gridcentriclabs.com/2010/08/howto-build-and-scale-cassandra-cluster.html]]

-[[Cassandraによるデータモデル構築のための資料:http://aerial.st/archive/2010/03/22/pointers-to-materials-on-cassandra-data-mode/]]
-[[Scala+Lift+Cassandraの環境構築:http://seiya-blog.blogspot.com/2010/12/scalaliftcassandra.html]]
-[[Cassandra 0.7をCentOSにインストールする手順:http://hoge2rock.com/433/]]

-[[CentOS5.4にJDK6やらCassandraやらZooKeeperをインストール:http://d.hatena.ne.jp/terurou/20100416/1271397190]]
-[[Cygwin on Windows7で"快適な"CassandraとかHadoopとかの開発環境【書きかけ】:http://d.hatena.ne.jp/terurou/20100405/1270443027]]

* サーバ [#la04124e]
-[[CassandraHardware:http://wiki.apache.org/cassandra/CassandraHardware]]
--CPU:8coreあれば十分
--メモリ:16GB〜
--HDD
---CommitLogDirectory, DataFileDirectories 用にそれぞれディスクがあると良い

* 開発 [#w8221239]
-[[高レベルのクライアント:http://wiki.apache.org/cassandra/ClientOptions_JP]]
--Cassandraアプリケーションを開発する場合は、直接Thrift APIを直接使用するより、クライアントインターフェースを使用することを推奨

* ツール [#u9a6a6a8]
** cassandra-cli [#v3b88440]
-[[cassandra-cliのコマンドたち:http://d.hatena.ne.jp/kj-ki/20100610/p1]]
** sstable2json/json2sstable [#t6382fc6]
-export/import用

-[[sstable2json/json2sstable:http://d.hatena.ne.jp/kj-ki/20100613/p1]]


* 動作検証 [#kce8703e]
-[[Amazon EC2 (Asia Pacific 東京)でm1.large を利用して、Cassandra 0.7.4のストレステストを試す。:http://d.hatena.ne.jp/masa_to/20110327/1301234482]]
-[[さくらVPSでApache Cassandra 0.7のSecondary indexesを利用してみる:http://d.hatena.ne.jp/masa_to/20110117/1295255793]]

-[[Cassandraのはじめ方─手を動かしてNoSQLを体感しよう - 第4回 JavaでCassandraにアクセスする:http://gihyo.jp/dev/serial/01/cassandra/0004]]

-[[列指向データベースCassandraにPython + Thriftで住所データを登録する:http://symfoware.blog68.fc2.com/blog-entry-327.html]]
-[[Cassandra Hadoopサンプル:http://www.ne.jp/asahi/hishidama/home/tech/apache/cassandra/hadoop.html]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS