使用sqoop作业,我们可以使用--lastval
但我们如何才能对shell脚本做同样的事情以及我们在自动化脚本时如何获得--lastval
?
我指的是如何存储--lastval
以及如何将其传递到下一次
谢谢你提前帮忙!!
答案 0 :(得分:3)
如何存储--lastval以及如何将其传递到下一次?
将--lastval
定义为linux或unix中的别名或导出变量。可以从自动化脚本重试
once load is finish then change it to recent value, by capturing latest lastva L
export lastupdatedvalue=hive -e 'select last_value from table
基于逻辑的#selection查询。
sqoop import --connect jdbc:mysql://localhost:3306/ydb --table <your table> --username root -P --incremental append --last-value ${lastupdatedvalue}
你可以在Oozie中尝试一个sqoop动作,它应该可行。否则使用shell动作 oozie如果你喜欢脚本。可以使用它来安排它 协调员职能。
另外看看
--incremental
--check-column id
--last-value 100
如果从命令行运行增量导入,Sqoop将在后续增量导入中打印最后一个值。如果从已保存的作业运行增量导入,Sqoop将保留已保存作业中的最后一个值。要仅导入比先前导入的行更新的行,请使用--exec选项。 Sqoop只导入id大于指定行id的行。