クラウドインフラ構築記

現在AWSの構築支援に携わっております。今注視しているのは、GKE、BigQuery、Google Dataflowなどサービスを展開しているGoolge Cloud Platformです。

Cassandra Meetup Tokyo 2015, Summerに参加してきました。 #cassandrameetupjp

9月4日、Yahoo! Japanの方でCassandra Meetup Tokyo 2015が行われました。

Cassandraは、NoSQLの技術になり、DynamoDB、Google BigTableの仲間に入ります。

Apache Sparkと組み合わせることで、強力な分析基盤を構築することも可能。

Cassandra Meetup Tokyo 2015, Summer with Apache Cassandra Chief Evangelist, Patrick McFadin

Cassandra は、マスターレス、peer-to-peerで稼働するので、SPOFになり得ない、耐障害性にも優れています。

Wather Stationから気象データを収集するユースケースを話されましたが、Cassandraは、IoT deviceのデータ収集にも使用可能。

Apache Sparkと組み合わせられる。Apache Sparkは、In-Memoryで高速でデータ分析が行える特徴を持っており、Spark Streaming、SQL、機械学習(Machine Learning)、GraphXのコンポーネントもあります。

data processingを聞くと、Google Dataflowが思い浮かんだ。ClouderaがGoogle DataflowをSparkに統合する計画も。

http://jp.techcrunch.com/2015/01/21/20150120google-partners-with-cloudera-to-bring-cloud-dataflow-to-apache-spark/

Partition and Token Range

Cassandra dataをスキャンするには、token ringを使って、マルチノードにアクセスする。

Cassndaraから抽出したデータをCassndaraに書き出すことも。

spanBy

groupByより効率良くグルーピングできる。

Cassandraとsparkを使った yahooの事例

50を超えるyahooのサービスで利用されていること。

StorageにSSDを利用することで、QPS 6倍、レイテンシ1/10と性能向上が図れる。

Sparkはデータの可視化に。Sparkは、In-memoryで高速ではあるが、hadoopオーバーヘッド、HDFSの点でも、hadoopより高速と言える。

MySQLで4,000万レコードの更新がある場合、レプリケーション遅延が発生していた。

RDB系だとトランザクション量が多いとレプリカ遅延(RepliaLag)が発生する。トランザクション量が多い場合、NoSQL系が。

BlockTransferServiceが現状SSLされていないことも。

CyberAgentでの事例

Cassandraの導入。

jenkins、ansible + SensuでCassandraを使った運用。Masterレスなので、SPOFがない、ノードを増やすことで、スケールアウトも。

cpu/mem/nw/latency/fd はもちろん、jvmのGC、Cassandra_Status、Cassandra clusterのheathの監視を行っている。

repair & cleanupを7日。NW断があった障害に関しても、データロストはなかった。

書き込みを一端止めて、snapshotを取得することで、PITRに近いこともできるのでは。組み込まれることを期待。

Cassandra Tools

EC2でCassandraを使う場合、Ec2MultiRegionSnitch、 Ec2Snitchを確認。

  •  cassandra-stress
    • Cassandra負荷掛けツール。read/writeで負荷を掛けることが可能。
  • cassandra-stressd
    • 長時間負荷をかける場合は、こちら
  • cassandra.in.sh
  • json2sstable
  • sstable2json
    • deprecatedされており、Cassandra 3.0では廃止予定
  • sstablelevelreset
  • sstableofflinelevel
  • sstablerepairreset
  • sstablesplit
  • token-generator
    • 最適なtokenを算出してくれる

AWS上でCassandra環境構築する場合は、 cassandgo

参加者に、enterprise版のCassandraが入った2Gのusbメモリ。

P1000410

 

http://www.infoq.com/jp/news/2014/11/netflix-cassandra

http://www.infoq.com/jp/news/2014/11/netflix-cassandra

コメントは受け付けていません。