私はpigスクリプトを実行して、いくつかの誇張した操作を実行しますが、出力サイズは非常に小さいです。
今私は実行します
hadoop fs -getmerge ...
別々に。
pigスクリプトに結果をローカルファイルに直接ダンプさせる方法はありますか?
私はpigスクリプトを実行して、いくつかの誇張した操作を実行しますが、出力サイズは非常に小さいです。
今私は実行します
hadoop fs -getmerge ...
別々に。
pigスクリプトに結果をローカルファイルに直接ダンプさせる方法はありますか?
すべてを1つのファイルにマージする必要がない場合は、grunt(http://wiki.apache.org/pig/Grunt)でcopyToLocalコマンドを使用できます。
grunt> copyToLocal <src> <dest>
もう1つの可能な方法は、PigをPythonまたはJavaScriptに埋め込むことです。あなたはこのようなことをするかもしれません(Pythonで):
import os
from org.apache.pig.scripting import Pig
P = Pig.compile("PUT YOUR PIG CODE HERE")
hdfs_input = "YOUR HDFS INPUT"
hdfs_output = "YOUR HDFS OUTPUT"
local_output = "YOUR LOCAL OUTPUT"
result = P.bind({'in': input, 'out': hdfs_output}).runSingle()
os.system("hadoop fs -getmerge " + hdfs_output + " " + local_output)
(たとえば)によってPythonコードを実行します
pig -useHCatalog python_code.py