概述

sqoop是什么?

sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。
导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;
导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等
sqoop数据迁移(01)——sqoop概述
Sqoop 是连接传统关系型数据库和 Hadoop 的桥梁。它包括以下两个方面:
1、 将关系型数据库的数据导入到 Hadoop 及其相关的系统中,如 Hive和HBase。
2、 将数据从 Hadoop 系统里抽取并导出到关系型数据库。
核心设计思想是利用 MapReduce 加快数据传输速度。也就是说 Sqoop 的导入和导出功能是通过 MapReduce 作业实现的。所以它是一种批处理方式进行数据传输,难以实现实时的数据进行导入和导出。

为什么使用 Sqoop?

可以高效、可控地利用资源,可以通过调整任务数来控制任务的并发度。另外还可以配置数据库的访问时间等。
可以自动的完成数据类型映射与转换。我们往往导入的数据是有类型的,它可以自动根据数据库中的类型转换到 Hadoop 中,当然用户也可以自定义它们之间的映射关系。
支持多种数据库,比如,Mysql、Oracle和PostgreSQL等等数据库。

sqoop1与sqoop2架构对比

sqoop1和sqoop2是两个不同的版本,它们是完全不兼容的。
Apache 1.4.x 之后的版本属于sqoop1,1.99.x之上的版本属于sqoop2。

sqoop1架构

sqoop数据迁移(01)——sqoop概述

sqoop2架构
sqoop数据迁移(01)——sqoop概述
sqoop2有以下优势:
 引入的sqoop Server,便于集中化的管理Connector或者其它的第三方插件;
 具有多种访问方式:CLI、Web UI、REST API;
 引入了基于角色的安全机制,管理员可以在sqoop Server上配置不同的角色。

工作机制

将导入或导出命令翻译成mapreduce程序来实现
在翻译出的mapreduce中主要是对inputformat和outputformat进行定制。

相关文章:

  • 2021-09-01
  • 2021-08-22
  • 2022-02-15
  • 2021-04-17
  • 2021-11-21
  • 2021-12-04
  • 2021-10-19
猜你喜欢
  • 2021-12-25
  • 2022-12-23
  • 2022-01-17
  • 2022-12-23
  • 2022-12-23
  • 2021-04-23
相关资源
相似解决方案