Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

(LT)Spark and Cassandra

1,335 views

Published on

Apache Cassandraがリアルタイム分析でNOSQLのApache Cassandraに出会った。(2016年 Hadoop/Spark Conference Japan)

Published in: Technology
  • Be the first to comment

(LT)Spark and Cassandra

  1. 1. ©2015 DataStax Confidential. Do not distribute without consent. 1 DataStax   原沢滋         Apache  Sparkがリアルタイム分析で   NOSQLのApache  Cassandraに出会った。(ウルルン風) Hadoop  /  Spark  Conference  Japan  2016
  2. 2. Data  Science  at  Scale   2009
  3. 3. x Apache Cassandraとは 分散オペレーショナル・データベース Apache  Cassandra  とは   Amazon  Dynamo  の分散ハッシュ テーブル(DHT)と、Google  BigTable   のKVSの2つの特徴を併せ持つビッ グデータ用分散データベース   •  Amazon  DynamoとGoogle  Bigtableの良い点を持つ   •  高速パフォーマンスとリニアな拡張   •  SPOF(Single  Point  of  Failure)がない、簡単に24時間  x  365 日ダウンさせないで運用が可能   •  完全な分散   •  柔軟なNoSQLデータモデル(スキーマーレス!)   •  シンプルな運用管理   •  SQL  ライクな言語CQLをサポートしている   •  様々な無償ツールとドライバ/コネクタを持つ   •  様々な整合性を選ぶ事が可能(CAP定理,  BASE)   +  
  4. 4. OLTP   (RDBMS)   DWH (RDBMS) Cassandra   (NOSQL) OLTP   (RDBMS)   DWH (RDBMS) Hadoop/   Spark 分析・データベース オペレーショナル   データベース 既存システム(RDB) 新システムへの要求   *データ量   *パフォマンス   *柔軟性   *可用性   *値段 分析・データベース オペレーショナル   データベース 既存システム(RDB) 新システム(NoSQL) 今までRDB  では不可能、又は実現するのに   コストが膨大にかかった領域 Cassandra(NOSQL)とHadoop/Sparkの位置付け
  5. 5. Spark  Streaming     Near  Real-­‐Zme   SparkSQL     Structured  Data   MLLib     Machine  Learning   GraphX     Graph  Analysis   Sparkは大量データをスキャンするのが得意  
  6. 6. CREATE TABLE raw_weather_data (! wsid text, ! year int, ! month int, ! day int, ! hour int, ! temperature double, ! dewpoint double, ! pressure double, ! wind_direction int, ! wind_speed double, ! sky_condition int, ! sky_condition_text text, ! one_hour_precip double, ! six_hour_precip double, ! PRIMARY KEY ((wsid), year, month, day, hour)! ) WITH CLUSTERING ORDER BY (year DESC, month DESC, day DESC, hour DESC);! Cassandra  は大量データを集めるのが得意です  
  7. 7. Spark  Streaming     Near  Real-­‐Zme   SparkSQL     Structured  Data   MLLib     Machine  Learning   GraphX     Graph  Analysis   Cassandra は大量データを集めるのが得意です Sparkは大量データをスキャンするのが得意  
  8. 8. Spark  Streaming     Near  Real-­‐Zme   SparkSQL     Structured  Data   MLLib     Machine  Learning   GraphX     Graph  Analysis   CREATE TABLE raw_weather_data (! wsid text, ! year int, ! month int, ! day int, ! hour int, ! temperature double, ! dewpoint double, ! pressure double, ! wind_direction int, ! wind_speed double, ! sky_condition int, ! sky_condition_text text, ! one_hour_precip double, ! six_hour_precip double, ! PRIMARY KEY ((wsid), year, month, day, hour)! ) WITH CLUSTERING ORDER BY (year DESC, month DESC, day DESC, hour DESC);! Spark Connector! Cassandra と Sparkが出会った  
  9. 9. Spark  Streaming     Near  Real-­‐Zme   SparkSQL     Structured  Data   MLLib     Machine  Learning   GraphX     Graph  Analysis   CREATE TABLE raw_weather_data (! wsid text, ! year int, ! month int, ! day int, ! hour int, ! temperature double, ! dewpoint double, ! pressure double, ! wind_direction int, ! wind_speed double, ! sky_condition int, ! sky_condition_text text, ! one_hour_precip double, ! six_hour_precip double, ! PRIMARY KEY ((wsid), year, month, day, hour)! ) WITH CLUSTERING ORDER BY (year DESC, month DESC, day DESC, hour DESC);! Spark Connector! リアルタイム   分析 オペレーショナル   データ 分析結果 検索結果 分析結果 分析結果 オペレーショナルデータ Apache  Spark  と Apache  Cassandra  
  10. 10. Store  a  ton  of  data   Analyze  a  ton  of  data   Apache  Spark  と  Apache  Cassandra   大量データをスキャンして   高速に集約、分析するのが得意 大量データをスキャンして   集約、分析するのが苦手 高速に、安全に大量のデータを   集めてくるのが得意 大量データを集めてくるのは   基本はバッチ処理 得意分野x得意分野 不得意分野を補う
  11. 11. Cassandraで分散された各ノードでSparkも動く   分散データを各 ノードで分析する
 パラレル処理 を行う事が可能 各ノードにCassandraとSpark   Apache  Spark  と  Apache  Cassandra  
  12. 12. ETL不要!!(オペレーションと分析の分離)   オペレーション   オペレーショナル   環境 分析環境 双方向レプリケーション Apache  Spark  と  Apache  Cassandra  
  13. 13. SPARK  Cassandra  Connector h[ps://github.com/datastax/spark-­‐cassandra-­‐connector
  14. 14. ©2015 DataStax Confidential. Do not distribute without consent. ありがとうございました!   Twi[er  account:  @cassandrajapanで情報発信しています      

×