gpt4 book ai didi

hadoop - 如何使用 sqoop 作业自动化 sqoop 增量导入?

转载 作者:可可西里 更新时间:2023-11-01 14:51:51 25 4
gpt4 key购买 nike

如何使用sqoop job自动化sqoop增量导入?

据我所知,sqoop job 会记住最后一个值。如果我们创建一个类似

的 sqoop 作业

sqoop job --create myjob -- import --connect blah blah..

sqoop 执行我的作业

并使作业自动化,它会在每次执行时创建作业。所以,我们会得到工作已经存在的错误。

那么,是否可以使用 sqoop job 自动执行 sqoop 增量导入?

请告诉我您对此的了解。提前致谢。

最佳答案

为了重述的可能性,最好完全控制书签。这就是自定义机制优于 sqoop 作业的原因。

工作流模板是:

  1. 阅读最新书签。可以存储在某些 rdbms(mySQL) 或 Hadoop/etc 中的文件中。如果书签不存在,可以从目标表中选择。例如,从 target_table 中选择 max(etl_load_timestamp)

  2. 将书签条件作为参数传递给 sqoop 查询,例如将 and etl_update_timestamp>$your_bookmark 连接到 WHERE 子句。

  3. 运行 sqoop
  4. 保存最新的书签(见1.)

如果增量数据太大(书签值离current_timestamp太远),在月/日/小时循环中运行sqoop,每次迭代后保存书签。

书签可以是时间戳或者一些run_id(源系统etl序列)

如果您需要重述数据(追溯加载),则更新书签和工作流将从书签开始重新加载数据。

关于hadoop - 如何使用 sqoop 作业自动化 sqoop 增量导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41854966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com