SlideShare a Scribd company logo
1©  Cloudera,  Inc.  All  rights  reserved.
Hadoopビッグデータ基盤の
歴史を振り返る
2©  Cloudera,  Inc.  All  rights  reserved.
⾃自⼰己紹介
•  テクニカルエバンジェリスト
•  2011年年4⽉月にClouderaの最初の⽇日本⼈人社員として⼊入社
•  お客様がCloudera製品を活⽤用できるように⼀一緒に議論論するのがメインの
仕事
• 実際は技術に関係する業務は全部⾏行行っている
•  email:  sho@cloudera.com
•  twitter:  @shiumachi
6©  Cloudera,  Inc.  All  rights  reserved.
エンタープライズデータハブ(EDH)
バッチ、インタラクティブ、
リアルタイム
1つのプラットフォームで最⾼高の
パフォーマンスとユーザビリティ
を実現
•  きめ細かい分析ワークフロー
•  より多くのデータにアクセス
•  新たな⽅方法でデータを処理理
•  これまでとは異異なるユーザーの
取り込み
セキュリティと運⽤用管理理
プロセス
取込み
Sqoop,  Flume
変換
MapReduce,  Hive,  
Pig,  Spark
ディスカバー
分析データベース
Impala
検索索
Solr
モデル
機械学習
SAS,  R,  Spark,  
Mahout
サーブ
NoSQL  データベー
ス
HBase
ストリーミング
Spark  Streaming
無制限のストレージ  HDFS,  HBase
YARN,  Cloudera  Manager,
Cloudera  Navigator
7©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤?
•  別にビッグじゃなくてもいいです
•  データ基盤、データ分析基盤、⾊色々呼び⽅方がありますが、ここでは「ビッ
グデータ基盤」に統⼀一します
•  このスライドでは以下のように定義します
• あらゆるデータソースからデータを取込み、保存し、加⼯工し、提供し、
活⽤用するための⼀一つ以上のシステムの結合体
8©  Cloudera,  Inc.  All  rights  reserved.
DISCLAIMER
•  このセッションはあくまでHadoop及びEDHを中⼼心としたビッグデータ基盤の歴
史について説明するためのものです
•  DWHとかメインフレームとかは対象外
•  Clouderaのセッションなので基本的にCloudera以外の製品・コンポーネントは
でてきません
•  他製品に興味ある⼈人は適当に読み替えてください
•  あくまでシステムの現場での潮流流なので、学術的な正確さで説明したものでは
ありません
•  データフローに必要な機能や製品のみを取り上げているので⾮非機能要件に関連
する機能(HA、セキュリティ、リソース管理理など)は紹介しません
要約:  マサカリ投げんな
10©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤の歴史
12©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  データ処理理
データ
アプリケーション
13©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
  データ処理理
データ
アプリケーション
14©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
  データ処理理
データ
アプリケーション
15©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
  データ処理理
データ
アプリケーション
16©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
17©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
18©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
19©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(1)
バッチ処理理とビジネスレポート
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
20©  Cloudera,  Inc.  All  rights  reserved.
バッチ処理理とビジネスレポート
•  2009-‐‑‒2012年年頃
•  Hadoop  =  バッチ処理理の時代
•  MapReduceによるJavaアプリケーションをはじめ、HiveやPigなどの上
位クエリ⾔言語を使ってレポート⽣生成してた
•  特⻑⾧長
• 分散処理理による劇的なスループット向上
• ⼤大量量のデータをアクティブな状態で保持
• 上記の特⻑⾧長を従来に⽐比べて⾮非常に安価に実現
•  課題
• HiveをBIにつないでも遅すぎて使い物にならない
21©  Cloudera,  Inc.  All  rights  reserved.
バッチ処理理とビジネスレポート
登場技術紹介
•  MapReduce
•  かつてはHadoopの分散処理理の代名詞だった
•  HDFS
•  分散ファイルシステム。2012年年まではセキュリティ機能も⾼高可⽤用性もなかった
•  Hive
•  SQLを書くと分散処理理に変換する。当時はMapReduceのみ対応
•  同系統の⾔言語としてPigが存在
•  Avro
•  スキーマ情報を保持できるシリアライズフォーマット
•  RCFile
•  Parquet登場までは唯⼀一の列列指向ファイルフォーマット
•  Flume
•  ログ収集ソフト。Source  -‐‑‒  Channel  -‐‑‒  Sink  の3要素が存在し、Source  からデータを
取込み、Sink  から書き出す
22©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(2)
インタラクティブBI
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
23©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(2)
インタラクティブBI
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
24©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(2)
インタラクティブBI
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
25©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(2)
インタラクティブBI
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
26©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(2)
インタラクティブBI
•  2012年年後半以降降  
•  Impalaの登場により、BIツールが直接Hadoopのデータにストレスなく触
れるようになった
•  列列指向フォーマットParquetを使えばより⾼高速に処理理が可能
•  更更新が必要なデータはHBaseを活⽤用すればいい
•  特⻑⾧長
• ⼤大量量データに対するインタラクティブクエリと、BIツール連携の充実
• HBase  +  Parquet  の組み合わせによるスタースキーマの実現
•  課題
• 更更新、挿⼊入が必要で、かつ⼤大量量スキャンが必要な処理理はまだ遅い
(HBaseは⼤大規模スキャンに弱い)
27©  Cloudera,  Inc.  All  rights  reserved.
インタラクティブBI
登場技術紹介
•  Impala
• 2012年年10⽉月にベータリリースされたHadoop⽤用の⾼高速SQLエンジン
• 初めてのHadoop上での⾮非MapReduce分散処理理
•  Parquet
• ClouderaとTwitterで共同開発した列列指向フォーマット
• データの圧縮率率率の⾼高さとスキャンの⾼高速性が特⻑⾧長
•  HBase
• NoSQLとしてのHBaseは2009年年頃から存在するが、ここではあくまで
Impalaのデータソースとしての登場。
28©  Cloudera,  Inc.  All  rights  reserved.
•  ファクトテーブル
• データ量量が膨⼤大
• 通常更更新はない
• よってParquetが最適
•  ディメンジョンテーブル
• ファクトテーブルに⽐比べてかな
り⼩小さい
• 更更新、挿⼊入が起こりうる
• よってHBaseが最適
Parquet  +  HBase  によるスタースキーマ
ファクト
テーブル
(Parquet)
ディメンジョン
テーブル
(HBase)
ディメンジョン
テーブル
(HBase)
ディメンジョン
テーブル
(HBase)
29©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
30©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
31©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
32©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
33©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Spark
クレンジング
整形処理理
34©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(3)
全⽂文検索索、Spark、そしてEDH
•  2013年年以降降  
•  Cloudera  Searchが登場し、Hadoop上でも簡単に全⽂文検索索できるように
•  Sparkにより様々な分散アプリケーションが開発され始める
•  特⻑⾧長
• バッチ処理理やSQLだけでなく、様々な分散処理理アプリケーションを動作
させることができるようになった
35©  Cloudera,  Inc.  All  rights  reserved.
全⽂文検索索、Spark、そしてEDH
登場技術紹介
•  Solr
• OSSの全⽂文検索索エンジン
• Solr⾃自体はHadoopエコシステムとして開発されたわけではない
• ClouderaはSolrをベースにCloudera  Search  というOSSを開発した
•  Lily  HBase  Indexer
• HBaseのデータを元にSolrのインデックスを作成する
•  Spark
•   MapReduceに代わる新しい分散処理理エンジン
• メモリを活⽤用した⾼高速処理理や、柔軟で開発しやすいAPIなどにより近年年
急速に普及してきている
36©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Spark
クレンジング
整形処理理
37©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Kafka  Broker
メッセージ
Flume  Source
Kafka  Source
Spark
クレンジング
整形処理理
38©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Kafka  Broker
メッセージ
Flume  Source
Kafka  Source
Kafka  Producer
Producer  API
外部システム
アプリケーション
データ
Spark
クレンジング
整形処理理
39©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Kafka  Broker
メッセージ
Flume  Source
Kafka  Source
Kafka  Producer
Producer  API
外部システム
アプリケーション
データ
Flume  Sink
HBase  Sink
Spark
クレンジング
整形処理理
40©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HFDSクライアント
put  アップロード
HDFS
Avro
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
  データ処理理
データ
アプリケーション
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
HBase
HBase  テーブル
HBase
get/put  API
外部システム
アプリケーション
データ
Impala
インタラクティブ
BI
Solr
検索索インデックス
Flume  Sink
NRT
インデクシング
Lily  HBase  Indexer
NRT
インデクシング
Solr
検索索
アプリケーション
Kafka  Broker
メッセージ
Flume  Source
Kafka  Source
Kafka  Producer
Producer  API
外部システム
アプリケーション
データ
Flume  Sink
HBase  Sink
Spark  Streaming
ストリーム処理理
Spark
クレンジング
整形処理理
41©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤(4)
Kafkaとストリーミング処理理
•  2015年年  
•  Kafkaの急速な発展、普及によりデータの取込みがより⾼高速・容易易になっ
た
•  Spark  Streaming  の活⽤用によりストリーミング処理理が容易易になった
•  特⻑⾧長
• データが⽣生成されてから活⽤用するまでのend-‐‑‒to-‐‑‒endの時間を⼤大幅に短
縮できるようになった
42©  Cloudera,  Inc.  All  rights  reserved.
Kafkaとストリーミング処理理
登場技術紹介
•  Kafka
• 急速に普及しつつある分散メッセージキュー
• これまでストリームでのデータ取込みはFlumeエージェントを並べるだ
けだったが、Kafkaを使うことでデータの流流⼊入全てを1クラスタとしてま
とめて処理理できるようになった
•  Spark  Streaming
• Sparkサブプロジェクトの⼀一つ
• 流流⼊入するデータを次々に処理理することのできる、ストリーミング処理理を
記述できる
43©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤のSLA
44©  Cloudera,  Inc.  All  rights  reserved.
SLA、考えてますか?
•  「この処理理は◯◯時間内に終わらせなければいけない」
•  「この処理理は××時までに完了了していることが望ましいが、最⼤大1⽇日遅れ
ても⼤大丈夫」
•  ビッグデータ基盤を設計するにあたって、SLAは絶対に考慮すること
•  ダメな例例
• 「なるべく速くお願いします」
•  ⾼高速にするにはそれだけ開発⼯工数がかかるし制約も多い
•  そもそも何を速くするつもりなの?(後述)
• 「遅くてもいいのでできるだけ安くお願いします」
•  遅くするのもいくらでもできますよ?
45©  Cloudera,  Inc.  All  rights  reserved.
SLAについての誤解
•  誤解1:  SLAはジョブの実⾏行行時間だけ考えればいい
• このImpalaクエリ5秒で結果が返ってくる!
•  でもデータの準備までに1⽇日かかる……
•  誤解2:  SLAはHadoopクラスタの中だけ考えていればいい
• Hadoopの中は⼗十分早いのに、Hadoopの⼿手前のレガシーシステムがや
たらと遅い……
•  誤解3:  SLAは完成されたシステムの中だけの世界である
• 「データが利利⽤用可能になるまで」を広い意味で解釈すれば、データ処理理
のための開発⼯工数も含める必要がある
46©  Cloudera,  Inc.  All  rights  reserved.
end-‐‑‒to-‐‑‒endのSLAも重要
「データが⽣生成されてから何分で使え
るようにならなければいけないか?」
Hadoop以外のシステムにも注意
ボトルネックがどこにあるかをきちん
と把握しすること
無駄なチューニングは避ける
正しくSLAを設計する
ImpalaParquetへ変換Flumeでデータ取込み(Parquet変換⽤用データがたまり切切るまで待つ)
Impalaだけ⾒見見ればとても速い
この構成だと⽣生成されたデータが利利⽤用可能になるまで時間がかかる
HBaseに直接データ投⼊入
(速い)
Impala
(すごく遅い)
トータルで⾒見見れば上の⽅方法よりも利利⽤用可能までの時間は短い
ただしImpalaクエリは圧倒的に遅い
Hadoop⾮非Hadoopシステム
Hadoopをいくら⾼高速化しても
end-‐‑‒to-‐‑‒endの速度度は上がらない
47©  Cloudera,  Inc.  All  rights  reserved.
コンポーネントの特性を正しく理理解すること
•  Parquet
• Impalaでクエリを実⾏行行するときは圧倒的に速いがデータが揃うまで作
成不不可で、しかも追記不不可
•  HBase
• 追記、挿⼊入可能で単⼀一データのルックアップは⾮非常に⾼高速
• しかしフルスキャンは⾮非常に遅い
•  Spark
• MapReduceより書きやすく、開発⼯工数を⼤大幅に削減可能
48©  Cloudera,  Inc.  All  rights  reserved.
まとめ
49©  Cloudera,  Inc.  All  rights  reserved.
ビッグデータ基盤のデータフロー
データソース
サーバログ
  ログ集約サーバ
tar.gz
HDFS
tar.gz
HDFS
Avro
HBase
HBase  テーブル
Solr
検索索インデックス
Kafka  Broker
メッセージ
HFDSクライアント
put  アップロード
MapReduce
クレンジング
整形処理理
Hive
RCFileに変換
HDFS
RCFile
Hive
レポート作成
Flume  Source
データ収集
Flume  Sink
HDFS  Sink
HDFS
SequenceFile
Hive
Parquetに変換
HDFS
Parquet
Impala
インタラクティブ
BI
Flume  Sink
HBase  Sink
HBase
get/put  API
外部システム
アプリケーション
データ
Lily  HBase  Indexer
NRT
インデクシング
Spark  Streaming
ストリーム処理理
Solr
検索索
アプリケーション
Flume  Source
Kafka  Source
Kafka  Producer
Producer  API
外部システム
アプリケーション
データ
  データ処理理
データ
Spark
クレンジング
整形処理理
Flume  Sink
NRT
インデクシング
アプリケーション
50©  Cloudera,  Inc.  All  rights  reserved.
まとめ
ビッグデータ基盤の構築には広い視点でのSLA設計が不不可⽋欠
分析クエリやバッチ処理理のSLAだけでなく、end-‐‑‒to-‐‑‒endのSLAも考慮する必要あり
開発⼯工数も「データが利利⽤用可能になるまでの時間」の計算に⼊入れること
ビッグデータ基盤は多数のシステムの接続が前提ということを忘れない
局所的なチューニングは効率率率が悪い
データフローパスに存在するシステム数は可能な限り減らす
銀の弾丸はない、でもいい武器にこしたことはない
安易易に新機能・新製品に⾶飛びつかず、SLAを満たすかどうかを第⼀一に考えよう
既存機能・製品に固執せず、必要なら新しいものを取り⼊入れよう
51©  Cloudera,  Inc.  All  rights  reserved.
エンタープライズセールス
⼤大規模システムに関わる営業ができ
る⼈人歓迎
セールスエンジニア
技術の価値を伝えることに興味があ
る⼈人歓迎
We  are  hiring!
career-‐‑‒jp@cloudera.com
52©  Cloudera,  Inc.  All  rights  reserved.
Thank	
  you	
  

More Related Content

PDF
HBase活用事例 #hbase_ca
PDF
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
PDF
C5.2 (Cloudera Manager + CDH) アップデート #cwt2014
PPTX
機械学習の定番プラットフォームSparkの紹介
PDF
#cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング
PDF
Apache Hadoop YARNとマルチテナントにおけるリソース管理
PDF
Apache Kuduを使った分析システムの裏側
PDF
Cloud Native Hadoop #cwt2016
HBase活用事例 #hbase_ca
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
C5.2 (Cloudera Manager + CDH) アップデート #cwt2014
機械学習の定番プラットフォームSparkの紹介
#cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Kuduを使った分析システムの裏側
Cloud Native Hadoop #cwt2016

What's hot (20)

PDF
Spark徹底入門 #cwt2015
PDF
Cloudera in the Cloud #CWT2017
PDF
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
PDF
PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015
PDF
「新製品 Kudu 及び RecordServiceの概要」 #cwt2015
PPTX
G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006
PDF
エンタープライズデータハブ活用の落とし穴 2015 08-27
PDF
#cwt2016 Apache Kudu 構成とテーブル設計
PDF
Apache Impalaパフォーマンスチューニング #dbts2018
PPTX
[CWT2017]Infrastructure as Codeを活用したF.O.Xのクラウドビッグデータ環境の変化
PPTX
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
PDF
先行事例から学ぶ IoT / ビッグデータの始め方
PDF
CDHの歴史とCDH5新機能概要 #at_tokuben
PDF
HBase Across the World #LINE_DM
PPTX
基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015
PPTX
認証/認可が実現する安全で高速分析可能な分析処理基盤
PPTX
基調講演: 「データエコシステムへの挑戦」 #cwt2015
PDF
基礎から学ぶ超並列SQLエンジンImpala #cwt2015
PDF
HBase Meetup Tokyo Summer 2015 #hbasejp
PPTX
Hadoopトレーニング番外編 〜間違えられやすいHadoopの7つの仕様〜
Spark徹底入門 #cwt2015
Cloudera in the Cloud #CWT2017
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015
「新製品 Kudu 及び RecordServiceの概要」 #cwt2015
G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006
エンタープライズデータハブ活用の落とし穴 2015 08-27
#cwt2016 Apache Kudu 構成とテーブル設計
Apache Impalaパフォーマンスチューニング #dbts2018
[CWT2017]Infrastructure as Codeを活用したF.O.Xのクラウドビッグデータ環境の変化
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
先行事例から学ぶ IoT / ビッグデータの始め方
CDHの歴史とCDH5新機能概要 #at_tokuben
HBase Across the World #LINE_DM
基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015
認証/認可が実現する安全で高速分析可能な分析処理基盤
基調講演: 「データエコシステムへの挑戦」 #cwt2015
基礎から学ぶ超並列SQLエンジンImpala #cwt2015
HBase Meetup Tokyo Summer 2015 #hbasejp
Hadoopトレーニング番外編 〜間違えられやすいHadoopの7つの仕様〜
Ad

Viewers also liked (20)

PDF
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
PPTX
Kafkaを活用するためのストリーム処理の基本
PDF
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
PPTX
Hadoop Summit San Jose 2014 - Analyzing Historical Data of Applications on Ha...
PDF
TokyoWebMining#18_nukamu
PPTX
HBaseサポート最前線 #hbase_ca
PDF
20150625 cloudera
PDF
Storage by Red Hat #rhcpday 2015
PDF
国際安全保障学会20121209配布用最終
PPT
Tamagawa univ20110426
PDF
Strata + Hadoop World 2014 レポート #cwt2014
PDF
課題解決エンジンを支えるデータ処理システムと利活用事例
PPTX
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
PPTX
オープンデータカフェ@盛岡 Vol.1 「オープンデータとはなにか?」
PDF
オープンデータとアプリがつなぐ次世代の地域情報活用法
PPT
201306 オープンデータ
PDF
難しくない! これから始めようオープンデータ
PDF
オープンデータをつかう図書館、オープンデータをつくる図書館(完全版)@京都図書館大会(2015.8.17)
PDF
横浜でのオープンデータ実践
PDF
20151020 オープンデータビジネス3種類のタイプとその特徴
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
Kafkaを活用するためのストリーム処理の基本
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
Hadoop Summit San Jose 2014 - Analyzing Historical Data of Applications on Ha...
TokyoWebMining#18_nukamu
HBaseサポート最前線 #hbase_ca
20150625 cloudera
Storage by Red Hat #rhcpday 2015
国際安全保障学会20121209配布用最終
Tamagawa univ20110426
Strata + Hadoop World 2014 レポート #cwt2014
課題解決エンジンを支えるデータ処理システムと利活用事例
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
オープンデータカフェ@盛岡 Vol.1 「オープンデータとはなにか?」
オープンデータとアプリがつなぐ次世代の地域情報活用法
201306 オープンデータ
難しくない! これから始めようオープンデータ
オープンデータをつかう図書館、オープンデータをつくる図書館(完全版)@京都図書館大会(2015.8.17)
横浜でのオープンデータ実践
20151020 オープンデータビジネス3種類のタイプとその特徴
Ad

Similar to Hadoopビッグデータ基盤の歴史を振り返る #cwt2015 (20)

PDF
Hadoopデータプラットフォーム #cwt2013
PDF
Beginner must-see! A future that can be opened by learning Hadoop
PPTX
Cloudera大阪セミナー 20130219
PPTX
ATN No.1 MapReduceだけでない!? Hadoopとその仲間たち
PDF
ビッグデータ活用とサーバー基盤
PDF
CDH4セミナー資料
PDF
Impala概要 道玄坂LT祭り 20150312 #dogenzakalt
PDF
CDH5最新情報 #cwt2013
PDF
CDH4.1オーバービュー
PPTX
Cloudera Seminar 2013/04/23
PDF
BIG DATA サービス と ツール
PDF
TokyoWebminig カジュアルなHadoop
PPTX
The truth about SQL and Data Warehousing on Hadoop
PPTX
BigData Architecture for Azure
PDF
Evolution of Impala #hcj2014
PPTX
ITインフラsummit 2017発表資料
PDF
Apache Hadoopを利用したビッグデータ分析基盤
PPTX
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
PDF
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
PPTX
WebDB Forum 2012 基調講演資料
Hadoopデータプラットフォーム #cwt2013
Beginner must-see! A future that can be opened by learning Hadoop
Cloudera大阪セミナー 20130219
ATN No.1 MapReduceだけでない!? Hadoopとその仲間たち
ビッグデータ活用とサーバー基盤
CDH4セミナー資料
Impala概要 道玄坂LT祭り 20150312 #dogenzakalt
CDH5最新情報 #cwt2013
CDH4.1オーバービュー
Cloudera Seminar 2013/04/23
BIG DATA サービス と ツール
TokyoWebminig カジュアルなHadoop
The truth about SQL and Data Warehousing on Hadoop
BigData Architecture for Azure
Evolution of Impala #hcj2014
ITインフラsummit 2017発表資料
Apache Hadoopを利用したビッグデータ分析基盤
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
WebDB Forum 2012 基調講演資料

More from Cloudera Japan (13)

PPTX
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
PPTX
HDFS Supportaiblity Improvements
PDF
分散DB Apache Kuduのアーキテクチャ DBの性能と一貫性を両立させる仕組み 「HybridTime」とは
PDF
Cloudera のサポートエンジニアリング #supennight
PDF
Train, predict, serve: How to go into production your machine learning model
PDF
How to go into production your machine learning models? #CWT2017
PDF
Apache Kudu - Updatable Analytical Storage #rakutentech
PPTX
Hue 4.0 / Hue Meetup Tokyo #huejp
PDF
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
PDF
大規模データに対するデータサイエンスの進め方 #CWT2016
PDF
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
PDF
クラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakalt
PDF
MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
HDFS Supportaiblity Improvements
分散DB Apache Kuduのアーキテクチャ DBの性能と一貫性を両立させる仕組み 「HybridTime」とは
Cloudera のサポートエンジニアリング #supennight
Train, predict, serve: How to go into production your machine learning model
How to go into production your machine learning models? #CWT2017
Apache Kudu - Updatable Analytical Storage #rakutentech
Hue 4.0 / Hue Meetup Tokyo #huejp
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
大規模データに対するデータサイエンスの進め方 #CWT2016
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
クラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakalt
MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015

Hadoopビッグデータ基盤の歴史を振り返る #cwt2015

  • 1. 1©  Cloudera,  Inc.  All  rights  reserved. Hadoopビッグデータ基盤の 歴史を振り返る
  • 2. 2©  Cloudera,  Inc.  All  rights  reserved. ⾃自⼰己紹介 •  テクニカルエバンジェリスト •  2011年年4⽉月にClouderaの最初の⽇日本⼈人社員として⼊入社 •  お客様がCloudera製品を活⽤用できるように⼀一緒に議論論するのがメインの 仕事 • 実際は技術に関係する業務は全部⾏行行っている •  email:  sho@cloudera.com •  twitter:  @shiumachi
  • 3. 6©  Cloudera,  Inc.  All  rights  reserved. エンタープライズデータハブ(EDH) バッチ、インタラクティブ、 リアルタイム 1つのプラットフォームで最⾼高の パフォーマンスとユーザビリティ を実現 •  きめ細かい分析ワークフロー •  より多くのデータにアクセス •  新たな⽅方法でデータを処理理 •  これまでとは異異なるユーザーの 取り込み セキュリティと運⽤用管理理 プロセス 取込み Sqoop,  Flume 変換 MapReduce,  Hive,   Pig,  Spark ディスカバー 分析データベース Impala 検索索 Solr モデル 機械学習 SAS,  R,  Spark,   Mahout サーブ NoSQL  データベー ス HBase ストリーミング Spark  Streaming 無制限のストレージ  HDFS,  HBase YARN,  Cloudera  Manager, Cloudera  Navigator
  • 4. 7©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤? •  別にビッグじゃなくてもいいです •  データ基盤、データ分析基盤、⾊色々呼び⽅方がありますが、ここでは「ビッ グデータ基盤」に統⼀一します •  このスライドでは以下のように定義します • あらゆるデータソースからデータを取込み、保存し、加⼯工し、提供し、 活⽤用するための⼀一つ以上のシステムの結合体
  • 5. 8©  Cloudera,  Inc.  All  rights  reserved. DISCLAIMER •  このセッションはあくまでHadoop及びEDHを中⼼心としたビッグデータ基盤の歴 史について説明するためのものです •  DWHとかメインフレームとかは対象外 •  Clouderaのセッションなので基本的にCloudera以外の製品・コンポーネントは でてきません •  他製品に興味ある⼈人は適当に読み替えてください •  あくまでシステムの現場での潮流流なので、学術的な正確さで説明したものでは ありません •  データフローに必要な機能や製品のみを取り上げているので⾮非機能要件に関連 する機能(HA、セキュリティ、リソース管理理など)は紹介しません 要約:  マサカリ投げんな
  • 6. 10©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤の歴史
  • 7. 12©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  データ処理理 データ アプリケーション
  • 8. 13©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz  データ処理理 データ アプリケーション
  • 9. 14©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード  データ処理理 データ アプリケーション
  • 10. 15©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理  データ処理理 データ アプリケーション
  • 11. 16©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション
  • 12. 17©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成
  • 13. 18©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集
  • 14. 19©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(1) バッチ処理理とビジネスレポート データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile
  • 15. 20©  Cloudera,  Inc.  All  rights  reserved. バッチ処理理とビジネスレポート •  2009-‐‑‒2012年年頃 •  Hadoop  =  バッチ処理理の時代 •  MapReduceによるJavaアプリケーションをはじめ、HiveやPigなどの上 位クエリ⾔言語を使ってレポート⽣生成してた •  特⻑⾧長 • 分散処理理による劇的なスループット向上 • ⼤大量量のデータをアクティブな状態で保持 • 上記の特⻑⾧長を従来に⽐比べて⾮非常に安価に実現 •  課題 • HiveをBIにつないでも遅すぎて使い物にならない
  • 16. 21©  Cloudera,  Inc.  All  rights  reserved. バッチ処理理とビジネスレポート 登場技術紹介 •  MapReduce •  かつてはHadoopの分散処理理の代名詞だった •  HDFS •  分散ファイルシステム。2012年年まではセキュリティ機能も⾼高可⽤用性もなかった •  Hive •  SQLを書くと分散処理理に変換する。当時はMapReduceのみ対応 •  同系統の⾔言語としてPigが存在 •  Avro •  スキーマ情報を保持できるシリアライズフォーマット •  RCFile •  Parquet登場までは唯⼀一の列列指向ファイルフォーマット •  Flume •  ログ収集ソフト。Source  -‐‑‒  Channel  -‐‑‒  Sink  の3要素が存在し、Source  からデータを 取込み、Sink  から書き出す
  • 17. 22©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(2) インタラクティブBI データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile
  • 18. 23©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(2) インタラクティブBI データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet
  • 19. 24©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(2) インタラクティブBI データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ
  • 20. 25©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(2) インタラクティブBI データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI
  • 21. 26©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(2) インタラクティブBI •  2012年年後半以降降   •  Impalaの登場により、BIツールが直接Hadoopのデータにストレスなく触 れるようになった •  列列指向フォーマットParquetを使えばより⾼高速に処理理が可能 •  更更新が必要なデータはHBaseを活⽤用すればいい •  特⻑⾧長 • ⼤大量量データに対するインタラクティブクエリと、BIツール連携の充実 • HBase  +  Parquet  の組み合わせによるスタースキーマの実現 •  課題 • 更更新、挿⼊入が必要で、かつ⼤大量量スキャンが必要な処理理はまだ遅い (HBaseは⼤大規模スキャンに弱い)
  • 22. 27©  Cloudera,  Inc.  All  rights  reserved. インタラクティブBI 登場技術紹介 •  Impala • 2012年年10⽉月にベータリリースされたHadoop⽤用の⾼高速SQLエンジン • 初めてのHadoop上での⾮非MapReduce分散処理理 •  Parquet • ClouderaとTwitterで共同開発した列列指向フォーマット • データの圧縮率率率の⾼高さとスキャンの⾼高速性が特⻑⾧長 •  HBase • NoSQLとしてのHBaseは2009年年頃から存在するが、ここではあくまで Impalaのデータソースとしての登場。
  • 23. 28©  Cloudera,  Inc.  All  rights  reserved. •  ファクトテーブル • データ量量が膨⼤大 • 通常更更新はない • よってParquetが最適 •  ディメンジョンテーブル • ファクトテーブルに⽐比べてかな り⼩小さい • 更更新、挿⼊入が起こりうる • よってHBaseが最適 Parquet  +  HBase  によるスタースキーマ ファクト テーブル (Parquet) ディメンジョン テーブル (HBase) ディメンジョン テーブル (HBase) ディメンジョン テーブル (HBase)
  • 24. 29©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI
  • 25. 30©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング
  • 26. 31©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング
  • 27. 32©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション
  • 28. 33©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Spark クレンジング 整形処理理
  • 29. 34©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(3) 全⽂文検索索、Spark、そしてEDH •  2013年年以降降   •  Cloudera  Searchが登場し、Hadoop上でも簡単に全⽂文検索索できるように •  Sparkにより様々な分散アプリケーションが開発され始める •  特⻑⾧長 • バッチ処理理やSQLだけでなく、様々な分散処理理アプリケーションを動作 させることができるようになった
  • 30. 35©  Cloudera,  Inc.  All  rights  reserved. 全⽂文検索索、Spark、そしてEDH 登場技術紹介 •  Solr • OSSの全⽂文検索索エンジン • Solr⾃自体はHadoopエコシステムとして開発されたわけではない • ClouderaはSolrをベースにCloudera  Search  というOSSを開発した •  Lily  HBase  Indexer • HBaseのデータを元にSolrのインデックスを作成する •  Spark •   MapReduceに代わる新しい分散処理理エンジン • メモリを活⽤用した⾼高速処理理や、柔軟で開発しやすいAPIなどにより近年年 急速に普及してきている
  • 31. 36©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Spark クレンジング 整形処理理
  • 32. 37©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Kafka  Broker メッセージ Flume  Source Kafka  Source Spark クレンジング 整形処理理
  • 33. 38©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Kafka  Broker メッセージ Flume  Source Kafka  Source Kafka  Producer Producer  API 外部システム アプリケーション データ Spark クレンジング 整形処理理
  • 34. 39©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Kafka  Broker メッセージ Flume  Source Kafka  Source Kafka  Producer Producer  API 外部システム アプリケーション データ Flume  Sink HBase  Sink Spark クレンジング 整形処理理
  • 35. 40©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HFDSクライアント put  アップロード HDFS Avro MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile  データ処理理 データ アプリケーション Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet HBase HBase  テーブル HBase get/put  API 外部システム アプリケーション データ Impala インタラクティブ BI Solr 検索索インデックス Flume  Sink NRT インデクシング Lily  HBase  Indexer NRT インデクシング Solr 検索索 アプリケーション Kafka  Broker メッセージ Flume  Source Kafka  Source Kafka  Producer Producer  API 外部システム アプリケーション データ Flume  Sink HBase  Sink Spark  Streaming ストリーム処理理 Spark クレンジング 整形処理理
  • 36. 41©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤(4) Kafkaとストリーミング処理理 •  2015年年   •  Kafkaの急速な発展、普及によりデータの取込みがより⾼高速・容易易になっ た •  Spark  Streaming  の活⽤用によりストリーミング処理理が容易易になった •  特⻑⾧長 • データが⽣生成されてから活⽤用するまでのend-‐‑‒to-‐‑‒endの時間を⼤大幅に短 縮できるようになった
  • 37. 42©  Cloudera,  Inc.  All  rights  reserved. Kafkaとストリーミング処理理 登場技術紹介 •  Kafka • 急速に普及しつつある分散メッセージキュー • これまでストリームでのデータ取込みはFlumeエージェントを並べるだ けだったが、Kafkaを使うことでデータの流流⼊入全てを1クラスタとしてま とめて処理理できるようになった •  Spark  Streaming • Sparkサブプロジェクトの⼀一つ • 流流⼊入するデータを次々に処理理することのできる、ストリーミング処理理を 記述できる
  • 38. 43©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤のSLA
  • 39. 44©  Cloudera,  Inc.  All  rights  reserved. SLA、考えてますか? •  「この処理理は◯◯時間内に終わらせなければいけない」 •  「この処理理は××時までに完了了していることが望ましいが、最⼤大1⽇日遅れ ても⼤大丈夫」 •  ビッグデータ基盤を設計するにあたって、SLAは絶対に考慮すること •  ダメな例例 • 「なるべく速くお願いします」 •  ⾼高速にするにはそれだけ開発⼯工数がかかるし制約も多い •  そもそも何を速くするつもりなの?(後述) • 「遅くてもいいのでできるだけ安くお願いします」 •  遅くするのもいくらでもできますよ?
  • 40. 45©  Cloudera,  Inc.  All  rights  reserved. SLAについての誤解 •  誤解1:  SLAはジョブの実⾏行行時間だけ考えればいい • このImpalaクエリ5秒で結果が返ってくる! •  でもデータの準備までに1⽇日かかる…… •  誤解2:  SLAはHadoopクラスタの中だけ考えていればいい • Hadoopの中は⼗十分早いのに、Hadoopの⼿手前のレガシーシステムがや たらと遅い…… •  誤解3:  SLAは完成されたシステムの中だけの世界である • 「データが利利⽤用可能になるまで」を広い意味で解釈すれば、データ処理理 のための開発⼯工数も含める必要がある
  • 41. 46©  Cloudera,  Inc.  All  rights  reserved. end-‐‑‒to-‐‑‒endのSLAも重要 「データが⽣生成されてから何分で使え るようにならなければいけないか?」 Hadoop以外のシステムにも注意 ボトルネックがどこにあるかをきちん と把握しすること 無駄なチューニングは避ける 正しくSLAを設計する ImpalaParquetへ変換Flumeでデータ取込み(Parquet変換⽤用データがたまり切切るまで待つ) Impalaだけ⾒見見ればとても速い この構成だと⽣生成されたデータが利利⽤用可能になるまで時間がかかる HBaseに直接データ投⼊入 (速い) Impala (すごく遅い) トータルで⾒見見れば上の⽅方法よりも利利⽤用可能までの時間は短い ただしImpalaクエリは圧倒的に遅い Hadoop⾮非Hadoopシステム Hadoopをいくら⾼高速化しても end-‐‑‒to-‐‑‒endの速度度は上がらない
  • 42. 47©  Cloudera,  Inc.  All  rights  reserved. コンポーネントの特性を正しく理理解すること •  Parquet • Impalaでクエリを実⾏行行するときは圧倒的に速いがデータが揃うまで作 成不不可で、しかも追記不不可 •  HBase • 追記、挿⼊入可能で単⼀一データのルックアップは⾮非常に⾼高速 • しかしフルスキャンは⾮非常に遅い •  Spark • MapReduceより書きやすく、開発⼯工数を⼤大幅に削減可能
  • 43. 48©  Cloudera,  Inc.  All  rights  reserved. まとめ
  • 44. 49©  Cloudera,  Inc.  All  rights  reserved. ビッグデータ基盤のデータフロー データソース サーバログ  ログ集約サーバ tar.gz HDFS tar.gz HDFS Avro HBase HBase  テーブル Solr 検索索インデックス Kafka  Broker メッセージ HFDSクライアント put  アップロード MapReduce クレンジング 整形処理理 Hive RCFileに変換 HDFS RCFile Hive レポート作成 Flume  Source データ収集 Flume  Sink HDFS  Sink HDFS SequenceFile Hive Parquetに変換 HDFS Parquet Impala インタラクティブ BI Flume  Sink HBase  Sink HBase get/put  API 外部システム アプリケーション データ Lily  HBase  Indexer NRT インデクシング Spark  Streaming ストリーム処理理 Solr 検索索 アプリケーション Flume  Source Kafka  Source Kafka  Producer Producer  API 外部システム アプリケーション データ  データ処理理 データ Spark クレンジング 整形処理理 Flume  Sink NRT インデクシング アプリケーション
  • 45. 50©  Cloudera,  Inc.  All  rights  reserved. まとめ ビッグデータ基盤の構築には広い視点でのSLA設計が不不可⽋欠 分析クエリやバッチ処理理のSLAだけでなく、end-‐‑‒to-‐‑‒endのSLAも考慮する必要あり 開発⼯工数も「データが利利⽤用可能になるまでの時間」の計算に⼊入れること ビッグデータ基盤は多数のシステムの接続が前提ということを忘れない 局所的なチューニングは効率率率が悪い データフローパスに存在するシステム数は可能な限り減らす 銀の弾丸はない、でもいい武器にこしたことはない 安易易に新機能・新製品に⾶飛びつかず、SLAを満たすかどうかを第⼀一に考えよう 既存機能・製品に固執せず、必要なら新しいものを取り⼊入れよう
  • 46. 51©  Cloudera,  Inc.  All  rights  reserved. エンタープライズセールス ⼤大規模システムに関わる営業ができ る⼈人歓迎 セールスエンジニア 技術の価値を伝えることに興味があ る⼈人歓迎 We  are  hiring! career-‐‑‒jp@cloudera.com
  • 47. 52©  Cloudera,  Inc.  All  rights  reserved. Thank  you