sqoop 增量导入,数据重复问题
来源:SegmentFault
时间:2023-02-16 15:24:22 168浏览 收藏
亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《sqoop 增量导入,数据重复问题》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下MySQL、hive、sqoop、oozie、hdfs,希望所有认真读完的童鞋们,都有实质性的提高。
原文连接:https://segmentfault.com/a/1190000021597763
根据自增ID导入数据时重复,可以使用下列方法
图片来源
http://cn.voidcc.com/question...
下面是官网文档手册
https://sqoop.apache.org/docs...
7.2.10. Incremental Imports
Sqoop provides an incremental import mode which can be used to retrieve only rows newer than some previously-imported set of rows.
Sqoop提供了一种增量导入模式,该模式可用于仅检索比某些先前导入的行集新的行。
The following arguments control incremental imports:
以下参数控制增量导入:
Argument Description
--check-column (col)
Specifies the column to be examined when determining which rows to import. (the column should not be of type CHAR/NCHAR/VARCHAR/VARNCHAR/ LONGVARCHAR/LONGNVARCHAR)
指定在确定要导入的行时要检查的列。(该列的类型不得为CHAR / NCHAR / VARCHAR / VARNCHAR / LONGVARCHAR / LONGNVARCHAR)
--incremental (mode)
Specifies how Sqoop determines which rows are new. Legal values for mode include append and lastmodified.
指定Sqoop如何确定哪些行是新的。modeincludeappend和的法律价值lastmodified。
--last-value (value)
Specifies the maximum value of the check column from the previous import.
指定上一次导入中检查列的最大值。
Sqoop supports two types of incremental imports:appendandlastmodified. You can use the--incrementalargument to specify the type of incremental import to perform.
Sqoop支持两种类型的增量导入:append和lastmodified。您可以使用--incremental参数指定要执行的增量导入的类型。
You should specifyappendmode when importing a table where new rows are continually being added with increasing row id values. You specify the column containing the row’s id with--check-column. Sqoop imports rows where the check column has a value greater than the one specified with--last-value.
append导入表时,应指定模式,在该表中,将随着行ID值的增加而不断添加新行。您可以使用指定包含行ID的列--check-column。Sqoop导入行,其中check列的值大于用所指定的值--last-value。
An alternate table update strategy supported by Sqoop is calledlastmodifiedmode. You should use this when rows of the source table may be updated, and each such update will set the value of a last-modified column to the current timestamp. Rows where the check column holds a timestamp more recent than the timestamp specified with--last-valueare imported.
Sqoop支持的替代表更新策略称为lastmodified模式。当源表的行可能会更新时,应该使用此方法,并且每次此类更新会将上次修改的列的值设置为当前时间戳。--last-value导入检查列保存的时间戳比使用指定的时间戳更新的时间戳的行。
At the end of an incremental import, the value which should be specified as--last-valuefor a subsequent import is printed to the screen. When running a subsequent import, you should specify--last-valuein this way to ensure you import only the new or updated data. This is handled automatically by creating an incremental import as a saved job, which is the preferred mechanism for performing a recurring incremental import. See the section on saved jobs later in this document for more information.
在增量导入结束时,应--last-value为后续导入指定的值将显示在屏幕上。运行后续导入时,应--last-value以这种方式指定以确保仅导入新数据或更新数据。通过将增量导入创建为保存的作业来自动处理此问题,这是执行循环增量导入的首选机制。有关更多信息,请参阅本文档后面有关已保存作业的部分。
参考文档:
http://cn.voidcc.com/question...
https://sqoop.apache.org/docs...
原文连接:https://segmentfault.com/a/1190000021597763
本篇关于《sqoop 增量导入,数据重复问题》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!
-
499 收藏
-
244 收藏
-
235 收藏
-
157 收藏
-
101 收藏
-
397 收藏
-
489 收藏
-
209 收藏
-
497 收藏
-
335 收藏
-
467 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习