データを処理するアプリケーションを実行させることが、少しの手間でできるソフトウェアプラットフォームです。(中略)Hadoopは、MapReduceを実装し、Hadoop Distributedファイルシステム(HDFS)(下図参照(※1))を使用しています。MapReduceは、アプリケーションを沢山の小さな作業ブロックに分割します。HDFSは、信頼性のために複数のデータブロックのレプリカを作成し、クラスタのコンピュータノードにそれらを配置します。 MapReduceは、それらのデータを処理します。・・・
(※1)HadoopWebサイトにある図を参照のこと
HadoopはJavaで書かれており、プロジェクトをリードするDoug Cutting氏は、2006年1月にプロジェクト専属としてヤフーに雇われ、Hadoop自体も、近年ヤフーによって広く支援を受けている。ワシント ン大学では、Hadoopを利用した分散コンピューティングの科目が必須科目となっている。そのコースの資料が、Hadoopに関心を持つ技術者によっ てGoogle Codeに投稿されている。
最近、YahooのJeremy Zawodny氏が、Hadoopの状況について以下のように述べた。
ここ数年の間、 全ての企業において、大規模なWebシステムを構築することが求められており、それらは根本的な課題に直面しています。その基礎となるインフラストラク チャにおいては、購入価格、マシンパワー、インストール、沢山のサーバー管理といった課題が常にあります。たとえ、その辺にあるようなハードウェアを使う としても、それらをフル稼働させるために、分散-統合の処理をするためのソフトウェアの開発が必要となります。(中略)必要なソフトウェアインフラストラ クチャを構築することで、自分たちの技術を作り、競争上の優位性として捉え、先に進むことができます。しかし、私たちは、それとは若干異なるアプローチの 話をしています。成長している多くの企業や団体は、同様の機能が必要であると認識しています。我々は、Doug Cutting氏(オープンソースNutchとLuceneプロジェクトの開発者)の作業を支持しており、(これからの新しい)オープンソース Hadoopプロジェクトでの作業の継続と展開を支援するためにヤフーに加わるよう依頼しました。
Zawodny氏は、過去一年間に渡り、データソートのベンチマークを提供している。このテストでは、それぞれのノードが同じ量の入力データをソートしている。比率を例に挙げると、100ノードが合計10000に対し各々100レコードをソートするので、20のノードは合計2000レコードのソートに 各々100レコードをソートすることになる。最近のベンチマークは、以下の通りである。
Date: | Nodes | Hours | |
April | 2006 | 188 | 47.9 |
May | 2006 | 500 | 42.0 |
December | 2006 | 20 | 1.8 |
December | 2006 | 100 | 3.3 |
December | 2006 | 500 | 5.2 |
December | 2006 | 900 | 7.8 |
July | 2007 | 20 | 1.2 |
July | 2007 | 100 | 1.3 |
July | 2007 | 500 | 2.0 |
July | 2007 | 900 | 2.5 |
Tim O'Reilly氏は、Zawodny氏の投稿を取り上げ、 このサポートがYahooのトップからのものであることを確認した。
Yahoo!は、去年の1月にhadoopを作ったDoug Cutting氏を雇用しました。しかし、OsconでのDoug氏の話によると、それはHadoopのお披露目パーティのようなもので、Yahoo!と しては、Hadoopプロジェクトをいかに重要なものと考えているかを明らかにしたかったのです。実際、私は、David Filoからの電話で、そのサポートがトップからのものであることを知りました。(中略)何故、Yahoo!'sとの関係がそれ程重要であるのか?まず第一に、それがウェブ2.0において、一種の競争上での転換点を示しています。検索分野で2番目に強い大企業が、オープンソースが彼らの前にそびえ立つ競争相手に対抗する大きな競争的武器であることを認識しています。(中略) Hadoopやその他のApacheプロジェクトをサポートすることで、Yahoo!は、自分たちが使うオープンソースソフトウェアプロジェクトに深く関わることができるだけでなく、それは、(Yahoo!の後ろ盾があることで)彼らに新たな「ギークな人の信頼性」を与える手助けとなります。(中略)第二に、おそらく同じくらい重要なことですが、Yahoo!はHadoopに実際に試す機会(※2)を提供しています。
(※2)例えば、Amazon EC2やAmazon S3を利用したHadoopのMapReduceがあります。
ブロガーのJohn Munsch氏は、"Hadoop And The Opposite Of The Not-Invented-Here Syndrome(Hadoop、そして自社開発主義症候群に反するもの)"という言い回しで、Yahooの関係について総括している。
MicrosoftのSriram Krishnan氏は、新規立ち上げの問題を考慮した議論へと話を移している。そして、業界がそういった大規模なソリューションへ移っている状態で、そ のソリューションを発展させている開発者たちは、HadoopとアマゾンEC2がを好んでいると書いている。
Web2.0の価値の大部分は、(多くのユーザが作った)データにあります。それは例えば、del.ico.us、Digg、Facebookです。(中略)大規模なサーバーソフトウェア(例えば、Gmail、Google検索、 Windows Live検索、Yahoo検索など)を動かすことは、一人の経済力でどうにかなるものではありません。典型的な長髪のグリークには、おそらく手をつけることができないでしょう。[それは、大規模なblobストレージ(S3、Googleファイルシステム)であり、大規模な構造化されたストレージ (GoogleのBigtable)や、そういったインフラ上でコードを実行させるための仕組み(MapReduce?、Dryad)といったものです。](中略)私は、Doug Cutting氏のオープンソースと同等のものがあるのかどうかをよく分かっていません。故に、Hadoopがその答えとなるものなのかもしれません。