2012-03-26 6 views
0

PHPやRubyを使ってどのようなレベルのハングーププログラミングを行うことができるのでしょうか?私はPHP、Rubyからハックすることができるハープ・ストリーミングAPIを利用した記事を見つけました。PHP、RubyのHadoopサポート

私の質問

  1. あなたは他のHadoopのjavaマップ-削減ジョブを扱うことができ、PHP、Rubyでマップ-削減の仕事を書くことができますか?

  2. APIレベルのプログラミングに関して、hadoopで非Java言語に欠けているものはありますか?つまり、javaでしか実行できないものと他の言語との違いは何ですか?

おかげ

答えて

1
  1. あなたは、連鎖のjava M/Rの求人(例えば - ネイティブAPI)を参照している場合はストリーミングジョブで - 私は同様のスレッドでthis seemingly relevant answerを見ました。
  2. ストリーミングスクリプトで行うことは、基本的に、選択した言語の機能に制限されています。 RubyとPHPの両方がかなり強力なので、私はあなたがこれらの中で何が欠けているのか分かりません。

個人的には、私もRuby/Pythonのバックグラウンドから来て、まずストリーミングを使って処理を試みました。最終的に私はJava APIにチャンスを与えることにしました。それほど悪くないことが判明しました。

+0

ありがとうございましたdavid&sal – realnumber

2

nutshell - hadoopには、マッパーとレデューサー以外のプラグインがいくつかあります:コンバイナー、入出力フォーマットコンパイラー。これらのplaginsはJavaでのみ記述することができます。
これは、ストリームを介してハープを使用すると、いくつかの単純なケースで済む可能性があることを意味しますが、柔軟性が大幅に低下します。
マッパーやレデューサーにレコードを渡すために、さまざまなメカニズムが使用されているため、ストリーミングも若干遅くなります。