HTTPベースによるMapReduceフレームワーク「HTTPMR」
大規模なデータを分散処理するための技術と言えばMapReduceだ。通常の企業では難しい、数万台のネットワークコンピューティングを駆使したデータ処理を可能にするGoogleの根幹をささせる一技術になっている。
処理の一覧
そんなMapReduceはオープンソースで実装されるものもあるが、本格的に実装するにはハードウェアやインフラの存在が必要になる。だが、これを使えばハードウェアも無用でMapReduceを体感できる。
今回紹介するオープンソース・ソフトウェアはHTTPMR、Google App Engine上で動作するMapReduce実装だ。
HTTPMRはGoogle App Engine上で動作するライブラリで、HTTPベースでMapReduceのように分散処理を行えるようになる。リクエストはランダムに選ばれたコンピュータ上で実行される。各リクエストは数秒でタイムアウトするようになっている。
各処理はごく短く、ごく簡単
またコードによってアクセスできるストレージシステムの存在、各データをユニークな識別子を持たせる機能、各ストレージは以上、以下といった範囲での処理を可能にできるようになっている。
各ジョブはwgetのようなHTTPリクエストによって制御ができる。Google App EngineではGoogleの超大規模なインフラを活用できる。HTTPMRを使えばさらに大規模なデータ分散処理ができるようになるはずだ。
httpmr - Google Code