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.

Apache cassandraと apache sparkで作るデータ解析プラットフォーム

4,739 views

Published on

Cassandra Summit Tokyo 2015 発表スライド

Published in: Data & Analytics
  • Dating direct: ❤❤❤ http://bit.ly/39mQKz3 ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating for everyone is here: ❤❤❤ http://bit.ly/39mQKz3 ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Apache cassandraと apache sparkで作るデータ解析プラットフォーム

  1. 1. Apache Cassandraと Apache Sparkで作 るデータ解析プラットフォーム 株式会社INTHEFOREST
  2. 2. 自己紹介 冨田 和孝(@railute) 株式会社INTHEFOREST 代表取締役社長 Cassandra商用サポート、Cassandraコンサルティング他 Python歴7年、最近はJavaが中心。 PHP、Ruby、JavaScript、Perl、Cは業務経験有り。 職種:本職はDB・インフラ系エンジニア 以前、某レストランサーチのDBA 高負荷・大容量・大規模のOracleRACとPostgreSQLと MySQLに苦しめられ続けた経験あり。 最近のトレンドはかつての専攻「認知意味論」をベースにした NLP
  3. 3. Agenda IoTのデータとは Cassandraの普遍性 Sparkの力 まとめ
  4. 4. IoTデータとは IoTとM2M Internet of Things Machine to Machine マシンツーマシン(Machine-to-Machine)とは、 コンピュータネットワークに繋がれた機械同士 が人間を介在せずに相互に情報交換し、自動 的に最適な制御が行われるシステムを指す。 一意に識別可能な「もの」がインターネット/ク ラウドに接続され、情報交換することにより相 互に制御する仕組みである
  5. 5. IoTデータとは 例1) iBeacon BLE(Bluetooth low Energy)を使える端末(ス マートフォンなど)を発信器として、その端末の 持つエリアへの入出検知や距離計測を行える 仕組み(東京駅構内ナビなど) データの性質:人数×回数×拠点数×時間 1時間に1000人の人が2回通過 ID等:100b 拠点数:50箇所 増加率 1mb/h 24mb/d 720mb/m 4.32gb/hm
  6. 6. IoTデータとは 例2) Industrial Internet 産業用機器とITの融合に関するコンセプト。 高機能の機器、低コストのセンサー、インター ネット、ビッグデータ収集・分析技術などを組 み合わせ故障率検地など機器の効率的な運 用を行う。 インターネット データの性質:センサー数×回数×拠点数×時間 10秒間に10000個のセンサーが1回通信 ID等:100b 拠点数:3箇所 増加率 6mb/h 144mb/d 864mb/m 5.184gb/hm
  7. 7. IoTデータとは 0 2 4 6 8 10 12 データ増加率 iBeacon Industrial Internet gb
  8. 8. IoTデータとは 従来のデータ解析 仮説 検証サンプリング 全量データ 解析 検証 仮説生成 解析 検証 最近のデータ解析
  9. 9. Cassandraの普遍性 リニアにスケールするCassandra 50ノードから300ノードへのスケーリ ングベンチマークテスト
  10. 10. Cassandraの普遍性 IoT向けデータベースとしてのCassandraの特徴 • 書込みに強い。 • 書込み先が分散化されているので同時多数書込みに強い(秒間100万 書込み等) • 結果整合性による柔軟な書込み精度を選択可能 • 解析ツールとの親和性 • 多彩なドライバ(ODBC、JDBC、PHP、Ruby、Perl等) • Apache Hadoop、Apache Spark、Presto等の多彩な解析ツールを利用可能 • マルチベンダー • Windows、Linux、各種クラウド、JVMが稼働すれば使用する事が出来ま す。Windowsでの採用実績もあります。
  11. 11. Sparkの力 Cassandraは横断検索が苦手 RowKeyベースのConsistent Hashingの為、連続した Keyが同じノードに存在するとは限らないので連続し た領域のデータ取得はCassandra単体では苦手 データ解析は総当たりの逐次処理
  12. 12. Sparkの力 Sparkとは 高速なデータ分析のための新たな手段 Sparkの特徴  RDD(Resilient Distributed Dataset・弾性分散データセット)  不変(イミュータブル)  分割・分散配置  インメモリー  遅延評価  Hadoop連携  HDFS自動連携  YARN連携
  13. 13. Sparkの力 システム構造 Cassandra Spark Hadoop YARN RM、NN レンジ範囲内の 逐次処理 Cassandra Spark Hadoop YARN Cassandra Spark Hadoop YARN Cassandra Spark Hadoop YARN Cassandra Spark Hadoop YARNCassandra Spark Hadoop YARN
  14. 14. Sparkの力 アプリケーション Scala、Java(7,8)、Pythonでアプリケーションを作成可能。 データ解析に適したLibraryを適時利用することにより迅速に業務ア プリケーションを作成可能。
  15. 15. Sparkの力 Sparkのライブラリ • Spark Streaming データの逐次時系列処理 • Spark SQL • SQLライクなQuery言語 • GraphX • グラフとグラフ並列計算API • MLLib • 機械学習アルゴリズムAPI
  16. 16. Sparkの力 • Spark Streaming データの逐次時系列処理 Spark Streaming with Cassandra ソーシャル ストリーム Spark Streaming Cassandra store Hello World Hello World Hello World ※短時間のShortBatchを逐次実行可能。
  17. 17. Sparkの力 • Spark SQL SQLライクなDSL言語 Spark SQL with Cassandra Spark SQL Cassandra var rdd = cc.sql("SELECT * from test2.words a join test2.phrase b on a.word = b.phrase")
  18. 18. Sparkの力 ■インタラクティブ spark-shell Spark向けScala用のインタラ クティブシェル。Scalaでその 場でロジックを実行可能 SparkSQLも実行可能、インタ ラクティブなデータ問い合わ せが可能。
  19. 19. Sparkの力 • GraphX グラフとグラフ並列計算API GraphX with Cassandra GraphX CassandraCassandra ソーシャルグラフ解析・テキスト解析など
  20. 20. Sparkの力 • MLLib • 機械学習アルゴリズムAPI MLLib with Cassandra Data types Basic statistics summary statistics correlations stratified sampling hypothesis testing random data generation Classification and regression linear models (SVMs, logistic regression, linear regression) naive Bayes decision trees ensembles of trees (Random Forests and Gradient-Boosted Trees) isotonic regression Collaborative filtering alternating least squares (ALS) Clustering k-means Gaussian mixture power iteration clustering (PIC) latent Dirichlet allocation (LDA) streaming k-means Dimensionality reduction singular value decomposition (SVD) principal component analysis (PCA) Feature extraction and transformation Frequent pattern mining FP-growth Optimization (developer) stochastic gradient descent limited-memory BFGS (L-BFGS) 最新ではアルゴリズムの数が格段に増えました。 大量にためる→機械学習 この組合せに最適 Tweet 3000万件のClusteringなど
  21. 21. Sparkの力 Cassandra Spark Hadoop YARN 実際のシステム構成 fluentd Cassandra Spark Hadoop YARN Cassandra Spark Hadoop YARN Spark + Cassandra クラスター Cassandra Spark Hadoop YARN Spark JobServer Web Server Batch Server
  22. 22. まとめ • IoTデータは爆発しやすい • Cassandraは大規模データの管理に親和性がある • Cassandraはデータストレージなので機能そのものはさほど多くない • SparkはCassandraの足りないところを上手に補ってくれる。

×