在oozie工作流中传递包含sqoop命令的文件

时间:2014-02-26 09:14:35

标签: xml hadoop hive sqoop oozie

Oozie workflow.xml包含用于传递sqoop相关命令的命令,arg和文件xml标记。

有没有办法在不使用命令或arg标记的情况下读取/声明包含完整sqoop脚本的文件?

类似下面的代码,我们在hive操作的情况下执行,我们将hive脚本作为文件传递。

 <hive xmlns="uri:oozie:hive-action:0.2">
        <job-tracker>${jobTracker}</job-tracker>
        <name-node>${nameNode}</name-node>
        <prepare>
            <delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/hive"/>
            <mkdir path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data"/>
        </prepare>
        <configuration>
            <property>
                <name>mapred.job.queue.name</name>
                <value>${queueName}</value>
            </property>
            <property>
                <name>oozie.hive.defaults</name>
                <value>my-hive-default.xml</value>
            </property>
        </configuration>
        <script>script.q</script>
        <param>INPUT=/user/${wf:user()}/${examplesRoot}/input-data/table</param>
        <param>OUTPUT=/user/${wf:user()}/${examplesRoot}/output-data/hive</param>
    </hive>

请您分享一个与此要求相对应的workflow.xml。

1 个答案:

答案 0 :(得分:1)

根据documentation - 不,没有办法。尝试使用shell action运行带有适当参数的sqoop命令。