sqoop 增量导入,数据重复问题
亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《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学习网公众号!
MySQL 8功能详解——Common table expression (CTE)
- 上一篇
- MySQL 8功能详解——Common table expression (CTE)
- 下一篇
- MySQL8功能详解——数据字典
-
- 壮观的大门
- 这篇文章出现的刚刚好,大佬加油!
- 2023-03-20 07:53:29
-
- 无心的母鸡
- 太全面了,已加入收藏夹了,感谢up主的这篇技术贴,我会继续支持!
- 2023-03-13 22:47:09
-
- 激昂的绿草
- 受益颇多,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢作者分享文章内容!
- 2023-03-12 15:23:44
-
- 年轻的枫叶
- 这篇技术文章太及时了,好细啊,写的不错,码住,关注up主了!希望up主能多写数据库相关的文章。
- 2023-02-28 22:34:15
-
- 数据库 · MySQL | 3小时前 | 连接池 · 故障排查 · MySQL教程 · mysql 连接池 wait_timeout database/sql SetConnMaxIdleTime SetConnMaxLifetime 空闲连接 PingContext
- MySQL 连接池空闲连接失效 怎样处理
- 350浏览 收藏
-
- 数据库 · MySQL | 3小时前 | MySQL · 数据库 · csv · 数据导入 · CSV导入 MySQL LOAD DATA LOAD DATA LOCAL INFILE MySQL批量导入
- MySQL LOAD DATA 读取 CSV 怎样处理
- 307浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL 复制延迟区分线程 怎样处理
- 141浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL INTERSECT 怎样合并两组去重结果
- 358浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL COERCIBILITY 怎样判断表达式使用哪个排序规则
- 361浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL JSON 查询数组对象 怎样处理
- 467浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL 联合索引没有命中 怎样处理
- 415浏览 收藏
-
- 数据库 · MySQL | 3小时前 | MySQL · 执行计划 · sql优化 · mysql explain ANALYZE TABLE
- MySQL EXPLAIN 看行数偏差 怎样处理
- 437浏览 收藏
-
- 数据库 · MySQL | 3小时前 |
- MySQL CTE 拆分复杂查询 怎样处理
- 413浏览 收藏
-
- 数据库 · MySQL | 3小时前 | MySQL · JSON · 故障排查 · mysql JSON数组 JSON_TABLE NESTED PATH SQL排查
- MySQL JSON_TABLE 嵌套数组为空时为什么还会返回一行
- 437浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 586次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 622次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 656次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 622次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 438次使用
-
- MySQL 明明加了索引,为什么查询还是很慢?先查这 6 个点
- 2026-06-27 374浏览
-
- golang MySQL实现对数据库表存储获取操作示例
- 2022-12-22 499浏览
-
- golang 基于 mysql 简单实现分布式读写锁
- 2023-01-07 384浏览
-
- 详解如何利用GORM实现MySQL事务
- 2023-01-07 184浏览
-
- Go语言实现操作MySQL的基础知识总结
- 2023-01-23 265浏览

