O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 58 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Quem viu também gostou (8)

Anúncio

Semelhante a G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006 (20)

Mais de Cloudera Japan (18)

Anúncio

Mais recentes (20)

G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006

  1. 1. 1© Cloudera, Inc. All rights reserved. G-Tech 2015 Hadoop/Sparkを中核とした ビッグデータ基盤 エンジニアが知っておくべき最新動向 2015/10/16 Cloudera株式会社 川崎 達夫
  2. 2. 2© Cloudera, Inc. All rights reserved. 自己紹介 • テクニカルディレクター / トレーニングマネージャー 兼 シニアインストラクター • email: kawasaki@cloudera.com • twitter: @kernel023
  3. 3. 3© Cloudera, Inc. All rights reserved. 現代の世界では ますます計測されるように なっている
  4. 4. 4© Cloudera, Inc. All rights reserved. データは どこにでもある
  5. 5. 5© Cloudera, Inc. All rights reserved. データは私達の働き方を変える 測定できるものは測定される ようになる 従業員と顧客はより個別の関 係を期待するようになる一方、 プライバシーの保護を願う 最も革新的な企業は実験と迅 速性を重視する インストゥルメンテーション コンシューマライゼーション エクスペリメンテーション
  6. 6. 6© Cloudera, Inc. All rights reserved. ビッグデータ ビガーデータ
  7. 7. 7© Cloudera, Inc. All rights reserved. データはムーアの法則よりも早く成長する
  8. 8. 8© Cloudera, Inc. All rights reserved. 後がない従来のアーキテクチャー データをコモディティとして扱えない専用システムに莫大な投資 データ ソース データ システム データ アクセス 業務分析 カスタム アプリケーショ ン 既存 データ データ ベース 定型業務 アプリケーション 新規データ 得られる知見は限定的 データに奮闘するパワーユーザー。 多くのユーザーには何のデータも 与えられない。 コンプライアンスとプライバ シー 大量なデータと多数のユーザー、乱立 したツールが複雑さを増長。 セキュリティやガバナンスとビジネス アジリティのバランスを取る必要。 限定的なデータ 新しいデータソースには対処するも、 既存テータの保守は非効率的。 既存システムのデータを分析用に変換 するために膨大な時間を要する。
  9. 9. 9© Cloudera, Inc. All rights reserved. データを扱う エンジニアに 必要なスキルとは?
  10. 10. 10© Cloudera, Inc. All rights reserved. Apache Hadoop スケーラブルなオープンソースの分散システム
  11. 11. 11© Cloudera, Inc. All rights reserved. Apache Hadoop™ • Googleが公開した論文を参考に開発された 大量データのためのオープンソースソフトウェア Doug Cutting Chief Architect @Cloudera
  12. 12. 12© Cloudera, Inc. All rights reserved. Hadoopのアーキテクチャ HDFS MapReduce
  13. 13. 13© Cloudera, Inc. All rights reserved. HDFS:分散ファイルシステム • データファイルはロード時に128MBのブロックに分割されて分散され る • 各ブロックは複数のデータノードに複製される(デフォルトは3カ所) Name Node Block 1 Block 2 Block 3 Block 1 Block 3 Block 2 Block 3 Block 1 Block 3 Block 1Block 2 Block 2 メタデータ: ファイルとブ ロックについ ての情報 非常に大 きなデー タファイ ル Block 4 Block 4 Block 4 Block 4
  14. 14. 14© Cloudera, Inc. All rights reserved. MapReduceの主な利点: • データの局所性: 自動的に計算処理を分けてMapperを適切に開始 • フォールトトレランス: 中間結果を書き出してMapperが再実行できることが、コモディティ ハードウェアで実行できる機能を意味している • 線形なスケーラビリティ:問題に対して一般的に拡張できる解決を記述するために、開発者に 局所性とプログラミングモデルの組み合わせ強要する MapReduce:分散処理 Ma p Ma p Ma p Ma p Ma p Ma p Ma p Ma p Ma p Ma p Ma p Ma p Reduce Reduc e Reduce Reduc e
  15. 15. 15© Cloudera, Inc. All rights reserved. 現在: Hadoopを中心とした巨大なエコシステム Director Provision Automate Elastic API Navigator Secure Policy Lineage API Manager Deploy Configure Report Recover Manage Monitor Diagnose Integrate CDH (Cloudera Distribution for Apache Hadoop) Spark Hue Flume Sentry MLlib Hive Kafka Map Reduce Impala Sqoop Oozie Zookeeper Solr Pig Llama YARN Kudu Crunch Avro Record Service HBase Kite Parquet HDFS Training Partners Services Enterprise Availability GABetaFlex
  16. 16. 16© Cloudera, Inc. All rights reserved. (余談)Hadoop活用の落とし穴 •Hadoopを安定して継続運用するためのヒン ト •「エンタープライズデータハブ活用の落とし穴」 http://www.slideshare.net/Cloudera_jp/2015-0827
  17. 17. 17© Cloudera, Inc. All rights reserved. Hadoop/Sparkの最新動向
  18. 18. 18© Cloudera, Inc. All rights reserved. (再)初期のHadoopのアーキテクチャ HDFS MapReduce
  19. 19. 19© Cloudera, Inc. All rights reserved. バッチから リアルタイムへ
  20. 20. 20© Cloudera, Inc. All rights reserved. Streaming、NRT処理との組み合わせ http://blog.cloudera.com/blog/2015/07/designing-fraud-detection-architecture- that-works-like-your-brain-does/
  21. 21. 21© Cloudera, Inc. All rights reserved. Streaming、NRT処理との組み合わせ
  22. 22. 22© Cloudera, Inc. All rights reserved. Apache Spark
  23. 23. 23© Cloudera, Inc. All rights reserved. Apache Spark Hadoopのための柔軟性のあるインメモリデータ処理 容易な デプロイメント 柔軟、拡張性の あるAPI 高速なバッチと ストリーミング処理 • Scala、Java、Python によるリッチなAPI • 対話的なシェル • 異なる種類のワーク ロードのためのAPI: • バッチ • ストリーミング • 機械学習 • グラフ • インメモリ処理と キャッシュ
  24. 24. 24© Cloudera, Inc. All rights reserved. 容易な開発 高い生産性を持つ言語をサポート • 同一のAPIで複数の言語をネ イティブにサポート • Scala, Java, Python • コードを最小化するために、 クロージャ、繰り返し、そ の他の言語の概念を使用 • MapReduceと比較して2- 5倍コードを削減 Python lines = sc.textFile(...) lines.filter(lambda s: “ERROR” in s).count() Scala val lines = sc.textFile(...) lines.filter(s => s.contains(“ERROR”)).count() Java JavaRDD<String> lines = sc.textFile(...); lines.filter(new Function<String, Boolean>() { Boolean call(String s) { return s.contains(“error”); } }).count();
  25. 25. 25© Cloudera, Inc. All rights reserved. 容易な開発 対話的に使用できる • データサイエンティストの ためのインタラクティブな データ探索 • 「アプリケーション」を 開発する必要がない • 開発者は実際のシステムで アプリケーションのプロト タイピングができる percolateur:spark srowen$ ./bin/spark-shell --master local[*] ... Welcome to ____ __ / __/__ ___ _____/ /__ _ / _ / _ `/ __/ '_/ /___/ .__/_,_/_/ /_/_ version 1.5.0-SNAPSHOT /_/ Using Scala version 2.10.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_51) Type in expressions to have them evaluated. Type :help for more information. ... scala> val words = sc.textFile("file:/usr/share/dict/words") ... words: org.apache.spark.rdd.RDD[String] = MapPartitionsRDD[1] at textFile at <console>:21 scala> words.count ... res0: Long = 235886 scala>
  26. 26. 26© Cloudera, Inc. All rights reserved. 優れたパフォーマンスのためのメモリ管理 トレンド: • 18ヶ月ごとに価格が半分になる • 3年ごとに帯域が倍になる 64-128GB RAM 16 cores 50 GB per second メモリは高性能なビッグデータアプリケーションを可能にする
  27. 27. 27© Cloudera, Inc. All rights reserved. Sparkはメモリの利点を活かす 耐障害性分散データセット: Resilient Distributed Datasets (RDD) • 分散されたフォールトトレランスなキャッシュにデータを保存するメモリ キャッシング層 • データセットがメモリ領域より大きい場合はディスクに戻すことができる • 安定したストレージにあるデータに対する並列変換処理によって生成 • 「リネージ」のコンセプトを通してフォールトトレランスを提供
  28. 28. 28© Cloudera, Inc. All rights reserved. 高速な処理 メモリ、グラフ演算を使用する インメモリキャッシュ • データのパーティションは ディスクの代わりにメモリか ら読み込む グラフ演算 • スケジューリングの最適化 • フォールトトレランス join filter groupBy B: B: C: D: E: F: Ç √ Ω map A: map take = cached partition= RDD
  29. 29. 29© Cloudera, Inc. All rights reserved. ロジスティック回帰のパフォーマンス (データがメモリに乗っている) 0 1000 2000 3000 4000 1 5 10 20 30 実行時間(秒) 繰り返し回数 MapReduce Spark 110秒/繰り返し 最初の繰り返し=80秒 以降の繰り返しは キャッシュにより1秒
  30. 30. 30© Cloudera, Inc. All rights reserved. Hadoopでの将来のデータ処理 特別な目的のエンジンによりSparkを補完する Sparkによる汎用データ処理 高速バッチ処理 機械学習 ストリーム処理 Impalaによる 分析データベース 低レイテンシ・超平行クエリ Solrによるテキスト検索 テキストデータに対するクエリ MapReduceによるディス クでのデータ処理 ディスクIOに強く依存したジョブの大規模ス ケールでの実行 共有: • データスト レージ • メタデータ • リソース管理 • 運用監視 • セキュリティ • ガバナンス
  31. 31. 31© Cloudera, Inc. All rights reserved. Spark Streaming Spark Streamingとは? • SparkのコアAPIを用いてデータの「連続 した」処理を実行 • Sparkのコンセプトをフォールトトレラ ントで変換可能なストリームに拡張 • 「ローリングウィンドウ」操作を追加 • 例: 直近5分間のデータをローリングし ながら平均やカウントを計算 利点 • 両方のコンテキストの知見とコードを再利 用 • ストリーミングとバッチに対し同じプログ ラミングのパラダイムを適用 • 容易な開発 • 自動的なDAGの生成と高レベルなAPI • 優れたスループット • 簡単にスケールするので大量のデータ取込 みに対応可能 • MLlibとOryxのような要素をストリーミン グアプリケーションに組み合わせることが できる 一般的なユースケース • データがHadoop/HDFSに取り込まれた ときの「オンザフライ」のETL • 異常な振る舞いの検知と警告をトリガ • 入ってくるデータのメトリクスの概要を 連続してレポート
  32. 32. 32© Cloudera, Inc. All rights reserved. Spark Streaming のアーキテクチャ データソース 取込み 取込み レイヤ • Flume • Kafka Spark Stream 処理 データ 準備 集約/ スコアリング HDFS Spark 長期間分析/ モデル構築 HBase リアルタイム 結果提供
  33. 33. 33© Cloudera, Inc. All rights reserved. SparkSQL 機械学習アプリケーション • 目標 • Spark/Javaの開発者とデータサイ エンティストがSparkアプリにイン ラインでSQLを記述できる • 設計目的 • Spark開発者のための開発支援 • Sparkジョブはそれほど平行実行さ れない • 強み • SQLをJavaやScalaアプリケーショ ンに容易に組み込み可能になる • 開発フローの一般的な機能のための SQL (例. 集約、フィルタ、サンプ リング)
  34. 34. 34© Cloudera, Inc. All rights reserved. Impalaは未だにインタラクティブなSQLのため のツールの選択肢 0 50 100 150 200 250 300 350 Impala Spark SQL Presto Hive-on-Tez Time(inseconds) Single User vs 10 User Response Time/Impala Times Faster (Lower bars = better)SingleUser,5 10Users,11 SingleUser,25 10Users,120 10Users,302 10Users,202 SingleUser,37 SingleUser,77 5.0 x 10.6x 7.4x 27.4x 15.4x 18.3x
  35. 35. 35© Cloudera, Inc. All rights reserved. Spark エコシステムと Hadoop Spark Streaming MLlib SparkSQL GraphX Data- frames SparkR ストレージ HDFS, HBase リソース管理 YARN Spark Impala MR OthersSearch
  36. 36. 36© Cloudera, Inc. All rights reserved. ClouderaはSparkの変化を導く 2013 2014 2015 2016 Sparkの初期の可 能性を認識 CDH4.4に Sparkを同 梱してサ ポート Spark on YARN 連携を追加 Sparkを標準実行エンジ ンにすることへの方向 性を発表 最初のSpark トレーニング を開始 セキュリティ 連携を追加 Clouderaのエンジニア がオライリーのSpark 書籍を執筆 より良いパフォー マンス、ユーザビ リティ、エンター プライズレディの ための努力を継続 していく
  37. 37. 42© Cloudera, Inc. All rights reserved. Apache Kafka
  38. 38. 43© Cloudera, Inc. All rights reserved. Apache Kafka 2009 2014
  39. 39. 44© Cloudera, Inc. All rights reserved. Kafkaの導入で単純化 2014 2015+?
  40. 40. 45© Cloudera, Inc. All rights reserved. ユーザーインタフェース
  41. 41. 46© Cloudera, Inc. All rights reserved. Hue : Hadoop用の標準GUI
  42. 42. 47© Cloudera, Inc. All rights reserved. Cloudera Manager: 運用管理ツール 管理 クラスタの構築、設定、最適化が簡単 1 監視 全てのアクティビティに対する集権的なビュー 2 診断 簡単に問題を特定し解決する 3 統合 既存のツールを使う 4
  43. 43. 48© Cloudera, Inc. All rights reserved. Security
  44. 44. 49© Cloudera, Inc. All rights reserved. 認証 システム、データ、 関連システムに対する アクセス管理 LDAP Kerberos RPC 監査 すべての処理に 対する改ざん不能な 記録を取得 Cloudera Navigator SIEM Tools 認可 誰がどのリソースや サービスにアクセス できるかを制御 POSIX Permissions Apache Sentry 保護 保存データや 実行データに対する、 暗号化とキー管理 Cloudera Navigator: Encrypt & Key Trustee エンタープライズ・グレードのセキュリティ あらゆる保存データと実行データに対するアクセスと管理を統制 ビッグデータの根幹を支える Cloudera Enterprise ネイティブな 機能 • Cloudera Manager および Navigator が Hadoop や関連する製品のプロテク ションを自動化 • 境界ベースのセキュリティ • ロールベースのアクセスコントロール • センシティブなデータに対して ポリシーベースの管理が唯一可能 • データ系統とディスカバリー
  45. 45. 50© Cloudera, Inc. All rights reserved. 市場リスク Basel III: 市場ストレス、 ボラリティティ、金利変化に 対応できる自己資本規制 Apache Spark Impala 電子記録 WORM: 削除や変更する ことなくすべての レコードを保全 Apache HBase Cloudera Search 取引報告 OATS: すべての注文、見積、 取引に関する 取引記録報告 MapReduce, Spark, HBase, Impala データセキュリティ PCI DSS: クレジットカード 所有者の個人情報や 取引情報を保護 Cloudera Navigator: Encrypt & Key Trustee 完全な規制対応 データに忠実な集中管理とレポーティング エンタープライズハブが、リスク管 理、 不正検知、データの保全、取引に 対するセキュリティコンプライアン ス を可能に • ETL、リンケージ、分析機能、レポーティ ング機能、ストレージの統合 • セキュリティのための特定システムに 必要なコストを相殺 • 必要なデータを集中させ、利用度を向上 • スピードを向上しコンプライアンス報告 の手間を軽減
  46. 46. 51© Cloudera, Inc. All rights reserved. ビッグデータがデータガバナンスを満たす Cloudera Navigator Apache Hadoop用のネイティブ なエンドツーエンドのデータガバ ナンスソリューションにより、 リスクを最小化しコンプライアン スを維持 ユニークな機能: • 監査 • 系統(リネージ) • メタデータのタグ付けと探索 • ライフサイクル管理
  47. 47. 52© Cloudera, Inc. All rights reserved. エンタープライズ・グレードのセキュリティと規制 に対応 Cloudera Enterprise で PCI DSS 要件に対応 PCI 要件 詳細 Apache Sentry Kerberos Cloudera Navigator Cloudera Manager Cloudera CSE カスタマー 脆弱性を管理する プログラムの整備 カード会員データを保護するためにファイアウォールを導入し、最適な設 定を維持すること ✔ システムパスワードと他のセキュリティ・パラメータにベンダー提供のデ フォルトを使用しないこと ✔ カード会員データの保護 保存されたカード会員データを安全に保護すること ✔ 公衆ネットワーク上でカード会員データを送信する場合、暗号化すること ✔ 脆弱性を管理する プログラムの整備 アンチウィルス・ソフトウェアを利用し、定期的に更新すること ✔ 安全性の高いシステムとアプリケーションを開発し、保守すること ✔ 強固なアクセス制御手法の 導入 カード会員データへのアクセスを業務上の必要範囲内に制限すること ✔ コンピュータにアクセスする利用者毎に個別のID を割り当てること ✔ カード会員データへの物理的アクセスを制限すること ✔ 定期的なネットワークの監視 およびテスト ネットワーク資源およびカード会員データに対するすべてのアクセスを追 跡し、監視すること ✔ セキュリティ・システムおよび管理手順を定期的にテストすること ✔ 情報セキュリティ・ポリシー の整備 情報セキュリティに関するポリシーを整備すること ✔
  48. 48. 53© Cloudera, Inc. All rights reserved. 最新のHadoopエコシステム 2015/9開催のStrata + Hadoop Worldより
  49. 49. 54© Cloudera, Inc. All rights reserved. Kudu: Hadoopの新しいストレージオプション Structured Fixed Column Data SQL + Scan Use Cases Unstructured Data Deep Storage Scan Use Cases Structured Fixed Column Data SQL + Scan Use Cases Any Type of Column Schemas Gets / Puts / Micro Scans
  50. 50. 55© Cloudera, Inc. All rights reserved. RecordService:横断的な新セキュリティ層
  51. 51. 56© Cloudera, Inc. All rights reserved. トレーニング
  52. 52. 57© Cloudera, Inc. All rights reserved. 業界をリードするClouderaのトレーニング #1 カリキュラム 開発者向け、管理者向け、アナ リスト向け、Spark、データサイエンティスト 向けコースなどを含む広範囲なトレーニング #1 経験 2009年から数えて45,000人の生徒が受 講し、5,000人のCloudera認定プロフェッショ ナルが誕生 #1 柔軟性 オンサイトあるいはパブリック、世界 主要各都市で実施
  53. 53. 58© Cloudera, Inc. All rights reserved. ClouderaのSpark関連トレーニング • Cloudera Apache Spark 開発者向けトレーニング • Cloudera Spark & Hadoop 開発者向けトレーニング I (New) http://cloudera.co.jp/university
  54. 54. 66© Cloudera, Inc. All rights reserved. まとめ
  55. 55. 67© Cloudera, Inc. All rights reserved. ビッグデータに関わるエンジニアが知っておく べきこと 活用の前に正しい知識を習得する ・Hadoop/Sparkはデータに関わるエンジニアにとって必要なスキル ・トレーニングは短期間で正しい知識を得るために有効 新しいエコシステムへの対応、運用の効率化、セキュリティを考慮する ・Cloudera Managerなどの管理ツールが効果的 継続的な変化への対応と事業継続性を忘れずに ・システムは継続的に変化する ・非汎用的なツールは将来の変化に耐えられず、負担になる ・人に依存しすぎない体制
  56. 56. 68© Cloudera, Inc. All rights reserved. Cloudera World Tokyo 2015 http://clouderaworld.tokyo
  57. 57. 69© Cloudera, Inc. All rights reserved. Clouderaに入って人々を助け、 世界で最も大きな問題の解決に 乗り出しましょう! 日本チームでの募集職種 • 営業 • セールスエンジニア career-jp@cloudera.com We are Hiring!
  58. 58. 70© Cloudera, Inc. All rights reserved. Thank you! kawasaki@cloudera.com

×