2月27日の
オープンソースカンファレンス 2016 Tokyo/Springに行ってきた!つづき
Hadoopエコシステムの最新技術動向とNTTデータの取り組み
をメモメモ
Hadoopエコシステムの最新技術動向とNTTデータの取り組み
・自己紹介
・Hadoopの概要
HDFS
MapReduce
YARN
エコシステムの最新動向
データの取り組み
【Hadoopとは】
・オープンソースの大規模分散処理フレームワーク
・Doug Cutting(だぐかってぃんぐ)氏がJavaで開発
扱うデータがビッグであるために従来のIT-キテクチャでは難しかった
→2005年から開発開始
名前:ぬいぐるみから
Hadoopの構成
・集中管理がらの分散システム
Hadoopマスタサーバー
Hadoopスレーブサーバー
Hadoopクライアント
Hadoopを構成するコンポーネント
分散ファイルシステム:HDFS
分散リソース管理機構:YARN
→HDFSとYARNの2つのコンポーネントにより
HDFSとは
分散ファイルシステム
複数のサーバー 1つのファイルシステム
→外から見ると1つの巨大なファイルシステム
HDFSの舞台裏
・分散ファイルシステムの舞台裏では
各ブロックは複製され、スレーブサーバーに格納される
ブロック→こわれたとき、スループット向上などのため
レプリカは異なる3サーバーに配置される
MapReduceとは
MapReduceアルゴリズム
大量の件数のデータがあった時に複数ワーカーで並列に処理できるしくみ
例として:選挙の開票作業
第一段階
1)用紙を適当に3つ分ける
2)3人で並行して候補所ごとに仕分け
第二段階 MAP処理
3)候補者ごとに用紙を集める
第三段階 Reduce処理
4)3人で候補者ごとに枚数を数える
Map処理 Mapタスク
M人でやればM倍のスピード
(相互に影響を受けずに作業できる) MapReduceジョブ
Reduce処理 Reduceタスク
N人でやれば、約N倍のスピード
(相互に影響を受けずに作業できる)
MapReduce:YARN上で動作
MapReduce=YARN上のアプリケーションの1つ
YARNとは
Yet Another Resource Negotiator
分散処理のリソースを制御する仕組み
Hadoopのスケーラビリティをさらに向上させる
柔軟なリソース制御によるスループット向上
MapReduce以外の分散処理を実行できる
ますたーサーバーの負荷軽減
ジョブ・アプリケーション管理のイメージ
Resource Manager
YARNでは
ジョブX→アプリケーション○
仕事(アプリケーション)の管理はメンバに依頼、とりまとめ役になる
任命されたApplication MasterはResourceManagerに進捗状況
タスクごとの進捗状況はApplication Masterがかんり、
ますたーサーバーの管理コストが減り、多数のメンバーを管理できる
→スケーラビリティ向上 10000ノード程度のクラスタも構成可能に
HDFS
大量データをこうスループットに読み込める
サーバーが故障してもデータの安全性担保
サーバー数を増やせば格納できるデータ数はスケール
YARN
リソースベースで処理を割り当て、こうスループット
サーバーが故障してもタスクが再実行されジョブは成功
サーバー数を増やせば、処理性能は基本スケールする
MapReduce
MapタスクRduceタスクのみを指定すればあとはYARNで
【Hadoopエコシステム】
2011後半からYARN→YARNあたりまえ
今、2.6.4と2.7.2
11年目Hadoop
・大容量、多件数データのバッチ処理基盤→仕組み・手法ともに成熟
クラウド
・MapReduceにこだわらない処理→ベースは感性、成長著しい
・新たなステージ→群雄割拠
SQL on Hadoop
Hadoopエコシステムの拡大
Apache Spark
・代表的なHadoopエコシステム
Apache TEZ→Pigとじゃもうごく
Apache Spark
HBASE
Apache Impale分散クエリ
Apache Ambari
Hue
Kafka(メッセージングシステム)
特に
・MapReduceによらないあらたな分散処理
ApacheSpark:コアを中心に成り立つライブラリ
大規模データの分散処理をオンメモリで実現
繰り返し処理に柔軟に対応→機械学習のクラスタリング
SPARK SQL
SPARK Streaming
MLIB
GraphX
Spark最新動向
・フロントエンドとバックエンドの進化
フロントエンド:DataFrame API→処理高速化
バックエンド :Project Tungsten→CPUの利用効率高める
Hive2.0 新たな時代のHive
・Apache Hive2.0 :2016年2月リリース
機能・運用面・性能面の強化
CLIとしてBeeLineが標準に
SQL Standard Authorization
Hive Server2機能強化
LLAP
実行エンジンとしてMapReduceは非推奨に
HiveServer2
Web画面:実行されたクエリの情報・実行計画
→メトリクスも
LLAP
秒未満のクエリ実行時間を実現するための仕組み
コンテナ立ち上げに時間がかかった
→YARNのリソース管理 YARN上にデーモン
コンテナ:TEZ
ベータ版
【NTTデータの取り組み】
・Apache Hadoop PMC就任
・その他公開資料
http://www.slideshare.net/hadoopxnttdata
まとめ
・Hadoopは1台のマシンで扱えない規模の大量データを高速に処理するためのフレームワーク
・Hadoopエコシステムの開発の勢いは今も活発
・NTTデータもHadoopの開発に参画しています
Hadoopだけでなく、エコシステム全般