BT

Cascading 3.0 が複数のフレームワークをサポート。 Concurrent Driven によるビッグデータアプリケーションの管理

| 作者: Boris Lublinsky フォローする 1 人のフォロワー , 翻訳者 川本 史生 フォローする 0 人のフォロワー 投稿日 2014年5月27日. 推定読書時間: 4 分 |

原文(投稿日:2014/05/13)へのリンク

ビッグデータアプリケーションを実装するにあたり、企業はApache MapReduce、Apache Tez 、Apache Spark あるいは Apache Storm など、数々のフレームワークを選ぶことができる。 これらのフレームワークには一長一短があり、どれが最適かはアプリケーション次第である。全てのフレームワークを一つの Apache YARN クラスタで実行することは可能であるが、各フレームワークには少しづつ違ったプログラミングモデルがあり、互換性のない API を使わなければならず、アプリケーションをフレームワークからフレームワークへと移植するのは容易ではない。

Concurrent の主要製品であり、新製品でもある Cascading 3.0 はこれらの問題の多くを解決する。Cascading は人気のある Java ドメイン固有言語  (DSL) の一つであり、MapReduce API を使用した大規模データワークフローのための関数プログラミングを定義し、実装するためのDSLとして2007年後半に登場した。 Cascading は “配管” のイメージで、データのパイプラインを構築する: 構成要素はデータの流れを分配したり、合流したり、取り付けることができ、さらには演算処理を一連の流れとして実行することができる。

このためユーザは Cascading アプリケーションを閉路を持たない有向グラフ (DAG) として表すことができる。 これは Cascading の planner によって、元はMapReduceである基礎的なフレームワークに変換されたものである。

Cascading 3.0 は MapReduce 以上のものを提供する。企業の開発者はデータ処理をするアプリケーションを一度開発し、それを業務目的に最も適したフレームワーク上で実行することができる。 Cascading 3.0 がまずサポートするのは: ローカルのインメモリ、 Apache MapReduce ( Hadoop 1 と 2 どちらもサポートされる)、 そして Apache Tez である。 まもなくコミュニティの支援を用いて、 Apache Spark™、 Apache Storm その他のフレームワークが、プラグイン可能でカスタマイズできる新しい planner を通じてサポートされる予定である。

Cascading 3.0 から導入される新しい planner は、実行時にローカルトポロジに基づいたメタデータを用いてグラフの正確性を確認したり、グラフのノードをアノテートすることができる。 この planner はグラフを変換してノードを平衡化、挿入、削除及び並び替えをすることができる。 さらにはグラフを分割して、再帰的により小さい計算単位(例えば Map や Reduce ノード、あるいは Tez プロセス)に対応する部分グラフを探す。

一旦適切な計算単位が定義されると、Cascading は実行時の設定を構築する。これにはフレームワークの全てのAPI群を切り分ける jar (と Maven POM) が用いられる。これらの jar と POM は Cascading が提供する。

Cascading 3.0 が実装するオープンでプラグイン可能な構造により、製品は容易にサポートするフレームワークを追加できるようになる。 これを行うには指定されたフレームワークとそのフレームワークに必要な jar や POM のための新しいルールセットを実装する。

Cascading 3.0 をオープンソースにしたのに加えて、Concurrent は最近商用製品 Driven を発表した。 これはリアルタイム監視や、運用のためのコントロール、そして Cascading アプリケーションのパフォーマンス管理機能を提供する。 Driven には次の機能をサポートするためにいくつかの画面がある:

  • Understand – 実行中のデータ・アプリケーションをリアルタイムに可視化し、各処理をさらに視覚的に掘り下げる。
  • Diagnose – 失敗した処理(とその理由)や、パフォーマンスの悪いアプリケーションを素早く確認する。
  • Optimize – 視覚的にアプリケーションの処理状況を分析し、パフォーマンスの問題や異常を発見する。
  • Track – アプリケーションのリアルタイムなパフォーマンスを視覚化や、過去のデータとの比較をする。

Concurrent の新しい製品によって、アプリケーションは Apache Tez 等の優れた新しいフレームワークへ移行しやすくなる。これによって企業はビジネスの要求に合う一つのAPIで標準化を行い、様々な業務上の問題に対処することができる。また、より新しく、より問題に適したビッグデータフレームワークを大量の書き直しをすることなく導入できる。Driven は新規及び既存のビッグデータアプリケーション運用状況を、開発から本番環境に至るまで可視化する。

 

この記事に星をつける

おすすめ度
スタイル

こんにちは

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