sqoop工作原理是啥?

author author     2023-04-10     270

关键词:

Sqoop是一款用于把关系型数据库中的数据导入到hdfs中或者hive中的工具,当然也支持把数据从hdfs或者hive导入到关系型数据库中。

Sqoop也是基于Mapreduce来做的数据导入。

关于sqoop的原理
sqoop的原理比较简单,就是根据用户指定的sql或者字段参数,从数据库中读取数据导入到hive或者hdfs中。也支持基于数据库导出工具导出,不过受限于数据库的版本。

在导出的过程中,sqoop会自动切分mapreduce任务。比如某个字段的主键是从1到1000,那么当设置num-mappers为2时,第一个mr任务会读取1-500的数据,第二个mr任务会读取500-1000的数据。如果是字符串还有其他的划分方法.

关于架构
sqoop目前有两个大版本,第一个版本比较简单,只能使用命令行

第二个版本引入了sqoop server,统一处理连接等信息,并提供多种连接方式,还引入了权限控制,另外规范了连接的各项配置。
参考技术A 他的工作原理是达到一定的组织,我都做得非常好一些 参考技术B Sqoop在import时,需要制定split-by参数。Sqoop根据不同的split-by参数值来进行切分,然后将切分出来的区域分配到不同map中。每个map中再处理数据库中获取的一行一行的值,写入到HDFS中。同时split-by根据不同的参数类型有不同的切分方法,如比较简单的int型,Sqoop会取最大和最小split-by字段值,然后根据传入的num-mappers来确定划分几个区域。 比如select max(split_by),min(split-by) from得到的max(split-by)和min(split-by)分别为1000和1,而num-mappers为2的话,则会分成两个区域(1,500)和(501-100),同时也会分成2个sql给2个map去进行导入操作,分别为select XXX from table where split-by>=1 and split-by<500>=501 and split-by<=1000。最后每个map各自获取各自SQL中的数据进行导入工作。 参考技术C hadoop生态圈上的数据传输工具。
可以将关系型数据库的数据导入非结构化的hdfs、hive或者bbase中,也可以将hdfs中的数据导出到关系型数据库或者文本文件中。
使用的是mr程序来执行任务,使用jdbc和关系型数据库进行交互。
import原理:通过指定的分隔符进行数据切分,将分片传入各个map中,在map任务中在每行数据进行写入处理没有reduce。
export原理:根据要操作的表名生成一个java类,并读取其元数据信息和分隔符对非结构化的数据进行匹配,多个map作业同时执行写入关系型数据库。本回答被提问者采纳

哈士奇的工作原理是啥?

】哈士奇的工作原理是啥?【英文标题】:Howhuskyworks?哈士奇的工作原理是什么?【发布时间】:2019-12-0908:49:32【问题描述】:https://github.com/typicode/husky能够自动运行git挂钩,以便在自己的存储库中的团队之间共享它们。这怎么... 查看详情

AWS Glue 的工作原理是啥?

】AWSGlue的工作原理是啥?【英文标题】:HowAWSGlueworks?AWSGlue的工作原理是什么?【发布时间】:2021-01-0709:11:09【问题描述】:我阅读了多篇关于AWSGlue的ETL帖子。但我得到的不多。有人可以用简单的话解释一下AWSGlue的工作原理吗... 查看详情

Z3 中增量求解的工作原理是啥?

】Z3中增量求解的工作原理是啥?【英文标题】:HowincrementalsolvingworksinZ3?Z3中增量求解的工作原理是什么?【发布时间】:2013-05-0113:58:20【问题描述】:我有一个关于Z3如何逐步解决问题的问题。在这里阅读了一些答案后,我发... 查看详情

C++ 放置新的工作原理是啥?

】C++放置新的工作原理是啥?【英文标题】:HowC++placementnewworks?C++放置新的工作原理是什么?【发布时间】:2016-05-0708:19:08【问题描述】:这个问题是为了确认我对这个概念的理解是正确的,并就使用风格和可能的优化征求专家... 查看详情

Sqoop 中的直接连接器是啥

】Sqoop中的直接连接器是啥【英文标题】:WhataredirectconnectorsinSqoopSqoop中的直接连接器是什么【发布时间】:2017-09-2617:26:19【问题描述】:正如我们所知,Sqoop作业使用连接器以及特定数据库的JDBC驱动程序连接到数据库。但是正... 查看详情

从客户购买/收听行为中统计“相似产品/音乐/...”的工作原理是啥?

】从客户购买/收听行为中统计“相似产品/音乐/...”的工作原理是啥?【英文标题】:Howdoesstatisticalcalculationof"similarproducts/music/..."fromcustomerbuying/listeningbehaviourwork?从客户购买/收听行为中统计“相似产品/音乐/...”的工作... 查看详情

ViewHolder 模式中 setTag 和 getTag 的工作原理是啥?

】ViewHolder模式中setTag和getTag的工作原理是啥?【英文标题】:WhatistheworkingofsetTagandgetTaginViewHolderpattern?ViewHolder模式中setTag和getTag的工作原理是什么?【发布时间】:2014-11-1523:35:22【问题描述】:我有一个简单的代码sn-p用于实现... 查看详情

使用 Sqoop 并行导入 Oracle 表的最佳方法是啥?

】使用Sqoop并行导入Oracle表的最佳方法是啥?【英文标题】:WhatisthebestwaytoimportOracletablesinparallelusingSqoop?使用Sqoop并行导入Oracle表的最佳方法是什么?【发布时间】:2019-04-2816:54:19【问题描述】:我正在使用Sqoop将oracle表导入HDFS... 查看详情

sqoop导入数据到mysql原理_sqoop的详细使用及原理

1、sqoop简介sqoop是一个用来将hadoop中hdfs和关系型数据库中的数据相互迁移的工具,可以将一个关系型数据库(mysql、oracle等)中的数据导入到hadoop的hdfs中,也可以将hdfs的数据导入到关系型数据库中。2、sqoop的特点:sqoop的底层实现... 查看详情

Sqoop - 使用 Avro 格式将表从 Oracle 导入 Hive 的最佳选择是啥?

】Sqoop-使用Avro格式将表从Oracle导入Hive的最佳选择是啥?【英文标题】:Sqoop-WhatisthebestoptiontoimportatablefromOracletoHiveusingtheAvroformat?Sqoop-使用Avro格式将表从Oracle导入Hive的最佳选择是什么?【发布时间】:2017-03-0811:49:53【问题描述】... 查看详情

在 sqoop 中指定多个泛型参数的正确方法是啥

】在sqoop中指定多个泛型参数的正确方法是啥【英文标题】:Whatisthecorrectwaytospecifymultiplegenericargumentsinsqoop在sqoop中指定多个泛型参数的正确方法是什么【发布时间】:2018-03-0708:34:09【问题描述】:查看文档,我读到可用的通用参... 查看详情

sqoop基本原理

一、Sqoop基本原理①Sqoop是什么Sqoop(SQL-to-Hadoop)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql…)间进行数据的传递,可以将一个关系型数据库(例如:MySQL,Oracle,Postgres等)中的数据导入到Hadoop的HDFS中,也... 查看详情

windows系统补丁的工作原理是啥

补丁安装好之后,它们是怎样发挥作用的,工作原理是什么。电脑引导启动的时候首先启动“验证加载项”,将其相关内容写入物理内存中,形成一个包含“slic验证字段的模拟bios”,然后再把引导交给windows7系统启动,windows7会... 查看详情

mos管的工作原理mos管的工作原理是啥

参考技术A1、pn结的形成pn结的形成是在p型半导体与n型半导体之间在电场的作用下的扩散运动形成的势垒区(domain)。2、pn结的导电能力半导体中的电子必须从低能级跳到高能级,才能形成自由载流子(freecarrier)。因此当半导... 查看详情

快照测试的工作原理以及 toMatchSnapshot() 函数在 React 组件的 Jest 快照测试中的作用是啥?

】快照测试的工作原理以及toMatchSnapshot()函数在React组件的Jest快照测试中的作用是啥?【英文标题】:HowSnapshottestingworksandwhatdoestoMatchSnapshot()functiondoinJestSnapshottestingforReactcomponents?快照测试的工作原理以及toMatchSnapshot()函数在React... 查看详情

java三框架工作原理是啥?

一、struts的工作原理:1、初始化,读取struts-config.xml、web.xml等配置文件(所有配置文件的初始化)2、发送HTTP请求,客户端发送以.do结尾的请求3、填充FormBean(实例化、复位、填充数据、校验、保存)4、将请求转发到Action(调用A... 查看详情

gis的工作原理是啥?

请回答的简单一点。gis是一门科学和专技术不应该理解为机器。你的问题应该描述为gis技术原理和方法应用。gis的核心原理是空间性,其在软件上包括空间位置和空间属性,技术上表现为坐标(如xyz或地理坐标)和空间拓扑描述... 查看详情

oozie sqoop 动作具有 --map-column-java

...java【发布时间】:2015-08-1807:26:53【问题描述】:我在oozie工作流程中遇到sqoop操作错误。当我从unixpropmt运行相同的sqoop命令来测试它的工作原理时,但在oozie中它失败了日志..Sqoop命令参数:进口-连接"jdbc:sqlserver://x 查看详情