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.

データドリブン企業における、hadoop基盤とETL #hcj2016

12,589 views

Published on

Hadoop Conference Japan 2016 で発表した資料です。
http://www.eventbrite.com/e/hadoop-spark-conference-japan-2016-tickets-20809016328

この資料は前半部分です。ドワンゴ志村様による後半部分はこちら: http://www.slideshare.net/smrmkt/hadoopetl-niconico

----
(アブストラクト)
ETL(Extract, Transform, Load) は、外部のソースからデータを抽出し、業務上必要な形に加工し、データ基盤にロードするための一連の技術です。Hadoopの登場により、スケーラブルかつ柔軟なスキーマ構造を持つデータレイヤーであるHDFSに代表される、ETLにおける多くの物理アーキテクチャに変化がもたらされました。しかし一方で、ETLそのものの論理的な必要性は変わっておらず、実際の現場では様々な課題が山積みとなっています。このセッションでは、Flume / Kafka / Sqoop / Hive / Pig / Spark などの HadoopエコシステムによるETLの変革を紹介するとともに、実システムにおけるETLの現実と様々な課題について紹介していきます。

Published in: Technology

データドリブン企業における、hadoop基盤とETL #hcj2016

  1. 1. 1©  Cloudera,  Inc.  All  rights  reserved. データドリブン企業における Hadoop基盤とETL  〜~niconicoでの実践例例〜~ Cloudera株式会社  嶋内  翔 株式会社ドワンゴ  共通基盤開発部  志村  誠
  2. 2. 2©  Cloudera,  Inc.  All  rights  reserved. ⾃自⼰己紹介 •  嶋内  翔(しまうち  しょう) •  テクニカルエバンジェリスト •  2011年年4⽉月にClouderaの最初の⽇日本⼈人社員として⼊入社 •  お客様がCloudera製品を活⽤用できるように⼀一緒に議論論するのがメインの 仕事 •  email:  sho@cloudera.com •  twitter:  @shiumachi
  3. 3. 3©  Cloudera,  Inc.  All  rights  reserved. エンタープライズセールス ⼤大規模システムに関わる営業ができ る⼈人歓迎 セールスエンジニア 技術の価値を伝えることに興味があ る⼈人歓迎 We  are  hiring! http://www.cloudera.co.jp/company/careers.html career-‐‑‒jp@cloudera.com または、Cloudera社員に直接話しかけよう!
  4. 4. 4©  Cloudera,  Inc.  All  rights  reserved. 前半アジェンダ •  ETLとは? •  データウェアハウス  +  Hadoop •  Hadoopとエンタープライズデータハブ(EDH) •  HadoopとETL •  従来のETLとの違い •  事例例:  Kaiser  Permanente  
  5. 5. 5©  Cloudera,  Inc.  All  rights  reserved. •  Extract  -‐‑‒  単⼀一あるいは複数のデー タソースからのデータの抽出 •  Transform  -‐‑‒  ビジネスニーズに応 じてデータを変換 •  Load  -‐‑‒  最終ターゲットにデータを ロード •  データの前処理理 •  クレンジング •  正規化 •  特にHadoopで「バッチ処理理」と 呼ばれている処理理の⼤大多数 • ⽇日次集計バッチなど これらは全てETLです ETLとは?
  6. 6. 6©  Cloudera,  Inc.  All  rights  reserved. データウェアハウス ETLシステム •  抽出 •  変換 •  共通化 プレゼンテーション層 •  共通ディメンショ ン •  ファクトテーブル BIアプリケーション •  業務レポート •  分析アプリケー ション •  ダッシュボード データソース •  RDBMS •  フラットファイル •  XML  /  JSON •  メッセージキュー •  プロプライエタリ なデータフォー マット DWH  バックルーム DWH  フロントルーム
  7. 7. 7©  Cloudera,  Inc.  All  rights  reserved. データウェアハウス  +  Hadoop ETLシステム •  抽出 •  変換 •  共通化 プレゼンテーション層 •  共通ディメンショ ン •  ファクトテーブル BIアプリケーション •  業務レポート •  分析アプリケー ション •  ダッシュボード •  ⼀一般的な⽤用途のプ ログラム データソース •  RDBMS •  フラットファイル •  XML  /  JSON •  メッセージキュー •  プロプライエタリ なデータフォー マット •  複雑構造のデータ •  ⾮非構造化テキスト •  画像、ビデオ •  キーバリューペア DWH  バックルーム DWH  フロントルーム
  8. 8. 8©  Cloudera,  Inc.  All  rights  reserved. Hadoopを基盤とした、新しいデー タプラットフォーム •  安価にスケール可能 •  あらゆるワークロードを単⼀一のプ ラットフォームで実現 •  無制限のデータ Hadoopとエンタープライズデータハブ(EDH) STRUCTURED   Sqoop UNSTRUCTURED   Kafka,  Flume PROCESS,  ANALYZE,  SERVE UNIFIED  SERVICES RESOURCE  MANAGEMENT   YARN SECURITY   Sentry,  RecordService FILESYSTEM HDFS RELATIONAL Kudu NoSQL HBase STORE INTEGRATE BATCH Spark,  Hive,  Pig   MapReduce STREAM Spark SQL Impala SEARCH Solr SDK Kite
  9. 9. 9©  Cloudera,  Inc.  All  rights  reserved. データは準備しなければ使えない Hadoopの特⻑⾧長? 分散処理理・分散ストレージ  -‐‑‒  アーキテクチャに着⽬目 ビッグデータ、⾼高度度な機械学習  -‐‑‒  ユースケースに着⽬目
  10. 10. 10©  Cloudera,  Inc.  All  rights  reserved. データは準備しなければ使えない Hadoopの特⻑⾧長? 分散処理理・分散ストレージ  -‐‑‒  アーキテクチャに着⽬目 ビッグデータ、⾼高度度な機械学習  -‐‑‒  ユースケースに着⽬目 Hadoopを使えばETLバックルームのアーキテクチャは⼤大きく変わる
  11. 11. 12©  Cloudera,  Inc.  All  rights  reserved. HadoopとETL(1):  データ取込みレイヤ STRUCTURED   Sqoop UNSTRUCTURED   Kafka,  Flume PROCESS,  ANALYZE,  SERVE UNIFIED  SERVICES RESOURCE  MANAGEMENT   YARN SECURITY   Sentry,  RecordService FILESYSTEM HDFS RELATIONAL Kudu NoSQL HBase STORE INTEGRATE BATCH Spark,  Hive,  Pig   MapReduce STREAM Spark SQL Impala SEARCH Solr SDK Kite Apache  Sqoop:  SQL  to  Hadoop •  効率率率的な双⽅方向のデータバルクロード •  RDBMS  /  EDW  /  NoSQL  ⽤用の無償のカスタムコネクタを利利 ⽤用可能 Apache  Flume:  Hadoop⽤用ログ収集ソフト •  ⼤大量量のストリーミング/ログデータを移動可能 •  信頼性、スケーラビリティ、管理理性、拡張性が⾼高い •  複数のシステムからデータを収集しやすい Apache  Kafka:  Hadoop⽤用Pub-‐‑‒Subメッセージン グ •  多数の「プロデューサ」から多数の「コンシューマ」へデー タを移動可能 •  幅広い⽤用途に対し最も柔軟にサポート •  Flume  /  HBase  /  Spark  などと統合
  12. 12. 13©  Cloudera,  Inc.  All  rights  reserved. HadoopとETL(2):  HDFSとHiveメタストア STRUCTURED   Sqoop UNSTRUCTURED   Kafka,  Flume PROCESS,  ANALYZE,  SERVE UNIFIED  SERVICES RESOURCE  MANAGEMENT   YARN SECURITY   Sentry,  RecordService FILESYSTEM HDFS RELATIONAL Kudu NoSQL HBase STORE INTEGRATE BATCH Spark,  Hive,  Pig   MapReduce STREAM Spark SQL Impala SEARCH Solr SDK Kite ETLにおけるHDFSとHiveメタストア •  HDFS  -‐‑‒  データフォーマットを選ばない、すなわちリ レーショナルテーブルである必要がない •  Hiveメタストア  /  HCatalog  -‐‑‒  オープンで拡張性が⾼高い、 ベンダ固有のテーブルではない スキーマオンリード •  クエリ実⾏行行側にどうやってデータを活⽤用するのかを決め させることができる •  性能を得るために、ビューのマテリアライズを遅延させ ることができる •  例例)  Parquet  File  の作成
  13. 13. 14©  Cloudera,  Inc.  All  rights  reserved. HadoopとETL(3):  データ変換処理理 STRUCTURED   Sqoop UNSTRUCTURED   Kafka,  Flume PROCESS,  ANALYZE,  SERVE UNIFIED  SERVICES RESOURCE  MANAGEMENT   YARN SECURITY   Sentry,  RecordService FILESYSTEM HDFS RELATIONAL Kudu NoSQL HBase STORE INTEGRATE BATCH Spark,  Hive,  Pig   MapReduce STREAM Spark SQL Impala SEARCH Solr SDK Kite Spark  /  MapReduce •  分散処理理による⾼高速なバッチ処理理 Hive  /  Pig  /  Crunch •  バッチ処理理を記述しやすくするための上位⾔言語
  14. 14. 15©  Cloudera,  Inc.  All  rights  reserved. 従来のバックルーム Hadoopによるバックルーム データソースからの転送が遅い 投⼊入前に物理理的なデータ変換が必要 投⼊入前にクレンジングや正規化が必要 RDBMSテーブルターゲットが必須 メタデータはシステムテーブルに制限 プレゼンテーション層はベンダー固有で RDBMS  SQLにしか対応不不可 バックルームの変化:  システム⾯面
  15. 15. 16©  Cloudera,  Inc.  All  rights  reserved. 従来のバックルーム Hadoopによるバックルーム データソースからの転送が遅い データソースからの転送が速い 投⼊入前に物理理的なデータ変換が必要 物理理的なデータ変換はオプション 投⼊入前にクレンジングや正規化が必要 投⼊入前のクレンジングや正規化は⾮非推奨 RDBMSテーブルターゲットが必須 RDBMSテーブルターゲットはオプション メタデータはシステムテーブルに制限 HCatalogによる拡張性のあるメタデータ プレゼンテーション層はベンダー固有で RDBMS  SQLにしか対応不不可 プレゼンテーション層は制限がない •  データ変換前に適⽤用してもいい •  分析アプリケーション毎に固有 •  複数の特徴を同時に持つことが可能 バックルームの変化:  システム⾯面
  16. 16. 17©  Cloudera,  Inc.  All  rights  reserved. 従来のバックルーム ETLスタッフのよくある発⾔言 •  「データはまだ準備中」 •  「データはクレンジングが必要」 •  「データガバナンス優先」 •  「エンドユーザは信⽤用できない」 Hadoopによるバックルーム 誰もが⾃自由にデータを使える •  ⾼高いスキルの分析ユーザ •  データサイエンティスト •  ⾃自動化プロセス •  機械学習アプリケーション •  実験的なモデル作成 •  SQL以外のクライアント •  全⽂文検索索エンジン バックルームの変化:  チーム⾯面
  17. 17. 18©  Cloudera,  Inc.  All  rights  reserved. HDFS •  ⽣生データ領領域 •  ソースデータの完全な複製 •  情報ドメイン毎に整理理 •  変換処理理は⼀一切切⾏行行わない •  精製済データ領領域 •  ユースケース毎に整理理 •  変換済・準備済データセット •  ユーザ定義領領域 •  IT部⾨門の準備を待ちたくないユーザは多い •  サンドボックスとしてデータの活⽤用を実験したいユーザ も多い •  マスターデータ、メタデータ、外部からの参照データな どは専⽤用領領域に格納 •  システム全体をセキュアに •  認証、ロールベースアクセス制御、暗号化 「次の数年年間で、社内のデータマートをかなりの数減らすことが できるだろう」 「意思決定のための全ての社内アプリケーションにとっての単⼀一 のデータソースとなることが⽬目標」 Kaiser  Permanente  の事例例 ⽣生データ 領領域 ユーザ定義 領領域 精製済 データ領領域 データレジストリ (タグ&カタログ) マスターデータ メタデータ 使⽤用量量データ 内部参照データ 業界参照データ データロード 置換 抽出-‐‑‒ロード コピー データ抽出 データソース DWH/DM データ・セレクション Hive ImpalaPig Java Python 図は以下の参考資料料を元に作成 http://www.cloudera.com/resources/recordedwebinar/the-‐‑‒future-‐‑‒of-‐‑‒ data-‐‑‒warehousing-‐‑‒-‐‑‒etl-‐‑‒will-‐‑‒never-‐‑‒be-‐‑‒the-‐‑‒same.html

×