Contenu connexe
Similaire à CDH5最新情報 #cwt2013 (20)
Plus de Cloudera Japan (20)
CDH5最新情報 #cwt2013
- 2. ⾃自⼰己紹介
• ⽔水丸淳(みずまるきよし)
• email: maru@cloudera.com
• 2013年年2⽉月にCloudera株式会社⼊入社
• プリセールス段階の技術対応を担当
• 2010年年6⽉月からとある研究所のプロジェクトでHadoop対抗となる
分散フレームワークの開発に従事
• Hadoopとの関わりは3年年⽬目
2
- 9. CDH開発の歴史
9
2009 2010 2011 2012 2012/06 2012/09 2013 2013/02 2013/05 2013/09
CDH3
Q2 2011
CDH4
2012/06
• ⾼高可⽤用性ネームノード(NFS)
• 複数のデータ処理理フレームワーク
(MR1とMR2)
CDH4.1
2012/09
• ⾼高可⽤用性ネームノード
(QJM)
CDH4.2
2013/02
• ジョブトラッカーHA
• HBaseスナップショット
CDH4.3
2013/05
• データノードディスク間
バランシング
• HueにPigエディタ搭載
CDH1
Q3 2009
CDH2
Q1 2010
CDH4.4
2013/09
• ロールベースの認可
- 10. CDHバージョンの意味
10
• CDH3以前:CDH3u0, CDH3u1, CDH3u2 …
• 2013/06/20にメンテナンス終了了済み(EOM)
• CDH4以降降:CDH X.Y.Z
• X:メジャーバージョン(⼤大規模な変更更を含む)
• Y:マイナーバージョン(CDH3以前のupdateに相当)
• Z:ポイントバージョン(重⼤大なバグ修正のみ)
• 最新のリリース版はCDH4.4.0
- 12. おねがい
• CDH 5 Release Notesを読みましょう
• ここではすべての変更更点をカバーしません
• β版のドラフトから正式リリースまでに更更新される可能性あり
• Release Notesのセクション構成
• New Features in CDH5
• Incompatible Changes
• Known issues in CDH5
• Release Notesの配布場所
• https://www.cloudera.com/content/cloudera-‐‑‒content/cloudera-‐‑‒
docs/CDH5/latest/CDH5-‐‑‒Release-‐‑‒Notes/CDH5-‐‑‒Release-‐‑‒
Notes.html
12
- 13. CDH 5.0.0 β1 コンポーネント⼀一覧
13
CDH 5.0.0 β1 CDH 4.4.0
Apache Avro avro-‐‑‒1.7.4+3
Apache Hadoop 2.0 hadoop-‐‑‒2.2.0+353 2.0.0+1475
Apache DataFu pig-‐‑‒udf-‐‑‒
datafu-‐‑‒0.0.4+12
0.0.4+22
Apache Flume flume-‐‑‒ng-‐‑‒1.4.0+44 1.4.0+23
Apache HBase hbase-‐‑‒0.95.2+272 0.94.6+132
HBase Solr hbase-‐‑‒solr-‐‑‒1.2+16
Apache Hive hive-‐‑‒0.11.0+483 0.10.0+198
Apache Mahout mahout-‐‑‒0.8+27 0.7+21
Apache Oozie oozie-‐‑‒4.0.0+54 3.3.2+92
Apache Pig pig-‐‑‒0.11.0+46 0.11.0+33
Apache Sentry (incubating) sentry-‐‑‒1.2.0+10 1.1.0
- 14. CDH 5.0.0 β1 コンポーネント⼀一覧・続き
14
CDH 5.0.0 β1 CDH 4.4.0
Apache Solr solr-‐‑‒4.4.0+98
Apache Sqoop sqoop-‐‑‒1.4.4+20 1.4.3+62
Apache Sqoop 2 sqoop2-‐‑‒1.99.2+105 1.99.2+85
Apache Whirr whirr-‐‑‒0.8.2+19 0.8.2+15
Apache ZooKeper zookeeper-‐‑‒3.4.5+25 3.4.5+23
Parquet parquet-‐‑‒1.0.0+7
Cloudera Development Kit cdk-‐‑‒0.7.0+3
Cloudera Hue hue-‐‑‒3.0.0+266 2.5.0+139
Cloudera Impala impala-‐‑‒1.2.0+0 1.1.1
Cloudera Llama llama-‐‑‒1.0.0+0
Cloudera Search search-‐‑‒1.0.0+0 1.0.0
- 15. Java対応
• CDH5はOracle JDK 1.7をサポートします
• CDH5ではJDK 1.7でコンパイルされたアプリケーションをサポート
• CDH5 Beta1の検証バージョンはJDK 1.7.0_̲25
• すべてのコンポーネントにおいて上記バージョンでテストを実施
• CDH5ではJDK 1.6はノンサポートです
• Oracle JDK 1.7に移⾏行行をお願いします
15
- 19. YARNのアーキテクチャ
• クラスタ全体でただひとつのResourceManager(RM)
• ⾼高可⽤用性対応済み
• アプリケーションごとに存在するApplicationManager (AM)
• フレームワーク固有のライブラリ
• ResourceManagerから割り当てられたリソースで動作する
• NodeManagerと協⼒力力してタスクを実⾏行行・モニタリングする
• ノードごとに存在するNodeManager(NM)
• MapReduce 2.0では
• ResourceManagerとApplicationMasterがJobTrackerを置き換える
• NodeManagerがTaskTrackerを置き換える
19
- 20. MapReduce 1.0のサポートも継続
• MRv1かMRv2のどちらかを選択
• MRv1とYARNのプロセスを同時に実⾏行行することはノンサポート
• CDH5のMRv1では若若⼲干のAPI変更更あり
• Hadoop 2.0.0との互換性維持のため
• CDH4で利利⽤用していたMRv1アプリケーションをCDH5 MRv1で利利⽤用す
るためにはリコンパイルが必要
• CDH5上でMRv1からMRv2への移⾏行行はリコンパイル不不要
20
- 21. ⾮非推奨プロパティ
• Hadoop 2.0.0以降降で多くのプロパティが廃⽌止予定に
• HadoopとHDFSに関連するもの
• CDH5のMRv1では引き続き動作します
• これらを置き換える新しい mapreduce* プロパティは
CDH5のMRv1では動作しません
• 廃⽌止予定のプロパティのリスト
• http://archive.cloudera.com/cdh5/cdh/5/hadoop/hadoop-‐‑‒
project-‐‑‒dist/hadoop-‐‑‒common/DeprecatedProperties.html
21
- 23. Apache HBase新機能
• Hadoop 2.0対応
• MTTRの改善
• 互換性の向上とアップグレードのしやすさの改善
• スナップショット対応
• CDH4.2/HBase0.94へバックポート済み
• オンラインでのリージョンマージ
• REST proxyサーバでのセキュリティ、機能改善
23
- 25. Apache HBase障害に関係する機能
• MasterからRS/Clientへのコストなしでの通知
• MasterからClientへマルチキャストコネクションを張る
• あるRSがMasterにより異異常と認識識されたとき、Masterからマル
チキャストメッセージを送出することでClientはソケットタイム
アウトまで待たずにRSの異異常に気付くことができる
• .META., -‐‑‒ROOT-‐‑‒専⽤用のHLog .metaの導⼊入
• サーバクラッシュ時にメタ情報を優先的に回復復
• 試験的な機能
• 分散ログリプレイ
• リージョンとノードのマッピングを参照/編集するツール
25
- 26. Apache HBaseデータ保護に関係する機能
• レプリケーション機能のバグ修正
• レプリケーションの信頼性を向上(HBASE-‐‑‒9373)
• 循環レプリケーションの深刻なバグを修正(HBASE-‐‑‒9158)
• スナップショット対応
• オンラインスナップショット
• ディレクトリ名を.snapshotから.hbase_̲snapshotsへ変更更
• CopyTableの機能強化
• startRow, stopRowオプションの追加
• Import MapReduceジョブの機能強化
• 取り込むデータにフィルターをかけることが可能に
26
- 27. Apache HBase注意すべき変更更点
• CDH5 HBase(Apache HBase 0.95.2/0.96.xに基づく)
とCDH4 HBase(同0.92/0.94に基づく)とで通信に互換
性がありません
• CDH 5 HBaseへのローリングアップグレードはできません
• HBaseを完全に停⽌止させる必要があります
• -‐‑‒ROOT-‐‑‒の廃⽌止
• .META.の場所はZooKeeperに直接格納
• TotalOrderPartitonerの廃⽌止
• ネームスペース導⼊入に伴うディレクトリ構成の変更更
• HFile v1はサポートされなくなりました
27
- 28. Apache HDFS新機能
• mmapを利利⽤用したHDFSローカルリード
• HDFS RW/ROスナップショット
• HDFSへのNFSv3インターフェース
• ファイル単位のHDFSアドバイザリ・キャッシング
• WebHdfsFileSystemでのフェイルオーバーとリトライ
• HdfsFileStatusでディレクトリの⼦子供の数を取得
• INodeIdからINodeへのマッピング
• DistributedFileSystemのCreate API拡張によるブロック配置
を優先的に⾏行行うDataNode指定
28
- 30. Cloudera Hue新機能
• Sqoop App
• データベースとHDFSの間でデータを簡単にエクスポート・インポート
• ウィザードでジョブを作成、ダッシュボードから進捗状況とログの参照
• ZooKeeper App
• Znode階層構造・ZooKeeperクラスタのブラウジング
• Znodeの追加・削除・編集と複数クラスタの管理理
• Pig Editor, HBase Browser, Sqoop App
• Hue Shellは廃⽌止されて上記アプリケーションで置き換え
30
- 31. Cloudera Hue変更更点
• 画⾯面レイアウトの再設計
• ⾼高可⽤用性JobTracker対応の強化
• HiveServer2の採⽤用
• Beeswaxデーモンから置き換え
• CDH5のHueはHiveServer2にしか対応しない
• Djangoバックエンドを1.2から1.4に
• SAML認証によるシングルサインオン
31
- 35. Apache Hive変更更点
• CDH5 β1のHiveバージョンは0.11
• Hive 0.11へアップグレードするためにはメタストアのスキーマアップ
グレードが必要
• 新しいバージョンのHiveを使い始める前にメタストアのアップグレード
を
• 忘れるとメタストア破壊に繋がるので特に注意を
• CDH5に含まれる新しいschematool
• メタストアスキーマをオフラインでアップグレードするための推奨ツール
• JDBCアプリケーションとHiveServer2
• HiveServer2に接続するためには新しいCDH5 JDBCパッケージが必要
• アプリケーションの再コンパイルは必要なし
• CDH5 HueはCDH4のHiveServer2とは互換性なし
35
- 36. Cloudera Impala新機能
• UDF対応
• ImpalaをETL/ELTパイプラインに組み込みことが容易易に
• これまではUDFを使⽤用するときはHiveに頼らざるを得なかった
• スカラUDFに加えてユーザ定義の集約関数も実⾏行行可能
• C++で記述された関数の実⾏行行サポート
• Javaで記述された既存のHive関数の実⾏行行サポート
• CREATE FUNCTION⽂文によるUDFの作成
• DROP FUNCTION⽂文によるUDFの削除
36
- 37. Cloudera Impala新機能
• メタデータの⾃自動伝搬
• INVALIDATE METADATA, REFRESHの必要性が減ります
• Impalaノードから実⾏行行されたCREATE TABLE, ALTER TABLE,
DROP TABLE, INSERT, LOAD DATAに起因するメタデータは他
のImpalaノードに⾃自動的に伝搬していく
• Hiveから加えられたメタデータの変更更については引き続き
INVALIDATE METADATA, REFRESHの操作が必要
• catalogdデーモンにより実現
37
- 38. Cloudera Impala新機能
• YARNリソース管理理フレームワークとの統合
• CDH5でのみ
• LlamaがYARNに対してリソースを要求、必要なリソースが確保
できたときにのみImpalaクエリを実⾏行行
• テーブルの統計情報取得を怠ると正しいリソースの⾒見見積もりが出
せないので注意
• EXPLAIN出⼒力力の詳細化
• EXPLAIN_̲LEVELオプションの新設
• リソース消費の⾒見見込み量量を表⽰示
• テーブル・カラムの統計情報有無を表⽰示
38
- 39. Cloudera Llama
• Long-‐‑‒Lived Application MAster
• YARNがフォーカスしているのはバッチ処理理
• Impalaの低レイテンシクエリではImpalaの起動コストは無視できない
• キューごとにAMを事前に起動しておいて使い回す
• ImpalaとYARNの間でリソースの調停を⾏行行う
• Hadoopクラスタ内のリソースの確保、利利⽤用、解放をImpalaから実⾏行行
• Impalaでリソース管理理を有効にしているときだけ必要
39
- 40. Apache Mahout新機能
• Vector, Matrixの実装とAPIの変更更によるパフォーマンスの改善
• レコメンダーの実装変更更によるパフォーマンスの改善
• バイアス有りのアイテムベースレコメンダをサポート
• SGD⾏行行列列の因⼦子分解
• SVD++のサポート
• LuceneストレージインデックスからSequenceFileへの変換
• k-‐‑‒meansのストリーミング実装によるオンラインクラスタリング
• ⾏行行列列の結合ユーティリティ
40
- 41. Apache MapReduce 2.0(YARN)新機能
• ResourceManagerの⾼高可⽤用性対応
• 複数のResourceManagerを利利⽤用することでSPOFを回避
• 実⾏行行中のジョブは完了了済みのタスクを再実⾏行行することなく回復復可能
• リソース管理理
• cgroupsを利利⽤用したメモリ・CPU使⽤用量量のモニタリングと制限
• 継続的スケジューリング
• ノードのハートビートと切切り離離すことで⼤大規模クラスタでのパフォーマ
ンスを改善
41
- 42. Apache Oozie新機能
• ⾼高可⽤用性対応
• Oozieサーバを複数利利⽤用してサービスを提供
• スケーラビリティも同時に実現
• HCatalogの統合
• コーディネータでHCatalogテーブルのパーティションを依存関係の中
に組み込むことが可能に
• SLAモニタリング
• ジョブを監視してSLAを満⾜足した、満たせなかった、について通知を送
ることが可能に
• JMS通知
• JMSプロバイダに対してジョブの状態やSLAイベントを通知可能
42
- 43. Apache Oozie変更更点
• Oozie共有ライブラリ
• CDH5 Beta 1パッケージで提供されるものに置き換えが必要
• Oozieデータベース
• データベースのアップグレードが必要
• Oozieクライアント
• CDH4.xのクライアントはCDH5.xのOozieサーバと互換性なし
• すべてのOozieクライアントをアップデートしてください
43
- 45. CDH4 コンポーネント⼀一覧
45
CDH4.1.5 CDH4.2.2 CDH4.3.2 CDH4.4.0
DataFu 0.0.4+14 0.0.4+17 0.0.4+20 0.0.4+22
Flume 1.2.0+142 1.3.0+97 1.3.0+161 1.4.0+23
Hadoop 2.0.0+573 2.0.0+968 2.0.0+1369 2.0.0+1475
HBase 0.92.1+176 0.94.2+228 0.94.6+107 0.94.6+132
HCatalog 0.4.0+219 0.5.0+11 0.5.0+13
Hive 0.9.0+161 0.10.0+84 0.10.0+135 0.10.0+198
Mahout 0.7+14 0.7+17 0.7+19 0.7+21
MR1 0.20.2+1281 0.20.2+1361 0.20.2+1369 0.20.2+1475
Oozie 3.2.0+140 3.3.0+83 3.3.2+54 3.3.2+92
Pig 0.10.0+64 0.10.0+511 0.11.0+30 0.11.0+33
- 46. CDH4 コンポーネント⼀一覧・続き
46
CDH4.1.5 CDH4.2.2 CDH4.3.2 CDH4.4.0
Sqoop 1.4.1+60 1.4.2+61 1.4.3+36 1.4.3+62
Sqoop2 1.99.1+34 1.99.1+117 1.99.2+85
Whirr 0.8.0+24 0.8.0+27 0.8.2+13 0.8.2+15
ZooKeeper 3.4.3+35 3.4.5+17 3.4.5+21 3.4.5+23
Sentry 1.1.0 1.1.0
Cloudera Hue 2.1.0+226 2.2.0+198 2.3.0+140 2.5.0+139
Cloudera Impala 1.1.1 1.1.1
Cloudera Search 1.0.0 1.0.0