web-dev-qa-db-ja.com

Hadoopとは何ですか?

私はしばらくの間ServerFaultを楽しんでいて、Hadoopに関するかなりの数のトピックに出会いました。グローバルな観点からそれが何をするのかを見つけるのに少し苦労しました。

だから私の質問は非常に簡単です:Hadoopとは何ですか?それは何をするためのものか ?何に使うの?なぜそれはお尻を蹴るのですか?

編集: Hadoopが使用された使用例のデモ/説明がある場合、それは素晴らしいことです。

28

馬の口からまっすぐ

Hadoopは、市販のハードウェアで構築された大規模なクラスターでアプリケーションを実行するためのフレームワークです。 Hadoopフレームワークは、アプリケーションに信頼性とデータモーションの両方を透過的に提供します。 HadoopはMap/Reduceという名前の計算パラダイムを実装します。アプリケーションは多くの小さな作業フラグメントに分割され、それぞれがクラスター内の任意のノードで実行または再実行されます。さらに、計算ノードにデータを保存する分散ファイルシステム(HDFS)を提供し、クラスター全体で非常に高い総帯域幅を提供します。 Map/Reduceと分散ファイルシステムはどちらも、ノードの障害がフレームワークによって自動的に処理されるように設計されています。

Map/Reduceは、 Google によって人気を博したプログラミングパラダイムで、タスクが小さな部分に分割され、多数のノードに分散されます。処理(マップ)し、結果を最終的な回答(要約)にまとめます。グーグルとヤフーはとりわけ、彼らの検索エンジン技術にこれを使用します。

Hadoopは、この種の処理スキームを実装するための一般的なフレームワークです。それがお尻を蹴る理由については、ほとんどの場合、フォールトトレランスなどのきちんとした機能を提供し、ほとんどすべての種類のハードウェアをまとめて処理できるためです。また、問題がパラダイムに当てはまる場合は、非常によく拡張されます。

ウェブサイト でそれに関するすべてを読むことができます。

いくつかの例として、Paulはいくつかの例を挙げましたが、ここでは、Web中心ではないために実行できるいくつかの例を示します。

  • 3Dフィルムのレンダリング。 「マップ」ステップは、各フレームのジオメトリを別のノードに分配し、ノードはそれをレンダリングし、レンダリングされたフレームは「リデュース」ステップで再結合されます。
  • 分子モデルでシステムのエネルギーを計算します。システム軌道の各フレームは、「マップ」ステップでノードに分配されます。ノードは各フレームのエネルギーを計算し、
    そして、結果は「削減」ステップで要約されます。

基本的に、モデルは、完全に独立した類似の離散計算に分解でき、再結合して最終結果を生成できる問題に対して非常にうまく機能します。

26
Kamil Kisiel

Clouderaには、Map ReduceとHadoopの背後にある原理を説明する素晴らしいビデオがあります。

http://www.cloudera.com/hadoop-training-basic

MapReduceの背後にある中心的なアイデアの1つは、大規模なデータセットの場合、ディスクにバインドすることになるため、Hadoop HDFSでは、並列処理を可能にする多くのノード間で物事を分割する機能を提供します。

システム管理者が関心を持っているHadoopのいくつかの用途は、大規模なログファイルセットの処理に関連することがよくあります。投稿できるリンクは1つだけですが、これらには以下が含まれます。

  1. Rackspaceメールログクエリ
  2. Pigを使用したApacheログ分析-Clouderaブログを参照
  3. Yahoo!スパムと戦う
10
user9939

当初、hadoopはOLAP環境で大量のデータセット用に開発されました。

Hadoopの上にHbaseを導入すると、OLAP処理にも使用できます。Hadoopは、map reduce、hdfs、hbase、pigなどのすべてのサブコンポーネントを持つフレームワークです。

Ifound one (Hadoopが導入された理由) のhadoopの基本に関する記事。

Hadoopでは、テーブル、列ではなくファイル形式のデータストレージ。

1
Deepak