简介

Sqoop是一款开源工具,主要用于Hadoop(HDFS、Hbase、HIVE)与传统数据库(Mysql、Oracle、Postgresql)间进行数据的传递。

它可以将一个关系型数据库中的数据导入到Hadoop的HDFS中,也可以将HDFS的数据导入到关系型数据库中

image

  • 背景

image

Sqoop最早是作为Hadoop的一个第三方模块,后来为了让开发者能够快速部署,也为了让开发人员能够更加快速迭代开发,Sqoop独立成为了一个Apache的项目

Sqoop专为大数据批量传输设计,能够分割数据集并创建Hadoop任务来处理每个区块。

  • 基本原理

    • 从关系型数据库到Hadoop

      1. 用户的Sqoop脚本最终会编程提交到YARN上的一个个map任务
      2. 通过Sqoop,用户可以将数据从RDB抽取至HDFS。输入端是关系型数据库中的某张表,Sqoop会一行一行的把数据从这张表里读出来写到HDFS;输出端是HDFS上关于这个表的文件集合

      注意:只有Map没有Reduce

      ​ 由于整个抽取ETL过程是并行化的,因此输出端会有多个文件。输出的文件可以指定分隔符、换行符等于分界符。

image

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/codezhou/p/14897514.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!