2016-01-13 40 views

回答

1

如果您要将数据导入配置单元表,您可以查询配置单元表中最后更新的值并将该值传递给sqoop导入查询。

  1. 基于逻辑的选择查询的配置单元操作检索 上次更新的值。
  2. Sqoop action来自 之前配置单元动作的增量负载。

PFB一个sudo的工作流程:

<workflow-app name="sqoop-to-hive" xmlns="uri:oozie:workflow:0.4"> 
<start to="hiveact"/> 
<action name="hiveact"> 
    <hive xmlns="uri:oozie:hive-action:0.2"> 
     <job-tracker>${jobTracker}</job-tracker> 
     <name-node>${nameNode}</name-node> 
     <configuration> 
      <property> 
       <name>mapred.job.queue.name</name> 
       <value>${queueName}</value> 
      </property> 
     </configuration> 
     <script>script.sql</script> 
<capture-output/> 
    </hive>  
    <ok to="sqoopact"/> 
    <error to="kill"/> 

<action name="sqoopact"> 
    <sqoop xmlns="uri:oozie:sqoop-action:0.2"> 
     <job-tracker>${jobTracker}</job-tracker> 
     <name-node>${nameNode}</name-node> 
     <command>import --connect jdbc:mysql://localhost:3306/ydb --table yloc --username root -P --incremental append --last-value ${wf:actionData('hiveact')}</command> 
    </sqoop> 
    <ok to="end"/> 
    <error to="kill"/> 
</action> 
<kill name="kill"> 
    <message>Action failed</message> 
</kill> 
<end name="end"/> 

希望这有助于。