在特定队列上运行sqoop作业

air*_*ide 2 queue hadoop sqoop

我正在尝试在特定队列中创建一个Sqoop作业,但它不起作用.

我尝试了两件事:

1st:在作业创建中声明队列

sqoop job \
         --create myjob \
         -- import \
         --connect jdbc:teradata://RCT/DATABASE=MYDB \
         -Dmapred.job.queue.name=shortduration \
         --driver com.teradata.jdbc.TeraDriver \
         --username DBUSER -P \
         --query "$query" \
         --target-dir /data/source/dest/$i \
         --check-column DAT_CRN_AGG \
         --incremental  append \
         --last-value 2001-01-01 \
         --split-by NUM_CTR
Run Code Online (Sandbox Code Playgroud)

但它会抛出一个解析参数错误 -Dmapred.job.queue.name=shortduration

第二:删除-Dmapred.job.queue.name=shortduration创造的职位.创造就业机会很好.但是无法指定应该使用哪个队列

我失去了在这个队列中完成工作的希望

感谢您提供的任何帮助!

编辑:使用导入工作,sqoop import -Dmapred.job.queue.name=shortduration但sqoop工作不起作用

sha*_*nif 5

我认为你的命令有误

-Dmapreduce.job.queuename=NameOfTheQueue
Run Code Online (Sandbox Code Playgroud)

注意queuename一个单词和顺序,根据文档,vm args需要在导入后直接进入.

https://sqoop.apache.org/docs/1.4.3/SqoopUserGuide.html#_using_generic_and_specific_arguments

通用Hadoop命令行参数:(必须在任何特定于工具的参数之前)支持的通用选项是-conf指定应用程序配置文件-D使用给定属性的值

sqoop job -Dmapred.job.queuename=shortduration \
         --create myjob \
         -- import  \
         --connect jdbc:teradata://RCT/DATABASE=MYDB \
         --driver com.teradata.jdbc.TeraDriver \
         --username DBUSER -P \
         --query "$query" \
         --target-dir /data/source/dest/$i \
         --check-column DAT_CRN_AGG \
         --incremental  append \
         --last-value 2001-01-01 \
         --split-by NUM_CTR
Run Code Online (Sandbox Code Playgroud)

您可能只想尝试使用导入工具来查看它是否正常工作然后执行作业命令即

sqoop import -Dmapred.job.queuename=shortduration \
         --connect jdbc:teradata://RCT/DATABASE=MYDB \
         --driver com.teradata.jdbc.TeraDriver \
         --username DBUSER -P \
         --query "$query" \
         --target-dir /data/source/dest/$i \
         --check-column DAT_CRN_AGG \
         --incremental  append \
         --last-value 2001-01-01 \
         --split-by NUM_CTR
Run Code Online (Sandbox Code Playgroud)