2012-02-11 9 views
1

私はストリームを使ってhadoopを実行しようとしています。私は2つのファイルを持っています。 1つはマッパー用のjavaファイルで、もう1つはレデューサー用のpythonスクリプトです。MapperとしてのJavaクラスとReducerとしてのPythonスクリプトの使用

MerkleMapper.java

Class MerkleMapper extends MapREduceBasemap()関数を定義します。入力分割の各レコードについて、入力されたkey(byte_offset)value(line)のペアを読み取り、byte_offsetとその行のハッシュを出力します。

Reducerはすべてのハッシュを結合してトップハッシュを生成するPythonスクリプトです。

2つ(JavaとPython)を組み合わせることは可能ですか?どのように私はストリーミングを使用してマッパーとして私のJavaファイルを指定することができます。

答えて

0

2つのジョブに分割できます。

最初のジョブにはマッパー(Javaマッパー)のみがあり、その出力を取り出してPythonストリーミングジョブに渡します。Mapperはアイデンティティマッパーで、レデューサーはpython Reducerです。現在、私が知っているものからストリーミングとjavaを組み合わせることはできません。

関連する問題