Hadoop 2.x と 3.x の 22 ポイントの比較、Hadoop 3.x の 2.x に対する改善点

Hadoop 2.x と 3.x の 22 ポイントの比較、Hadoop 3.x の 2.x に対する改善点

質問ガイド
1. Hadoop 3.x はどのようにして障害を許容するのでしょうか?
2. Hadoop 3.x ではストレージのオーバーヘッドがどの程度削減されましたか?
3.Hadoop 3.x MR API は Hadoop 1.x と互換性がありますか?

1. 目的

この記事では、Hadoop 2.x と Hadoop 3.x の比較について説明します。 Hadoop 3 バージョンにはどのような新機能が追加されましたか? Hadoop 3 で互換性のある Hadoop 2 プログラムは何ですか? Hadoop 2 と Hadoop 3 の違いは何ですか?

2. Hadoop 2.x と Hadoop 3.x の比較

このセクションでは、Hadoop 2.x と Hadoop 3.x の 22 の違いについて説明します。 それではそれぞれについて議論しましょう

2.1ライセンス

Hadoop 2.x - Apache 2.0、オープンソース
Hadoop 3.x - Apache 2.0、オープンソース

2.2 サポートされている最小Javaバージョン

Hadoop 2.x - サポートされている Java の最小バージョンは Java 7 です
Hadoop 3.x - サポートされているJavaの最小バージョンはJava 8です

2.3 フォールトトレランス

Hadoop 2.x - レプリケーションによってフォールト トレランスを処理できます (スペースを無駄にします)。
Hadoop 3.x - イレイジャーコーディングを通じてフォールトトレランスを処理できます。

2.4 データバランス

Hadoop 2.x − データバランスには HDFS バランサーを使用します。
Hadoop 3.x − データ バランシングには、HDFS ディスク バランサー CLI を通じて呼び出されるデータ ノード内バランサーを使用します。

2.5 ストレージスキーム

Hadoop 2.x - 3Xレプリカスキームを使用する
Hadoop 3.x − HDFS での消去コーディングをサポートします。

2.6 ストレージオーバーヘッド

Hadoop 2.x - HDFS ではストレージ スペースに 200% のオーバーヘッドがあります。
Hadoop 3.x - ストレージのオーバーヘッドはわずか 50% です。

2.7 ストレージオーバーヘッドの例

Hadoop 2.x - ブロックが 6 個ある場合、レプリケーション スキームにより、スペースを占有するブロックは 18 個になります。
Hadoop 3.x - ブロックが 6 つある場合、スペースは 9 ブロックで、6 ブロックのスペースと 3 ブロックがパリティに使用されます。

2.8YARNタイムラインサービス

Hadoop 2.x - スケーラビリティの問題がある古いタイムライン サービスを使用します。
Hadoop 3.x - Timeline Service v2 が改善され、Timeline Service のスケーラビリティと信頼性が向上します。

2.9 デフォルトのポート範囲

Hadoop 2.x − Hadoop 2.0 では、一部のデフォルト ポートは Linux の一時ポート範囲内にあります。そのため、起動時にはバインドできません。
Hadoop 3.x − ただし、Hadoop 3.0 では、これらのポートは一時範囲から移動されました。

2.10 ツール

Hadoop 2.x − Hive、pig、Tez、Hama、Giraph、その他の Hadoop ツールを使用します。
Hadoop 3.x − Hive、pig、Tez、Hama、Giraph、その他の Hadoop ツールを使用できます。

2.11互換ファイルシステム

Hadoop 2.x − HDFS (デフォルト FS)、FTP ファイル システム: すべてのデータをリモート アクセス可能な FTP サーバーに保存します。 Amazon S3 (Simple Storage Service) ファイル システム、Windows Azure Storage Blob (WASB) ファイル システム。
Hadoop 3.x − 以前のすべてのバージョンと Microsoft Azure Data Lake ファイル システムをサポートします。

2.12データノードリソース

Hadoop 2.x − データノード リソースは MapReduce 専用ではないため、他のアプリケーションに使用できます。
Hadoop 3.x − ここでは、データ ノード リソースを他のアプリケーションにも使用できます。

2.13MR API 互換性

Hadoop 2.x - Hadoop 1.x プログラムと互換性があり、Hadoop 2.X で実行可能な MR API
Hadoop 3.x − ここで、MR APIはHadoop 3.X上で実行するためにHadoop 1.xプログラムと互換性を持たせています。

2.14 Microsoft Windows のサポート

Hadoop 2.x − Windows にデプロイできます。
Hadoop 3.x − Windows もサポートします。

2.15 スロット/コンテナ

Hadoop 2.x − Hadoop 1 はスロットの概念に基づいて動作していましたが、Hadoop 2.X はコンテナの概念に基づいて動作します。コンテナを通じて、共通のタスクを実行できます。
Hadoop 3.x − コンテナの概念でも動作します。

2.16 単一障害点

Hadoop 2.x − SPOF 機能を備えているため、Namenode に障害が発生しても自動的に回復します。
Hadoop 3.x − SPOF 機能を備えているため、Namenode に障害が発生しても自動的に回復し、それを克服するために人間の介入は必要ありません。

2.17 HDFSアライアンス

Hadoop 2.x − Hadoop 1.0 では、すべての名前空間を管理する NameNode は 1 つしかありませんでしたが、Hadoop 2.0 では、複数の名前空間に複数の NameNode が使用されます。
Hadoop 3.x − Hadoop 3.x にも複数の名前空間のための複数の名前空間があります。

2.18 スケーラビリティ

Hadoop 2.x - クラスターごとに最大 10,000 ノードまで拡張できます。
Hadoop 3.x - スケーラビリティが向上しました。 クラスターあたり 10,000 ノード以上に拡張できます。

2.19 データへの高速アクセス

Hadoop 2.x − データ ノード キャッシュにより、データにすばやくアクセスできます。
Hadoop 3.x - ここでも、Datanode キャッシュを通じてデータに素早くアクセスできます。

2.20HDFSスナップショット

Hadoop 2.x − Hadoop 2 ではスナップショットのサポートが追加されました。 災害復旧とユーザーエラーからの保護を提供します。
Hadoop 3.x - Hadoop 2 もスナップショット機能をサポートしています。

2.21 プラットフォーム

Hadoop 2.x - さまざまなデータ分析、イベント処理の実行、ストリーミング、リアルタイム操作のためのプラットフォームとして使用できます。
Hadoop 3.x - ここでも、イベント処理、ストリーミング、リアルタイム操作を YARN 上で実行できます。

2.22 クラスタリソース管理

Hadoop 2.x − クラスター リソース管理には YARN を使用します。 スケーラビリティ、高可用性、マルチテナント性が向上します。
Hadoop 3.x − クラスターの場合、リソース管理にはすべての機能を備えた YARN が使用されます。

hadoop2.x に対する hadoop3.X の改良点

共通の主要な改善点:
シェルスクリプトの書き換え
非推奨の API の削除

HDFS の改善:
消失訂正符号化をサポート
2つ以上のネームノードをサポート
データバランス
複数のサービスポートが変更されました

糸の改良:
YARN タイムライン サービス v.2
オポチュニスティックコンテナと分散スケジューリングのサポート

MapRduece の改善:
MapReduce タスクレベルのネイティブ最適化
デーモンとタスクヒープ管理の改良

その他の新機能:
共有クライアント jar

結論

Hadoop 2.x と Hadoop 3.x の 22 の重要な違いと 3.x の改善点について説明してきたので、Hadoop 2 と Hadoop 3 のどちらが優れているかがわかるようになりました。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Hadoop ネームノード フェデレーション
  • Hadoop 2.Xの新機能、ごみ箱機能の説明
  • Hadoopカウンターとデータクリーニングの適用
  • Ubuntu 16.4 で完全に分散された Hadoop 環境を構築するための実践的なチュートリアル
  • Ubuntu DockerでHadoopクラスタ環境を構築する方法
  • CentOS で Hadoop を構築する詳細な手順
  • Hadoop ワードカウントのサンプルコード
  • Java/Web が MapReduce 用に Hadoop を呼び出すサンプル コード
  • Hadoop におけるネームノードとセカンダリネームノードの動作メカニズムの説明

<<:  LinuxにMySQLをインストールするための詳細なチュートリアル

>>:  Element-ui アップロードファイルのアップロード制限の解決策

推薦する

Nginx リバース プロキシ springboot jar パッケージ プロセス分析

Springboot プロジェクトをサーバーにデプロイする方法としては、war パッケージにパッケー...

ccs3に基づくタイムライン実装方法

Web プロジェクトでは、タイムライン コントロールをよく使用します。この記事では、項目ごとに展開で...

HTML文書におけるol要素の数値制限に関する議論

一般的に言えば、HTML ドキュメント内で極端に大きな <ol> リストに遭遇する可能性...

Tomcatアーキテクチャの原則をアーキテクチャ設計に分析する

目次1. 学習目標1.1. Tomcatアーキテクチャの設計と原則をマスターして社内スキルを向上させ...

Vue で動的パラメータと計算プロパティを使用する方法

1. 動的パラメータ2.6.0 以降では、角括弧で囲まれた JavaScript 式をディレクティブ...

div を下から上にスライドさせる CSS3 の例

1. まず、CSS3 のターゲット セレクターを使用し、a タグを使用して id セレクターを指定し...

CocosCreator MVCアーキテクチャの詳細な説明

概要この記事では、ゲームクライアントでよく使用される MVC アーキテクチャについて紹介します。ゲー...

CSS スタイルにおける中国語フォントのフォントファミリーに対応する英語名の詳細な説明

ソングティ: SimSun太字: SimHeiマイクロソフト YaHei: マイクロソフト YaHe...

HTMLページ間でパラメータを渡すフロントエンド方式の詳細な説明

プロジェクトでよくある状況として、案件リストなどのリストが存在することがあります。リスト内の項目をク...

Linux 環境に MySQL 8.0 をインストールするプロセスの紹介

目次序文1. Linux は yum ソースを変更します (MYSQL のインストールが遅い場合は試...

LinuxカーネルマクロContainer_Ofの詳細な説明

目次1. 構造体はメモリにどのように保存されますか? 2. container_ofマクロ3. 型4...

MySQLの分離レベルとロックメカニズムの詳細な説明

目次簡単な説明: 1. 取引の4つの特徴2. 複数の同時トランザクションによって発生する問題3. ト...

Dockerイメージのインポートとエクスポートの実装

GitLabのDocker使用法gitlab ドッカー起動コマンド docker run -d -p...

初めてDockerイメージを構築、実行、公開、取得するための詳細な手順

1. はじめに以前は、Python アプリケーションの作成を開始したい場合、最初のステップはマシンに...

Windows に MySQL 8.0.16 をインストールする手順とエラーの解決方法

1. はじめに: mysql8以降は、これまでよく使われていたバージョンと比べてかなり変更点が大きい...