SlideShare a Scribd company logo
1 of 34
Download to read offline
© 2016 IBM Corporation
Apache Sparkを中心としたOSSビッグデータ活
用と導入時の検討ポイント
Tanaka Y.P
2016-10-25
© 2016 IBM Corporation2
自己紹介
田中裕一(yuichi tanaka)
主にアーキテクチャとサーバーサイドプログラムを担当
することが多い。Hadoop/Spark周りをよく触ります。
Node.js、Python、最近はSpark周りの仕事でScalaを書く
ことが多い気がします。
休日はOSS周りで遊んだり。
詳解 Apache Spark
© 2016 IBM Corporation3
自己紹介
© 2016 IBM Corporation4
背景
昨今データ活用の重要性が説かれて久しく、
IoT,機会学習,Cognitive,AI,Security,etc,.etcのワードと
共に全ての業種で必須と言っていいほど分析基盤の重要
性は高まっています。
 参考:総務省 H.24 情報通信白書
 http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h24/html/nc121410.html
© 2016 IBM Corporation5
HADOOPが起こしたブレイクス
ルー
© 2016 IBM Corporation6
遥か昔
 データ活用のための基盤というのは非常に限られた世界の技術でした。
 当時の考え方
1. 非常に高価なHW(最適化された高速なCPU,多くのメモリ)を用いて
2. 少量のデータに対し複雑な処理を行わせる
 専用のHW
 専用の知識
 専用の技術
 早い限界
Fat Server
© 2016 IBM Corporation7
分散システム
 ここで登場するのが分散システムの考え方です。
 GridComputingやHPCを筆頭に
1. 一つのタスク(仕事)を
2. 複数のマシンで分散して処理を行う
発想が登場しました。
中央に配置したデータを実行時にCPUにコピーし複数のマシンで複雑な処理を行わせる
1. 複雑なプログラミング
2. CPUにコピーするための帯域の上限
3. 耐障害性の課題
© 2016 IBM Corporation8
Hadoopの登場
 昨今注目を集めているのがApache Hadoopでの分散システムです。
 データは配置する際に分散して配置し、処理はデータが配置されたマシン上に割振る
1. 安価な(commodity化された)HW
2. データコピーによる単純な耐障害性の担保
3. 高レイヤでのアプリ構築
4. 最低限のデータ転送
5. スケーラビリティ
© 2016 IBM Corporation9
Hadoop時代のアーキテクチャまとめ
 Hadoop登場により、一般の企業に大規模データを活用した高度な分析や新しいサービスが
登場し活用が広がっていきます。
登場人物のおさらい
1. 分散データ(HDFS)
2. 分散処理(MapReduce)
HDFS
MapReduce
© 2016 IBM Corporation10
HadoopのEcosystem化
© 2016 IBM Corporation11
Hadoopの複雑化
大規模データの活用が広がる中で、より簡単により専門的な
処理を行うための新しいミドルウェアが登場や、新たな要件
の取り組み、またHadoop自体も洗練されていきます。
 Hadoopの洗練
 分散処理のうち、分散処理の為のフレームワークとリ
ソース管理の分離
HDFS
MapReduce
HDFS
MapReduce
YARN
© 2016 IBM Corporation12
Ecosystemの形成
 Hadoopを中心としたEcosystemの形成
 より簡単にSQL文で分散処理を行うHive等、SQLエンジンの登場
 より専門的な機会学習を分散処理するMahout等、機会学習エンジンの登場
 大規模なデータを効率よく検索させるSolr等、全文検索エンジンの移植
 Graph処理を扱うGiraph,Hama等、Graph処理エンジンの登場
 データを効率よくHadoopに収集するためのFlume等、ETLシステムの登場
 処理した結果を効率よく他システムに連携する為のqueue、RDBとの組み合
わせ
 大量書き込み可能なHBase等、ストレージエンジンの登場
 HadoopEcosystem全体を管理するためのAmbari等、Cluster管理システムの
登場
 etc,.etc
© 2016 IBM Corporation13
Ecosystemの登場人物
 活用が広がる中で、各分野が専門化し、それらを組み合わせた一つの世界を作っていきま
す。
登場人物のおさらい
 分散データ(HDFS)
 ストレージエンジン(HBase)
 全文検索(Solr,Elasticsearch)
 Queue,RDB(Kafka,RabbitMQ,PostgreSQL,MySQL)
 リソース管理(YARN)
 分散処理(MapReduce)
 SQLエンジン(Hive)
 機会学習(Mahout)
 Graph処理(Giraph,Hama)
 ETL(Flume,Sqoop)
 Cluster管理(Ambari)
© 2016 IBM Corporation14
Hadoop(HDFS/YARN)
基幹データ 顧客データ
購買データ データベース
従来型のデータ
ソーシャルデータ オープンデータ
新しいデータ
センサーデータ
IoT
batchMicro
batch
Streaming
SPSS
Cognos
データ活用基盤の技術要素の俯瞰
Dataソース ETL系 処理系
操作系 表示系
連携系
管理系
© 2016 IBM Corporation15
多様なデータを表現する為のOSSの利用
RethinkDB
RabbitMQ
Postgres
Elasticsearch
Hadoop
高速/高度な分
析
検索I/Fの提供
OLTP I/Fの提供
リアルタイムな更新情報I/Fの提供
AMQPシステム間連携I/Fの提供
© 2016 IBM Corporation16
データ活用とEcosystemの問題
 Hadoopの登場でデータ活用が広く一般的になってきました。
 しかし、データ活用の業界が広がるにつれ、
 新たな要件にfitしたミドルウェアが乱立
 大規模データに対するレイテンシの要件の高度化
 が求められた結果
 複雑化したEcosystemで迷子になる
 管理運用難易度が上がり
 複数のミドルウェアに対応するため、技術習得の難易度も上がる
この辺りからHadoopEcosystem全般を管理運用する為のHadoopエンジニ
アの必要性が高まります。
© 2016 IBM Corporation17
Sparkの登場
 そこで登場したのがSparkです。
 大規模データに対するレイテンシの要件に対し、InMemoryで分散処理を行う
 ミドルウェアの乱立に対し、Spark内にSQL,Streaming,GraphX,MLlibを内包する
© 2016 IBM Corporation18
Sparkとは❶
Sparkとは
RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク
Driver Program
Worker Worker Worker
ProgramProgramProgram
DataDataData
© 2016 IBM Corporation19
Sparkとは❷
Sparkとは
RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク
Driver Program
Worker Worker Worker
ProgramProgramProgram
DataDataData
© 2016 IBM Corporation20
Sparkとは❸
Sparkとは
RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク
Driver Program
Worker Worker Worker
ProgramProgramProgram
DataDataData
output output output
© 2016 IBM Corporation21
NarrowDependency,ShuffleDependency
ここでは各Partitionの変換操作(NarrowDependency)とアクション操作(ShuffleDependency)をTransaction.csvを元に
reduceByKey時のjobを見ていきます。
WorkerNode
WorkerNode
WorkerNode
Partition0
Partition3
Partition1
Partition2
6,tanaka,532
1,tanaka,100
2,tanaka,300
3,tsuchiya,50
4,kaijima,2000
5,tsuchiya,1320
Partition0
Partition3
(tanaka,100)
(tanaka,300)
(tanaka,532)
Partition1
(tsuchiya,50)
(kaijima,2000)
Partition2
(tsuchiya,1320)
Partition0
(tanaka,932)
Partition2
(kaijima,2000)
Partition1
(tsuchiya,1370)
Narrow Dependency
Shuffle Dependency
Stage0 Stage1
task0
task1
task2
task3
task4
task5
task6
© 2016 IBM Corporation22
さらなるデータ活用の浸透
© 2016 IBM Corporation23
Sparkの活用と新たな可能性
 Sparkの登場により従来の分析処理(BIの為の集計など)に加え、
 機会学習処理をアドホックに行う
 今流れているデータに対して分析を行う
 分析結果を他システムに直接連携し、別システムのInputとする
といった運用が可能になりました。
従来の分析
ストリーミング処理
アドホック処理
© 2016 IBM Corporation24
断続的な処理を想定したデータ処理
~データを”永久”に保持しない~
全データに対する一括処理を目的とせず、断続的に流れるデータをインメ
モリで加工処理しデータ出力をする一連の流れを最も簡単にモデル化した
データ処理モデル.
記録データ
処理要求 処理結果
データ
インメモリ
データ
処理
バッチ、OLTP処理 ストリーム・コンピューティング
※任意の時間・区間データをメモ
リ上に保持することができます。
※全てのデータはHDDに
永続化されていることが前提。
PULL
PUSH
アクション
© 2016 IBM Corporation25
受信データから
特定条件(フィル
タリング)データの
みを抽出する
区間内の
移動平均値や
一括り処理をする
フィルタリング入力タプル 出力タプル
例:条件閾値>100(℃)
フィルタリング、タプルの追加・削除、タプルの変換に利用
(1) フィルタリング処理
t(1) t(k)
スライディング・ウィンドウ
データをある束に区切って処理する場合に利用
区間内の「タプル数」で集約する場合は、
タンブリング・ウィンドウを用います。
(2) スライディング・ウィンドウ処理
参考:オペレータ処理の例
© 2016 IBM Corporation26
 Sparkとストリーム処理の組み合わせ例
Incident
s
Calls for
Service
(911,
etc)
311
Code
Violation
s
Permit
s
Building
s Apache Spark
MLli
b
HDFS
ヒストリカル・データ
Model2 :
どのアクション
を実行すべき
か?
Model1 :
これはフォル
ス・アラーム
か?
リアルタイム
インプットデータ
リアルタイム
予測分析&コンテ
キスト解析
リアルタイム・ダッシュボー
ド
InfoSphere STREAMS
© 2016 IBM Corporation27
機械学習への取り組みの変化
学習用
DataSet
モ
デ
ル
化
モデル
本番DataSet
適
用
学習用
DataSet学習用
DataSet学習用
DataSet
モデル
モデル
モデル
D
D
D
D
他システム連携
ナレッジ
複合の分
析
従来の分析
• 単一データセット
• 小さなデータ
変化
• 複合データセット
• 大きなデータ
• 即応性
• チームでの分析
© 2016 IBM Corporation28
データサイエンティストの需要の高まりと基盤
 今まで一部企業のみにあったデータサイエンティストという職種が広く
求められてきます。合わせて、データサイエンティストが必要とする環
境に合わせて JupyterNotebook,ZeppelingNotebookなどのNotebookI/F系
が今注目されています。
 Web上でのアドホック分析
 データと分析処理のナレッジ化
 分析の共有
© 2016 IBM Corporation29
ユースケースとアーキテクチャ
© 2016 IBM Corporation30
分析基盤の3つの用途
 ここまでBigDataと呼ばれる分野の歴史を駆け足で見てきました。ここか
らは目的の整理とアーキテクチャを見ていきます。
大きな3つの用途
 大規模バッチ処理を目的とした基盤
 リアルタイム処理を目的とした基盤
 アドホック分析を目的とした基盤
© 2016 IBM Corporation31
大規模バッチ処理基盤
 この用途の基盤では多くのバッチ処理が継続的に平行で流れます。主に他システムで発生
したデータを集約し、結果をBI/CI、他システムに連携していく事をメインに扱います。
Hadoop(HDFS/YARN)
繰り返し処理
© 2016 IBM Corporation32
リアルタイム処理基盤
 この用途の基盤では他システムで発生したデータを直接受け取り継続的に小規模なバッチ
や異常値検知などで利用されます。こちらも結果を他システムに連携していく事をメイン
に扱います
Hadoop(HDFS/YARN)
MQTT
© 2016 IBM Corporation33
アドホック分析基盤
 この用途の基盤では他システムで発生したデータを組み合わせ様々な新しい知見を得る為
に利用されます。こちらは結果をアドホックに得る為、いかにインタラクティブに処理を
行わせるかがメインとなってきます。
Hadoop(HDFS/YARN)
© 2016 IBM Corporation34
まとめ
 この3つの用途は分離可能ではなく、うまく共存していく事が重要です。
 OSSの選定の際にも、
 主となる用途(バッチがメイン?アドホック分析がメイン?)
 補助的な用途、またはチャレンジ
を意識してBigData基盤を育てていくと良いでしょう。

More Related Content

What's hot

初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜Tanaka Yuichi
 
Pysparkで始めるデータ分析
Pysparkで始めるデータ分析Pysparkで始めるデータ分析
Pysparkで始めるデータ分析Tanaka Yuichi
 
Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016Tatsuya Atsumi
 
HBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejpHBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejpFwardNetwork
 
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fall
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fallビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fall
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo FallYusukeKuramata
 
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~
データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~NTT DATA OSS Professional Services
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)NTT DATA OSS Professional Services
 
Apache cassandraと apache sparkで作るデータ解析プラットフォーム
Apache cassandraと apache sparkで作るデータ解析プラットフォームApache cassandraと apache sparkで作るデータ解析プラットフォーム
Apache cassandraと apache sparkで作るデータ解析プラットフォームKazutaka Tomita
 
本当にあったApache Spark障害の話
本当にあったApache Spark障害の話本当にあったApache Spark障害の話
本当にあったApache Spark障害の話x1 ichi
 
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告Spark Summit 2015 参加報告
Spark Summit 2015 参加報告Katsunori Kanda
 
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-LINE Corp.
 
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウSpark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウFuture Of Data Japan
 
SparkやBigQueryなどを用いた モバイルゲーム分析環境
SparkやBigQueryなどを用いたモバイルゲーム分析環境SparkやBigQueryなどを用いたモバイルゲーム分析環境
SparkやBigQueryなどを用いた モバイルゲーム分析環境yuichi_komatsu
 
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~The Japan DataScientist Society
 
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係datastaxjp
 
Spark GraphX で始めるグラフ解析
Spark GraphX で始めるグラフ解析Spark GraphX で始めるグラフ解析
Spark GraphX で始めるグラフ解析Yosuke Mizutani
 
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」Kazuki Taniguchi
 
Spark勉強会_ibm_20151014-公開版
Spark勉強会_ibm_20151014-公開版Spark勉強会_ibm_20151014-公開版
Spark勉強会_ibm_20151014-公開版Atsushi Tsuchiya
 

What's hot (20)

初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
 
Jjug ccc
Jjug cccJjug ccc
Jjug ccc
 
Pysparkで始めるデータ分析
Pysparkで始めるデータ分析Pysparkで始めるデータ分析
Pysparkで始めるデータ分析
 
Apache Sparkの紹介
Apache Sparkの紹介Apache Sparkの紹介
Apache Sparkの紹介
 
Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016
 
HBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejpHBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejp
 
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fall
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fallビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fall
ビッグデータ活用を加速する!分散SQLエンジン Spark SQL のご紹介 20161105 OSC Tokyo Fall
 
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~
データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
 
Apache cassandraと apache sparkで作るデータ解析プラットフォーム
Apache cassandraと apache sparkで作るデータ解析プラットフォームApache cassandraと apache sparkで作るデータ解析プラットフォーム
Apache cassandraと apache sparkで作るデータ解析プラットフォーム
 
本当にあったApache Spark障害の話
本当にあったApache Spark障害の話本当にあったApache Spark障害の話
本当にあったApache Spark障害の話
 
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
 
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
 
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウSpark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
 
SparkやBigQueryなどを用いた モバイルゲーム分析環境
SparkやBigQueryなどを用いたモバイルゲーム分析環境SparkやBigQueryなどを用いたモバイルゲーム分析環境
SparkやBigQueryなどを用いた モバイルゲーム分析環境
 
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
 
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
 
Spark GraphX で始めるグラフ解析
Spark GraphX で始めるグラフ解析Spark GraphX で始めるグラフ解析
Spark GraphX で始めるグラフ解析
 
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
 
Spark勉強会_ibm_20151014-公開版
Spark勉強会_ibm_20151014-公開版Spark勉強会_ibm_20151014-公開版
Spark勉強会_ibm_20151014-公開版
 

Similar to ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント

[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...Insight Technology, Inc.
 
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)hamaken
 
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)NTT DATA Technology & Innovation
 
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)NTT DATA OSS Professional Services
 
20190517 Spark+AI Summit2019最新レポート
20190517 Spark+AI Summit2019最新レポート20190517 Spark+AI Summit2019最新レポート
20190517 Spark+AI Summit2019最新レポートRyoma Nagata
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Hadoop / Spark Conference Japan
 
Hack/HHVMの最新事情とメイン言語に採用した理由
Hack/HHVMの最新事情とメイン言語に採用した理由Hack/HHVMの最新事情とメイン言語に採用した理由
Hack/HHVMの最新事情とメイン言語に採用した理由Yuji Otani
 
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)NTT DATA OSS Professional Services
 
Bluemixとapache sparkでできる io tデータの収集と分析
Bluemixとapache sparkでできる io tデータの収集と分析Bluemixとapache sparkでできる io tデータの収集と分析
Bluemixとapache sparkでできる io tデータの収集と分析Mitsutoshi Kiuchi
 
Hadoop/Spark セルフサービス系の事例まとめ
Hadoop/Spark セルフサービス系の事例まとめHadoop/Spark セルフサービス系の事例まとめ
Hadoop/Spark セルフサービス系の事例まとめYuta Imai
 
ビッグデータ関連Oss動向調査とニーズ分析
ビッグデータ関連Oss動向調査とニーズ分析ビッグデータ関連Oss動向調査とニーズ分析
ビッグデータ関連Oss動向調査とニーズ分析Yukio Yoshida
 
20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのsparkRyuji Tamagawa
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料Takashi Aoe
 
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)VirtualTech Japan Inc.
 
Node-REDのフローをバックアップしよう
Node-REDのフローをバックアップしようNode-REDのフローをバックアップしよう
Node-REDのフローをバックアップしようKota Suizu
 

Similar to ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント (20)

[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
 
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
 
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料)
 
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
 
20190517 Spark+AI Summit2019最新レポート
20190517 Spark+AI Summit2019最新レポート20190517 Spark+AI Summit2019最新レポート
20190517 Spark+AI Summit2019最新レポート
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
 
Spark summit 2016 recap
Spark summit 2016 recapSpark summit 2016 recap
Spark summit 2016 recap
 
Hack/HHVMの最新事情とメイン言語に採用した理由
Hack/HHVMの最新事情とメイン言語に採用した理由Hack/HHVMの最新事情とメイン言語に採用した理由
Hack/HHVMの最新事情とメイン言語に採用した理由
 
Apache Spark の紹介(前半:Sparkのキホン)
Apache Spark の紹介(前半:Sparkのキホン)Apache Spark の紹介(前半:Sparkのキホン)
Apache Spark の紹介(前半:Sparkのキホン)
 
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
 
Bluemixとapache sparkでできる io tデータの収集と分析
Bluemixとapache sparkでできる io tデータの収集と分析Bluemixとapache sparkでできる io tデータの収集と分析
Bluemixとapache sparkでできる io tデータの収集と分析
 
Spring Cloud Data Flow の紹介 #streamctjp
Spring Cloud Data Flow の紹介  #streamctjpSpring Cloud Data Flow の紹介  #streamctjp
Spring Cloud Data Flow の紹介 #streamctjp
 
Hadoop/Spark セルフサービス系の事例まとめ
Hadoop/Spark セルフサービス系の事例まとめHadoop/Spark セルフサービス系の事例まとめ
Hadoop/Spark セルフサービス系の事例まとめ
 
ビッグデータ関連Oss動向調査とニーズ分析
ビッグデータ関連Oss動向調査とニーズ分析ビッグデータ関連Oss動向調査とニーズ分析
ビッグデータ関連Oss動向調査とニーズ分析
 
Spark SQL - The internal -
Spark SQL - The internal -Spark SQL - The internal -
Spark SQL - The internal -
 
20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料
 
What makes Apache Spark?
What makes Apache Spark?What makes Apache Spark?
What makes Apache Spark?
 
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)
サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)
 
Node-REDのフローをバックアップしよう
Node-REDのフローをバックアップしようNode-REDのフローをバックアップしよう
Node-REDのフローをバックアップしよう
 

Recently uploaded

持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 

Recently uploaded (12)

持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 

ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント

  • 1. © 2016 IBM Corporation Apache Sparkを中心としたOSSビッグデータ活 用と導入時の検討ポイント Tanaka Y.P 2016-10-25
  • 2. © 2016 IBM Corporation2 自己紹介 田中裕一(yuichi tanaka) 主にアーキテクチャとサーバーサイドプログラムを担当 することが多い。Hadoop/Spark周りをよく触ります。 Node.js、Python、最近はSpark周りの仕事でScalaを書く ことが多い気がします。 休日はOSS周りで遊んだり。 詳解 Apache Spark
  • 3. © 2016 IBM Corporation3 自己紹介
  • 4. © 2016 IBM Corporation4 背景 昨今データ活用の重要性が説かれて久しく、 IoT,機会学習,Cognitive,AI,Security,etc,.etcのワードと 共に全ての業種で必須と言っていいほど分析基盤の重要 性は高まっています。  参考:総務省 H.24 情報通信白書  http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h24/html/nc121410.html
  • 5. © 2016 IBM Corporation5 HADOOPが起こしたブレイクス ルー
  • 6. © 2016 IBM Corporation6 遥か昔  データ活用のための基盤というのは非常に限られた世界の技術でした。  当時の考え方 1. 非常に高価なHW(最適化された高速なCPU,多くのメモリ)を用いて 2. 少量のデータに対し複雑な処理を行わせる  専用のHW  専用の知識  専用の技術  早い限界 Fat Server
  • 7. © 2016 IBM Corporation7 分散システム  ここで登場するのが分散システムの考え方です。  GridComputingやHPCを筆頭に 1. 一つのタスク(仕事)を 2. 複数のマシンで分散して処理を行う 発想が登場しました。 中央に配置したデータを実行時にCPUにコピーし複数のマシンで複雑な処理を行わせる 1. 複雑なプログラミング 2. CPUにコピーするための帯域の上限 3. 耐障害性の課題
  • 8. © 2016 IBM Corporation8 Hadoopの登場  昨今注目を集めているのがApache Hadoopでの分散システムです。  データは配置する際に分散して配置し、処理はデータが配置されたマシン上に割振る 1. 安価な(commodity化された)HW 2. データコピーによる単純な耐障害性の担保 3. 高レイヤでのアプリ構築 4. 最低限のデータ転送 5. スケーラビリティ
  • 9. © 2016 IBM Corporation9 Hadoop時代のアーキテクチャまとめ  Hadoop登場により、一般の企業に大規模データを活用した高度な分析や新しいサービスが 登場し活用が広がっていきます。 登場人物のおさらい 1. 分散データ(HDFS) 2. 分散処理(MapReduce) HDFS MapReduce
  • 10. © 2016 IBM Corporation10 HadoopのEcosystem化
  • 11. © 2016 IBM Corporation11 Hadoopの複雑化 大規模データの活用が広がる中で、より簡単により専門的な 処理を行うための新しいミドルウェアが登場や、新たな要件 の取り組み、またHadoop自体も洗練されていきます。  Hadoopの洗練  分散処理のうち、分散処理の為のフレームワークとリ ソース管理の分離 HDFS MapReduce HDFS MapReduce YARN
  • 12. © 2016 IBM Corporation12 Ecosystemの形成  Hadoopを中心としたEcosystemの形成  より簡単にSQL文で分散処理を行うHive等、SQLエンジンの登場  より専門的な機会学習を分散処理するMahout等、機会学習エンジンの登場  大規模なデータを効率よく検索させるSolr等、全文検索エンジンの移植  Graph処理を扱うGiraph,Hama等、Graph処理エンジンの登場  データを効率よくHadoopに収集するためのFlume等、ETLシステムの登場  処理した結果を効率よく他システムに連携する為のqueue、RDBとの組み合 わせ  大量書き込み可能なHBase等、ストレージエンジンの登場  HadoopEcosystem全体を管理するためのAmbari等、Cluster管理システムの 登場  etc,.etc
  • 13. © 2016 IBM Corporation13 Ecosystemの登場人物  活用が広がる中で、各分野が専門化し、それらを組み合わせた一つの世界を作っていきま す。 登場人物のおさらい  分散データ(HDFS)  ストレージエンジン(HBase)  全文検索(Solr,Elasticsearch)  Queue,RDB(Kafka,RabbitMQ,PostgreSQL,MySQL)  リソース管理(YARN)  分散処理(MapReduce)  SQLエンジン(Hive)  機会学習(Mahout)  Graph処理(Giraph,Hama)  ETL(Flume,Sqoop)  Cluster管理(Ambari)
  • 14. © 2016 IBM Corporation14 Hadoop(HDFS/YARN) 基幹データ 顧客データ 購買データ データベース 従来型のデータ ソーシャルデータ オープンデータ 新しいデータ センサーデータ IoT batchMicro batch Streaming SPSS Cognos データ活用基盤の技術要素の俯瞰 Dataソース ETL系 処理系 操作系 表示系 連携系 管理系
  • 15. © 2016 IBM Corporation15 多様なデータを表現する為のOSSの利用 RethinkDB RabbitMQ Postgres Elasticsearch Hadoop 高速/高度な分 析 検索I/Fの提供 OLTP I/Fの提供 リアルタイムな更新情報I/Fの提供 AMQPシステム間連携I/Fの提供
  • 16. © 2016 IBM Corporation16 データ活用とEcosystemの問題  Hadoopの登場でデータ活用が広く一般的になってきました。  しかし、データ活用の業界が広がるにつれ、  新たな要件にfitしたミドルウェアが乱立  大規模データに対するレイテンシの要件の高度化  が求められた結果  複雑化したEcosystemで迷子になる  管理運用難易度が上がり  複数のミドルウェアに対応するため、技術習得の難易度も上がる この辺りからHadoopEcosystem全般を管理運用する為のHadoopエンジニ アの必要性が高まります。
  • 17. © 2016 IBM Corporation17 Sparkの登場  そこで登場したのがSparkです。  大規模データに対するレイテンシの要件に対し、InMemoryで分散処理を行う  ミドルウェアの乱立に対し、Spark内にSQL,Streaming,GraphX,MLlibを内包する
  • 18. © 2016 IBM Corporation18 Sparkとは❶ Sparkとは RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク Driver Program Worker Worker Worker ProgramProgramProgram DataDataData
  • 19. © 2016 IBM Corporation19 Sparkとは❷ Sparkとは RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク Driver Program Worker Worker Worker ProgramProgramProgram DataDataData
  • 20. © 2016 IBM Corporation20 Sparkとは❸ Sparkとは RDDとDAGをコアコンセプトとして設計された分散並列処理フレームワーク Driver Program Worker Worker Worker ProgramProgramProgram DataDataData output output output
  • 21. © 2016 IBM Corporation21 NarrowDependency,ShuffleDependency ここでは各Partitionの変換操作(NarrowDependency)とアクション操作(ShuffleDependency)をTransaction.csvを元に reduceByKey時のjobを見ていきます。 WorkerNode WorkerNode WorkerNode Partition0 Partition3 Partition1 Partition2 6,tanaka,532 1,tanaka,100 2,tanaka,300 3,tsuchiya,50 4,kaijima,2000 5,tsuchiya,1320 Partition0 Partition3 (tanaka,100) (tanaka,300) (tanaka,532) Partition1 (tsuchiya,50) (kaijima,2000) Partition2 (tsuchiya,1320) Partition0 (tanaka,932) Partition2 (kaijima,2000) Partition1 (tsuchiya,1370) Narrow Dependency Shuffle Dependency Stage0 Stage1 task0 task1 task2 task3 task4 task5 task6
  • 22. © 2016 IBM Corporation22 さらなるデータ活用の浸透
  • 23. © 2016 IBM Corporation23 Sparkの活用と新たな可能性  Sparkの登場により従来の分析処理(BIの為の集計など)に加え、  機会学習処理をアドホックに行う  今流れているデータに対して分析を行う  分析結果を他システムに直接連携し、別システムのInputとする といった運用が可能になりました。 従来の分析 ストリーミング処理 アドホック処理
  • 24. © 2016 IBM Corporation24 断続的な処理を想定したデータ処理 ~データを”永久”に保持しない~ 全データに対する一括処理を目的とせず、断続的に流れるデータをインメ モリで加工処理しデータ出力をする一連の流れを最も簡単にモデル化した データ処理モデル. 記録データ 処理要求 処理結果 データ インメモリ データ 処理 バッチ、OLTP処理 ストリーム・コンピューティング ※任意の時間・区間データをメモ リ上に保持することができます。 ※全てのデータはHDDに 永続化されていることが前提。 PULL PUSH アクション
  • 25. © 2016 IBM Corporation25 受信データから 特定条件(フィル タリング)データの みを抽出する 区間内の 移動平均値や 一括り処理をする フィルタリング入力タプル 出力タプル 例:条件閾値>100(℃) フィルタリング、タプルの追加・削除、タプルの変換に利用 (1) フィルタリング処理 t(1) t(k) スライディング・ウィンドウ データをある束に区切って処理する場合に利用 区間内の「タプル数」で集約する場合は、 タンブリング・ウィンドウを用います。 (2) スライディング・ウィンドウ処理 参考:オペレータ処理の例
  • 26. © 2016 IBM Corporation26  Sparkとストリーム処理の組み合わせ例 Incident s Calls for Service (911, etc) 311 Code Violation s Permit s Building s Apache Spark MLli b HDFS ヒストリカル・データ Model2 : どのアクション を実行すべき か? Model1 : これはフォル ス・アラーム か? リアルタイム インプットデータ リアルタイム 予測分析&コンテ キスト解析 リアルタイム・ダッシュボー ド InfoSphere STREAMS
  • 27. © 2016 IBM Corporation27 機械学習への取り組みの変化 学習用 DataSet モ デ ル 化 モデル 本番DataSet 適 用 学習用 DataSet学習用 DataSet学習用 DataSet モデル モデル モデル D D D D 他システム連携 ナレッジ 複合の分 析 従来の分析 • 単一データセット • 小さなデータ 変化 • 複合データセット • 大きなデータ • 即応性 • チームでの分析
  • 28. © 2016 IBM Corporation28 データサイエンティストの需要の高まりと基盤  今まで一部企業のみにあったデータサイエンティストという職種が広く 求められてきます。合わせて、データサイエンティストが必要とする環 境に合わせて JupyterNotebook,ZeppelingNotebookなどのNotebookI/F系 が今注目されています。  Web上でのアドホック分析  データと分析処理のナレッジ化  分析の共有
  • 29. © 2016 IBM Corporation29 ユースケースとアーキテクチャ
  • 30. © 2016 IBM Corporation30 分析基盤の3つの用途  ここまでBigDataと呼ばれる分野の歴史を駆け足で見てきました。ここか らは目的の整理とアーキテクチャを見ていきます。 大きな3つの用途  大規模バッチ処理を目的とした基盤  リアルタイム処理を目的とした基盤  アドホック分析を目的とした基盤
  • 31. © 2016 IBM Corporation31 大規模バッチ処理基盤  この用途の基盤では多くのバッチ処理が継続的に平行で流れます。主に他システムで発生 したデータを集約し、結果をBI/CI、他システムに連携していく事をメインに扱います。 Hadoop(HDFS/YARN) 繰り返し処理
  • 32. © 2016 IBM Corporation32 リアルタイム処理基盤  この用途の基盤では他システムで発生したデータを直接受け取り継続的に小規模なバッチ や異常値検知などで利用されます。こちらも結果を他システムに連携していく事をメイン に扱います Hadoop(HDFS/YARN) MQTT
  • 33. © 2016 IBM Corporation33 アドホック分析基盤  この用途の基盤では他システムで発生したデータを組み合わせ様々な新しい知見を得る為 に利用されます。こちらは結果をアドホックに得る為、いかにインタラクティブに処理を 行わせるかがメインとなってきます。 Hadoop(HDFS/YARN)
  • 34. © 2016 IBM Corporation34 まとめ  この3つの用途は分離可能ではなく、うまく共存していく事が重要です。  OSSの選定の際にも、  主となる用途(バッチがメイン?アドホック分析がメイン?)  補助的な用途、またはチャレンジ を意識してBigData基盤を育てていくと良いでしょう。

Editor's Notes

  1. 1
  2. 会社ではSparkとHadoopのスペシャリストやってます。
  3. 会社ではSparkとHadoopのスペシャリストやってます。
  4. 今日はHadoopの歴史を振り返りつ、どのようにBigData分野が進化してきたか?を見ていく事で どのように活用されているのか どのような導入をされてきたのか 等、活用と導入時の検討ポイントを見ていきます。
  5. SSSP: 単一始点最短経路 Concurrent computation communication barrier synchronization
  6. * 処理結果をElasticsearchに格納し、全文検索を提供したり Postgresに結果を格納し、OLTP系システムのI/Fとして利用したり RethinkDBに結果を更新することでリアルタイムな更新情報の提供を行ったり * RabbitMQにキューイングすることで他システムへの高速なデータ連携が可能になります。
  7. 簡単に専門知識を必要とせず、大量データに対して処理を行うというコンセプトであったHadoopが Hadoopの知識がないとうまく活用できないという問題を抱え始めます。
  8. 25