sqoop

Sqoop 是传统数据库与 Hadoop 之间数据同步的工具,它是 Hadoop 发展到一定程度的必然产物,它主要解决的是传统数据库和Hadoop之间数据的迁移问题。这节课我们将详细介绍 Sqoop 这个工具。

Sqoop 产生背景

Sqoop 的产生主要源于以下几种需求:

1、多数使用 Hadoop 技术处理大数据业务的企业,有大量的数据存储在传统的关系型数据库(RDBMS)中。

2、由于缺乏工具的支持,对 Hadoop 和 传统数据库系统中的数据进行相互传输是一件十分困难的事情。

3、基于前两个方面的考虑,亟需一个在 RDBMS 与 Hadoop 之间进行数据传输的项目。

Sqoop 是什么

Sqoop 是连接传统关系型数据库和 Hadoop 的桥梁。它包括以下两个方面:

1、 将关系型数据库的数据导入到 Hadoop 及其相关的系统中,如 Hive和HBase。

2、 将数据从 Hadoop 系统里抽取并导出到关系型数据库。

Sqoop 的核心设计思想是利用 MapReduce 加快数据传输速度。也就是说 Sqoop 的导入和导出功能是通过 MapReduce 作业实现的。所以它是一种批处理方式进行数据传输,难以实现实时的数据进行导入和导出。

为什么选择 Sqoop

我们为什么选择 Sqoop 呢?通常基于三个方面的考虑:

1、它可以高效、可控地利用资源,可以通过调整任务数来控制任务的并发度。另外它还可以配置数据库的访问时间等等。

2、它可以自动的完成数据类型映射与转换。我们往往导入的数据是有类型的,它可以自动根据数据库中的类型转换到 Hadoop 中,当然用户也可以自定义它们之间的映射关系。

3、它支持多种数据库,比如,Mysql、Oracle和PostgreSQL等等数据库。

Sqoop1与Sqoop2的比较

  1、sqoop1和sqoop2是两个不同的版本,它们是完全不兼容的。

  2、版本划分方式:Apache 1.4.x 之后的版本属于sqoop1,1.99.x之上的版本属于sqoop2.

  3、与sqoop1相比,sqoop2有以下优势:

    1)它引入的sqoop Server,便于集中化的管理Connector或者其它的第三方插件;

    2)多种访问方式:CLI、Web UI、REST API;

    3)它引入了基于角色的安全机制,管理员可以在sqoop Server上配置不同的角色。

以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢!

最新文章

  1. v14.0\AspNet\Microsoft.Web.AspNet.Props 找不到
  2. 原生JavaScript技巧
  3. 交换ctrl和caps_loack的新方法
  4. jmeter使用IP欺骗进行压力测试
  5. repeater没有数据显示暂无数据,无记录
  6. 什么是网络爬虫(Spider) 程序
  7. Android版本升级同时Sqlite数据库的升级及之前数据的保留
  8. The Python web services developer: XML-RPC for Python
  9. hug and Compression Resistance
  10. android贴士Toast
  11. Echarts后台封装option对象
  12. 【Jquery系列】JqGrid参数详解
  13. 属性的get、set
  14. Problem A: 类的初体验
  15. 一、python基本语法元素(温度转换)
  16. TCP UDP 数据包过大导致分片情况
  17. Spring Boot 使用Java代码创建Bean并注册到Spring中
  18. Restful framework【第五篇】解析器
  19. [原][osg]osgconv浅析
  20. sql上下级关系查询

热门文章

  1. 报错之-Cannot set property 'onclick' of null
  2. 影响Scala语言设计的因素列表
  3. WPF实现右键菜单
  4. pyodbc
  5. @Deprecated使用技巧
  6. Spring开发包介绍
  7. hadoop-2.3.0-cdh5.1.0完全分布式集群配置及HA配置(待)
  8. Struts2学习第七课 result
  9. 《鸟哥的Linux私房菜》读书笔记5
  10. JS使用replace替换字符串中的某段或某个字符