BT

Cascading -- Hadoop MapReduce向けデータ処理系API

| 作者: R.J. Lorimer フォローする 0 人のフォロワー , 翻訳者 編集部 フォローする 0 人のフォロワー 投稿日 2008年10月23日. 推定読書時間: 2 分 |

Cascading(リンク)はHadoop(リンク)クラスタ上でデータ処理する新しい処理系API であり、Hadoop MapReduceアルゴリズムを直接実装するのとは対照的に、表現豊かなAPIを使って複雑な処理ワークフローの構築をサポートする。

この処理系APIにより、開発者はMapReduce(リンク)で「考える」必要なしに、複雑な分散プロセスを素早く組み立てられます。また、依存性やその他の利用可能なメタデータに基づいて、効率的にスケジュールできます。

Cascadingの概念の中核にあるのは、パイプとフローである。パイプは、これから行われるデータ処理を定義する一連の処理ステップ(パース、ループ、フィルタなど)であり、フローはパイプ(もしくはパイプ一式)をデータソースやデータシンクと関連づけるものである。換言すれば、フローはデータが通っている状態のパイプである。さらに一歩進めると、カスケードとは複数のフローをつなげ、分岐し、グループ化することである。

このAPIが提供する重要機能は多数ある。

  • 依存性ベースの「トポロジー型スケジューラー」とMapReduceの計画立案 --  Cascadingの2つの重要コンポーネントが、依存性に基づいてフローの呼び出しをスケジュールする能力を発揮します。実行順序は構築順序から独立しているため、フローやカスケードの部分的な同時呼び出しが可能なことが多々あります。さらに、様々なフローのステップをhadoopクラスタと対比して、インテリジェントにmap-reduceの呼び出しに変換します。
  • イベント通知 -- フローの様々なステップは、コールバックを介して通知を実行できるため、ホストアプリケーションはデータ処理の進行状況をレポートし、反応できます。
  • スクリプト可能 -- Cascadingは、JythonやGroovy、JRuby用のスクリプト可能なインタフェースを備えているので、人気の高い動的JVM言語で容易にアクセス可能です。

Cascadingの概念や実装を学べる文書が多数存在する。ウォークスルーでCascadingの中心概念(リンク)を紹介するハイレベルの概説プレゼンテーションがPDF版で手に入る。また、単純なApacheログパーサーの作成をウォークスルーする「やさしい入門」例もある(リンク)。最後になるが、Cascadingに関するJavadocの完全版もある(リンク)

 

原文はこちらです:http://www.infoq.com/news/2008/10/cascading

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT