I.はじめに
- 定義:オープンソースは、分散ストレージや分散コンピューティング・プラットフォームを行います。
- 関数:PBレベルのデータ記憶装置、処理、解析、統計やその他のサービスのために、大規模なデータウェアハウスを構築するために、(例えば、ログ解析など、データマイニング)
- Hadoopの作業モジュール
- 共通:Hadoopの他のモジュールをサポートするフレームワークとツールを提供します。
- 分散ファイルシステム(HDFS:分散ファイルシステム):データを格納するための責任を負います。
- YARN:スケジューリングとリソース管理業務。
- MapReduceは並列処理に基づいてフレームを糸。
二、Hadoopの機能モジュール
1)HDFS(分散ファイルシステム)
-
機能
- スケーラブル、フォールトトレラント、データの大容量記憶装置であってもよいです。
- 指定されたサイズのブロックにデータファイル(一般128Mデフォルト)、および複数のマシン上の複数のコピーに格納され、(オブジェクトが障害達成します)
- データの分割、複数のコピー、フォールトトレラント操作は、ユーザーに対して透過的です。
-
例の紹介
- 8つのノード(一般に、単一のサーバ、別のディスクを指します)。
- パート-0(ファイル名):ファイル名。
- R:2(numReplicas):パート0は、ファイルの2つのコピーがあることを示し;
- {1、3}(ブロック-IDS):二つの部分1と3に分割されるパート0ファイルを表します。
- 番号付きブロックには、複数のデータファイルが読み込まれることを確実にするために、異なるデータの読み出し順は不変である場合、
2)糸(もう一つのリソース交渉)
- 機能:クラスタ全体の資源の管理とスケジューリングを担当。
- 特長:スケーラブル:、フォールトトレラント、統一されたマルチフレームリソース(別のフレームワークを実行することができ、ひいては、異なるサービスのためにすることができます)(のようなコンピューティングは、容量の不足が時にマシンに追加することができます)。
-
例の紹介
- フレームの異なるタイプの複数を同時に行うことができます。
3)のMapReduce
- 機能:分散コンピューティングフレームワーク。
- 特長:スケーラブル、フォールトトレラントおよびオフライン処理大量のデータをください(ないリアルタイム処理)。
-
例の紹介
- 計算 :(例:世界カウント処理、記事内のすべての単語の出現回数をカウント)
- 入力:ファイルの入力操作;
- 分割:ファイル操作部3を分割するステップと、(通常は効率を向上させることができる動作する3台のコンピューティングマシン上に配置されています)
- マッピング:個々の単語に分割する区切り文字としてスペース、物品の各部分。
三、Hadoopのエコシステムとその利点
1)Hadoopの利点
-
高信頼性
- ストレージ:データブロックの複数のコピー;(データブロックの損失を防ぐために)
- コンピューティング:エラーが発生した場合、ジョブは計算を再スケジュールします。
-
拡張性
ストレージ/コンピューティングリソースが十分でない場合には、横方向の線膨張機を追加しました、
クラスタは、数千ノードを含んでいてもよいです。
-
他の
- あなたはコストを削減し、安価なマシン上に格納することができます。
- 成熟した生態系を持ちます。
2)Hadoopのエコシステム
- Hadoopを絞り込む:大規模データの分散ストレージ(HDFS)、分散コンピューティング(マップリデュース)とプラットフォームのリソーススケジューリング(糸)。
- 幅広いHadoopのは:Hadoopが最も重要で最も基本的な部分である、Hadoopのエコシステムは巨大な概念であり、Hadoopのエコシステムを指し、各生態系サブシステムは非常に狭くしても、特定の問題領域を(解決します)、多用途であるが、小さいながらも小さなシステムの複数の統一型システムに従事する。
- ハイブ:SQL文の統計的分析を通じて、(ハイブ実行エンジンは、削減クラスタを計算するために提出するマップSQL文に変換されます)
- コネクタR:R言語、一般的な統計分析。
- 豚:統計解析によりスクリプトは、(一般的にオフライン処理を行い、削減マップするためにスクリプトを変換します)
- Ooize:(良い順を実行した後ではなく、順序のアウト)構成依存性データ、順次実行されるステップ
- ZooKeeperの:管理する複数のフレームワーク、分散協調サービスを行う;(実装上の問題のスイッチフレームワークは、単一のポイントをすれば、他のフレームワークの実装)
- 水路:ログ収集フレーム;(コンフィギュレーション・ファイルを使用して、分散し、複数のサーバ上で実行されているログ収集)
- Sqoop:従来のリレーショナルデータベースとHadoopの、双方向の間のデータ伝送のためのデータ送信工具交換;(データはHDFS、ハイブHBaseのまたは従来のデータベースに直接抽出することができます)
- HBaseの:リアルタイムクエリデータ、スケーラブルなデータのために構成され、スケーラブルで高性能、列指向データベース、またはHadoopのデータベースに。
-
異なるドメイン固有を使用して問題を解決するための一般的なフレームワーク。
-
生態系の特性:すべては行うには、ソースコード、およびコミュニティの活動家によると、オープンソースのフレームワーク、開発者がカスタマイズすることができます。