使用azure数据工厂(ADF)从Pig / Hive活动运行shell脚本

时间:2017-05-05 11:16:31

标签: shell azure hadoop hdinsight azure-data-factory

我使用Azure Blob stoarge,数据工厂和HDInsight群集。 我有一个shell脚本,其中包含hadoop和hive相关的代码,我尝试在ADF中添加/创建一个hive / Pig活动,从pig / hive的代码我调用一个shell脚本;如

myFile.pig

sh /myFolder/myscript.sh

==========================

myFile.hql

!/myFolder/myscript.sh

执行时,我得到了Java.IO.Excption |没有相应的文件和目录 。 根据例外,pig / hive文件无法识别shell脚本路径;

是否有人遇到过类似的问题,或者有任何人将部署了pig / hive活动以及来自ADF的shell脚本。

我已经尝试了多种方式和所有可能的路径组合来传递shell脚本的位置,但它没有被拾取,任何帮助/建议/指针都会非常明显。

提前致谢。

1 个答案:

答案 0 :(得分:0)

将shell脚本上传到blob存储,然后将该脚本调用到pig或hive,Bleow就是这些步骤。

Hive 

    !sh hadoop fs -ls wasbs://contyaineName@StorageAccountName.blob.core.windows.net/pathToScript/testshell.ksh

Pig 
    sh hadoop fs -ls wasbs://contyaineName@StorageAccountName.blob.core.windows.net/pathToScript/testshell.ksh