【问题标题】:Incremental loads in SqoopSqoop 中的增量负载
【发布时间】:2015-04-22 04:18:01
【问题描述】:

我在 Teradata 中有一个表格,每天都会加载新数据。

我需要将此数据导入 Hive。我正在尝试使用 Sqoop,但我应该如何使用 Sqoop 进行增量加载?

我检查了 Sqoop 中可用的增量加载选项

--check-col

此选项只需要数字和唯一数据,而我的 Teradata 表没有这样的列

我正在使用日期列客栈--spli-by

在这种情况下如何对 Hive 进行增量导入?

请推荐

【问题讨论】:

    标签: hadoop hive teradata sqoop


    【解决方案1】:

    如果您使用--incremental lastmodified 模式,那么您的--check-column 是一个不需要是数字或唯一的时间戳。

    请参阅:Sqoop incremental imports

    【讨论】:

    • 嘿,谢谢...我想使用 sqoop 加载进入我的 TD 表的每日数据,数据没有得到更新..它只是将新数据附加到 Hive 表,将 -在这种情况下增量 lastmodified 工作?
    • 是的,在许多情况下,您可以使用sqoop merge 合并增量负载:请参阅sqoop.apache.org/docs/1.4.1-incubating/…
    • 嗨,感谢您的回复..--incremental app 对我有用
    • 如何重置 --last-value 的值以防损坏数据进入配置单元并需要删除然后重新加载
    • 我很高兴它成功了。如果对您有用,请接受答案。
    【解决方案2】:

    在检查列后面再使用一个“--append”命令,这样新数据就不会被替换,你可以看到它保存在hdfs的一个新文件中,而不用替换旧文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-14
      • 2019-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-28
      • 2016-03-27
      相关资源
      最近更新 更多