devsumi 2016 b_4 kafkaとsparkを組み合わせたリアルタイム分析基盤の構築
TRANSCRIPT
© 2016 IBM Corporation
「乗り遅れるな! Kafka と Spark を組み合わせた リアルタイム分析基盤の構築」
IBM アナリティクス事業本部 テクニカルリード 田中 裕一2016.2.18
#devsumiB 18-B-4
© 2016 IBM Corporation2
自己紹介田中裕一( yuichi tanaka)主にアーキテクチャとサーバーサイドプログラムを担当することが多い。 Hadoop/Spark周りをよく触ります。Node.js、 Python、最近は Spark周りの仕事で Scalaを書くことが多い気がします。
休日は OSS 周りで遊んだり。
© 2016 IBM Corporation3
今日の講演の持ち帰りポイントターゲット▪これからビッグデータを創めたい方▪Sparkを始めたい・ビッグデータ始めたいエンジニアの取っ掛かり▪ビッグデータをやることになったけど何から始めたらよいか?という方持ち帰りポイント▪Spark+ Kafkaを使った解析基盤の概要の把握、オリジナルの基盤構築を行うことが出来る▪ビジネス担当の方には「こんなことが出来るんじゃないか?」という発想の種
© 2016 IBM Corporation4
今日のアジェンダ
Hadoop/Spark の広がりについて
従来の Hadoop 基盤のおさらいと問題提起
Spark/Kafka の概要のおさらい
リアルタイム解析基盤について
リアルタイム解析基盤の活用
© 2016 IBM Corporation5
Apache Hadoop/Sparkと BigData
Apache HadoopApache SparkApache Kafkaのそれぞれのトレンド
© 2016 IBM Corporation6
Sparkの広がりSparkはイノベータ、アーリアドプタを超えて広がりつつある
© 2016 IBM Corporation7
業界に横串で展開される Big Data
© 2016 IBM Corporation8
BigData とはどんなものか
© 2016 IBM Corporation9
BigData基盤従来の Hadoop基盤
© 2016 IBM Corporation10
Inputの問題データを格納するタイミングの問題
© 2016 IBM Corporation11
処理時間の問題どうやってレイテンシを下げるかの問題
© 2016 IBM Corporation12
データの反映の問題アウトプットの問題
© 2016 IBM Corporation13
Apache Spark/Apache Kafkaのおさらいここでやること
▪Apache Sparkの概要▪Apache Kafkaの概要
© 2016 IBM Corporation14
Apache Sparkの概要
SQLのインタフェースを提供 グラフ操作を提供ストリーミング処理を提供 機械学習アルゴリズムを提供
© 2016 IBM Corporation15
Apache Sparkの概要Hadoop での MapReduce の処理例
© 2016 IBM Corporation16
Apache Sparkの概要Spark での RDD & DAG の処理例
© 2016 IBM Corporation17
Apache Kafkaの概要Kafka の俯瞰図
© 2016 IBM Corporation18
Kafkaと Sparkを使ったリアルタイム解析基盤
© 2016 IBM Corporation19
リアルタイム解析基盤ではキューが重要
© 2016 IBM Corporation20
キューによる処理系の分離
© 2016 IBM Corporation21
キューを使ったストリーミングフロー制御
© 2016 IBM Corporation22
キューを使った処理やアルゴリズムの検証
© 2016 IBM Corporation23
リアルタイム基盤の活用
© 2016 IBM Corporation24
リアルタイム基盤の活用
© 2016 IBM Corporation25
リアルタイム基盤の活用
© 2016 IBM Corporation26
リアルタイム基盤の活用
© 2016 IBM Corporation27
まとめ
Spark は利用事例や活用事例がこれからなサービス
多様な業種で必要とされるビッグデータ処理を包括的に、
インタラクティブに扱うことが出来る
設計に当たってキューを使っておくとアーキテクチャ全体
の耐障害性・可用性が担保しやすい
© 2016 IBM Corporation28
Appendix
DataPalooza を日本でもやります!
© 2016 IBM Corporation29
Appendix
IBM は Hadoop のディストリビューションを持っています。
OpenDataPlatformhttp://www.ibm.com/analytics/us/en/technology/hadoop/
BigInsightshttp://www-03.ibm.com/software/products/ja/ibm-biginsights-for-apache-hadoop/
Bluemixhttps://console.ng.bluemix.net/
© 2016 IBM Corporation30
Appendix
IBM は Spark/Hadoop につよい会社です
http://jp.techcrunch.com/2015/06/16/20150615ibm-pours-researchers-and-resources-into-apache-spark-project/
© 2016 IBM Corporation31
ワークショップ、セッション、および資料は、 IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報提供の目的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結果を生むものでもありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努力しましたが「現状のまま」提供され、明示または暗示にかかわらずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使用によって、あるいはその他の関連によって、いかなる損害が生じた場合も、 IBM は責任を負わないものとします。本講演資料に含まれている内容は、 IBMまたはそのサプライヤーやライセンス交付者からいかなる保証または表明を引きだすことを意図したものでも、 IBMソフトウェアの使用を規定する適用ライセンス契約の条項を変更することを意図したものでもなく、またそのような結果を生むものでもありません。本講演資料で IBM製品、プログラム、またはサービスに言及していても、 IBMが営業活動を行っているすべての国でそれらが使用可能であることを暗示するものではありません。本講演資料で言及している製品リリース日付や製品機能は、市場機会またはその他の要因に基づいて IBM独自の決定権をもっていつでも変更できるものとし、いかなる方法においても将来の製品または機能が使用可能になると確約することを意図したものではありません。本講演資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上高の向上、または
その他の結果が生じると述べる、または暗示することを意図したものでも、またそのような結果を生むものでもありません。 パフォーマンスは、管理された環境において標準的な IBMベンチマークを使用した測定と予測に基づいています。ユーザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、および処理されるワークロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありません。記述されているすべてのお客様事例は、それらのお客様がどのように IBM製品を使用したか、またそれらのお客様が達成した結果の実例として示されたものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。IBM、 IBM ロゴ、 ibm.comは、世界の多くの国で登録された International Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれ IBMまたは各社の商標である場合があります。
現時点での IBM の商標リストについては、 www.ibm.com/legal/copytrade.shtml をご覧ください。Apache Hadoop 、 Hadoop 、 Apache Spark 、 Spark 、 Apache Kafka 、 Kafka 、 Apache 、は、 Apache Software Foundation の米国およびその他の国における登録商標、または商標です。