Hadoopテクノロジー(Hbase、flume、oozie、scoop、zookeeper、Hive、hue、Bigtop、pig)と、今ではそのインパラは非常に混乱しています。誰かがそれらがどの程度正確に統合されているかを定義できますか?(Informatica開発者であり、Javaに関する知識はほとんどありません)少なくともデータウェアハウジングの中間です!
1 に答える
これらのプロジェクトのそれぞれが個別に何であるかを理解することを試みるのがおそらく最善です。ほとんどの人はそれらすべてを使う必要はありません。
HDFS:分散ファイルシステム。ファイルを受け取り、それらをブロックに分割し、それらをクラスター全体に分散します。これらのブロックを複製して冗長性を確保し、データをジョブで分析される可能性のある場所に近づけます。ログやテキストなどの非構造化データを保存するために直接使用されることがよくあります。
MapReduce:並列プログラムを実行するためのプログラミングモデルとソフトウェアツールのセット。「YARN」は、Hadoopクラスター全体で他のプログラムを実行できるようにする最近のアイデアであり、「MapReduce」の最新バージョンまたはこの「YARN」クラスターで実行されるプログラムです。ここで説明することがたくさんあり、あなたはおそらく基本的にそれに精通しているので、次に進みます...
HBase:データをHDFSに保持し、GoogleのBigTableのように構造化された非リレーショナルデータベース。データをメモリに保存して、ほぼリアルタイムのルックアップとライブサービスを提供します。Webサイトのユーザーのように、構造化データにHDFSを直接使用する代わりによく使用されます。
Flume:データ(ログなど)が常にHDFSに供給されるため、データ(ログなど)を管理するためのツール。
Oozie:一連のMapReduceジョブからより複雑なジョブを構築するためのツール。
Sqoop:HDFSとリレーショナルデータベース間でデータをインポート/エクスポートするためのツール。これは、実行するジョブをMapReduceジョブにコンパイルすることによって行われます。
動物園の飼育係:「クラスター調整サービス」。これは、クラスター全体のミューテックスを構築したり、変更の通知を受け取ったりできる階層ファイルシステム(比較的小さなデータチャンク用)だと思います。説明するのは難しいかもしれませんが、基本的には一連の操作を提供します。を使用して、クラスター内にかなり複雑な調整メカニズムを構築できます。HBaseは、この目的でZookeeperを使用します。
Hive:SQLのようなクエリをMapReduceジョブに変換するツール。(Pigも同様のアイデアです。これは、MapReduceジョブにコンパイルされるプログラミング言語です)。
Hue:「Hueユーザーエクスペリエンス」-HueなどのHadoopツールを使用するためのブラウザーベースのUIです。これもClouderaによって作成されていますが、サービス自体を使用するのではなく、クラスターを管理することを目的としたClouderaManagerのようなツールとは異なります。
Bigtop:Hadoopエコシステムの多くのコンポーネントと同様のツールをさまざまな方法でパッケージ化します(たとえば、Linux用のDEBとRPM、HadoopをデプロイするためのPuppetコード、さらにはLive CD)。これは、実際には、参照する「統合」の簡素化と標準化を開始することを目的としています。
Pig:Hiveに似たアイデア-MapReduceジョブにコンパイルされるプログラミング言語。
Impala:SQLのようなクエリを使用してHadoopのデータを探索するためのツール。Hiveよりも単純なクエリ言語をサポートし、MapReduce(大規模なバッチジョブを対象としています)を使用しないことと引き換えに、大規模なデータセットをインタラクティブに探索するのに十分な速度でクエリを実行することになっています。