当前位置:首页 > 文章列表 > 数据库 > MySQL > sqoop 增量导入,数据重复问题

sqoop 增量导入,数据重复问题

来源:SegmentFault 2023-02-16 15:24:22 0浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《sqoop 增量导入,数据重复问题》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下MySQL、hive、sqoop、oozie、hdfs,希望所有认真读完的童鞋们,都有实质性的提高。

原文连接:https://segmentfault.com/a/1190000021597763

根据自增ID导入数据时重复,可以使用下列方法

image.png

图片来源
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学习网公众号!

版本声明
本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
MySQL 8功能详解——Common table expression (CTE)MySQL 8功能详解——Common table expression (CTE)
上一篇
MySQL 8功能详解——Common table expression (CTE)
MySQL8功能详解——数据字典
下一篇
MySQL8功能详解——数据字典
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • SuperCLUE中文大模型评测基准:功能、能力维度与应用指南
    SuperCLUE
    SuperCLUE是权威的中文大语言模型综合评测基准,涵盖语言理解、知识应用、AI Agent智能体及安全性等12项核心能力。通过多轮对话与客观测试,定期发布榜单与技术报告,为模型研发、优化及行业选型提供科学依据。
    167次使用
  • C-Eval中文评测基准:大语言模型多学科能力评估指南
    C-Eval
    深入了解C-Eval中文评估套件,涵盖52个学科与4级难度。本文详解其功能特点、Zero-shot/Few-shot使用方法及代码示例,助您全面评测LLM中文理解与泛化能力。
    91次使用
  • AI Prompt Library:免费AI提示词库,助力ChatGPT高效创作与营销
    AI Prompt Library
    探索AI Prompt Library免费资源库,涵盖营销、写作及多场景AI提示词。兼容ChatGPT、Claude等工具,一键复制优化输出,提升工作效率。
    11次使用
  • LangGPT提示词框架:结构化Prompt设计方法与开源工具指南
    LangGPT
    LangGPT是一种受编程语言启发的结构化提示词设计工具,提供双层框架、模块化模板及变量功能,帮助用户高效编写高质量Prompt。该项目已在GitHub免费开源,适用于内容创作、编程辅助等多场景。
    28次使用
  • ClickPrompt:AI提示词生成与优化工具,支持Stable Diffusion、ChatGPT及代码辅助
    ClickPrompt
    ClickPrompt是一款专为AI提示词编写者设计的开源在线工具,支持Stable Diffusion绘图、ChatGPT对话及GitHub Copilot代码辅助。提供Prompt自动生成、一键运行、社区分享及可视化优化功能,帮助用户高效获取精准AI输出。
    56次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码