BT

GoogleがCloud Dataflow Java SDKをオープンソースに

| 作者: Abel Avram フォローする 10 人のフォロワー , 翻訳者 吉田 英人 フォローする 0 人のフォロワー 投稿日 2015年1月7日. 推定読書時間: 2 分 |

原文(投稿日:2014/12/18)へのリンク

Googleは今年初め,Cloud Dataflowを発表した。大量のデータをバッチ,あるいはリアルタイムで処理するためのサービスとSDKだ。そして今回,同社はDataflow Java SDKをオープンソースにした。開発者がその動作内容を確認したり,オンプレミスあるいはクラウド上で動作するサービスにSDKを使用することが可能になる。

Dataflowは,FlumeJava - データ並列パイプラインを生成するJavaライブラリ - と,MillWheel - フォールトトレラントなストリーム処理アプリケーション構築のためのフレームワーク - から発展させた技術を採用した,クラウド上のサービスである。いずれもGoogle社内の“数百人の開発者”によって利用されているものだ。サービス自体は言語に依存しないが,Googleはアプリケーション開発を容易にするためにJava SDKを提供している。

Dataflowが採用する中心的な概念は,“入力データソースを読み込み,データを変換し,結果を出力として書き込む,という一連のオペレーション”で構成されるパイプラインだ。データは有限サイズないし無限サイズのコレクション(Collection)に編成され,いくつものトランスフォーメーション(Transformation)へと送られる。トランスフォーメーションは,入力となるコレクションを操作して,出力のコレクションを生成するデータ処理である。パイプラインを実行する環境は,パイプライン・ランナ(Pipeline Runner)と呼ばれる。SDKでは,ローカルマシン用のDirectPipelineRunner,Google Cloud Platform用のDataflowPipelineRunner,同じくGoogle Cloud用で,実行ステータスをログメッセージとして表示するBlockingDataflowPipelineRunnerの3つが提供されている。

パイプラインは,トランスフォーメーションを線形に順次実行するシンプルなものでも,ブランチした後にマージするような,トランスフォーメーションパスを持った有向グラフなどの複雑なものでもよい。パイプラインではデータの共有や,別のパイプラインでトランスフォーメーションを行うことはできない。また,パイプラインは非同期に動作するので,Dataflowサービスでは,いくつかのトランスフォーメーションを実行する順序を決めておいて,プロセス全体を効率面で最適化することも可能だ。

DataflowアプリはGoogle Cloud Platformにデプロイすることも可能だ。コードを実行するVMの提供やデータストレージ,あるいはデータ処理のためのBigQuery機構といったすべてのインフラストラクチャを,Google Cloud Platformが処理してくれる。他のランナを使ってローカルに,あるいは他のクラウドにデプロイして,同様のサービスを開発することも可能だ。

Dataflow SDKには利用例が付属する。開発者の質問に答えるStack Overflowのタグも用意されている。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには 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