我通过Azure HDInsight使用Pig。我能够提交以STORE结尾的查询,如下所示:
STORE Ordered INTO 'results' USING PigStorage(',');
这样做,将输出存储在目录/user/hdp/results/
中。但是我想控制输出目录。我试过了......
STORE Ordered INTO '/myOutDir/results' USING PigStorage(',');
和
STORE Ordered INTO 'wasb:///myOutDir/results' USING PigStorage(',');
这些都不奏效。它们都会产生这个错误:
Ordered was unexpected at this time.
我的问题是,我可以控制Store命令的输出目录吗?或者它必须进入用户目录?
答案 0 :(得分:0)
如果要使用参数设置输出,可以执行以下操作:
STORE Ordered INTO '$myOutDir/results' USING...
然后使用以下命令运行脚本:
pig -param myOutDir=/blablabla/... myScript.pig
注意:您还可以为参数设置默认值,在脚本顶部添加:
%default myOutDir '/blablabla/...'
希望这有帮助,祝你好运:)
答案 1 :(得分:0)
使用输出路径如下
wasb[s]://<BlobStorageContainerName>@<StorageAccountName>.blob.core.windows.net/<path>
如果输出路径为/example/data/sample.log
,则使用
wasb://mycontainer@mystorageaccount.blob.core.windows.net/example/data/sample.log
wasb:///example/data/sample.log
我希望这对你有帮助。 : - )