Sqoop
简介
Sqoop是一款开源工具,主要用于Hadoop(HDFS、Hbase、HIVE)与传统数据库(Mysql、Oracle、Postgresql)间进行数据的传递。
它可以将一个关系型数据库中的数据导入到Hadoop的HDFS中,也可以将HDFS的数据导入到关系型数据库中
- 背景
Sqoop最早是作为Hadoop的一个第三方模块,后来为了让开发者能够快速部署,也为了让开发人员能够更加快速迭代开发,Sqoop独立成为了一个Apache的项目
Sqoop专为大数据批量传输设计,能够分割数据集并创建Hadoop任务来处理每个区块。
基本原理
从关系型数据库到Hadoop
- 用户的Sqoop脚本最终会编程提交到YARN上的一个个map任务
- 通过Sqoop,用户可以将数据从RDB抽取至HDFS。输入端是关系型数据库中的某张表,Sqoop会一行一行的把数据从这张表里读出来写到HDFS;输出端是HDFS上关于这个表的文件集合
注意:只有Map没有Reduce
由于整个抽取ETL过程是并行化的,因此输出端会有多个文件。输出的文件可以指定分隔符、换行符等于分界符。
以上是 Sqoop 的全部内容, 来源链接: utcz.com/z/535705.html