More Related Content Similar to BdasとSpark概要 (20) BdasとSpark概要8. What is DBAS ?
the Berkeley Data Analytics Stack, is an open
source software stack that integrates software
components being built by the AMPLab to
make sense of Big Data.
11. BDAS のコンポーネント1
● Apache Mesos
○ リソースマネージャー
● Tackyon
○ Distributed fault-tolerance in-memory
○ メモリに乗らない場合はディスクキャッシュ(?)
● Apache Spark
○ 大規模 in-memory 処理フレームワーク
12. BDAS のコンポーネント2
● Spark Streaming
○ Spark でストリーミング処理
● GraphX(開発途上)
○ ネットワーク分析用のシステム
● MLbase(開発途上)
○ Spark 向け大規模分散機械学習ライブラリ
● Shark
○ Hive の Spark 版
13. Shark の簡単な紹介
● in-memory で SQL like に処理を実行
○ Cloudera Impara みたいなもの(?)
● Spark の上で動いている
○ MapReduce based Architecture
● Hive Compatible
● SQL 以外にも複雑な分析を実行できる(らしい)
15. Hadoop MapReduce の欠点
● アルゴリズムとしての欠点
○ リアルタイム
○ 分散処理間のデータのやり取り(SVM 無理とか)
● Hadoop としての欠点
○ 多段階 MapReduce のとき、都度各 JobTracker で
JVM を起動するので処理をしていない時間に無駄が多
い
○ MapReduce に HDFS の IO が必要なので、read/write
の時間が無駄
18. Spark とは
● in-memory で分散処理をするためのコンポー
ネント
● Hadoop MapReduce には向いていないアルゴ
リズムを実装できる
○ Iterative Algorithm
■ k-means のような ML や Network Analysis
○ Interactive Data Mining
■ Scala を拡張したコンソールで対話的に実行
20. RDD (Resilient Distributed Datasets)
● 効率的に大規模データも分散メモリとして保持する機構
○ Fault tolerance, data locality, scalability
● イミュータブルで分割されたオブジェクトのコレクション
● 並列処理(map、filter、groupBy、join)をストレージ上の
データに適用した結果生成
● 再利用するためにメモリ上にキャッシュされる
31. Spark まとめ
● Hadoop MapReduce が苦手とする処理を補う
ための分散メモリ上の処理コンポーネント
● メモリにデータがのるならMapReduce より速い
● 開発言語は Scala
● Hive みたいに Shark で SQL を書ける
33. MLib
●
●
Spark 向け機械学習ライブラリ
○ Mahout on Hadoop みたいなもの
サポートしている機械学習タイプ
○ Binary classification
■ Linear Support Vector Machines (SVMs)
■ Logistic Regression
○ Linear Regression
■ LinearRegressionWithSGD
■ RidgeRegressionWithSGD
■ LassoWithSGD
○ Clustering
■ k-means
○ Collaborative filtering
■ alternating least squares (ALS)
34. Cascading と Pattern
● Cascading
○ Hadoop 上の処理をより簡単に書くためのフレームワー
ク
○ 開発言語:Scala
● Cascading Pattern
○ Cascading で記述できる機械学習ライブラリ
○ Predictive Model Markup Language (PMML) 対応
■ SPSS, R などで記述した処理を PMML に出力して
Pattern で実行