1、Sqoop 是什么
Sqoop:SQL-to-Hadoop
连接传统关系型数据库和Hadoop的桥梁
把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS、HBase 和 Hive) 中;
把数据从 Hadoop 系统里抽取并导出到关系型数据库里。
利用MapReduce
批处理方式进行数据传输
Apache Sqoop(SQL-to-Hadoop)项目旨在协助RDBMS与Hadoop之间进行高效的大数据交流。用户可以在 Sqoop 的帮助下,轻松地把关系型数据库的数据导入到 Hadoop 与其相关的系统 (如HBase和Hive)中;同时也可以把数据从 Hadoop 系统里抽取并导出到关系型数据库里。
2、Sqoop 架构图
sqoop import \
--connect jdbc:mysql://mysql.example.com/sqoop \
--username sqoop \
--password sqoop \
--table person
--target-dir
--connnect: 指定JDBC URL
--username/password :mysql 数据库的用户名
--table :要读取的数据库表
sqoop export \
--connect jdbc:mysql://mysql.example.com/sqoop \
--username sqoop \
--password sqoop \
--table cities \
--export-dir cities
--fields-terminated-by
--connnect: 指定JDBC URL
--username/password :mysql 数据库的用户名
--table :要导入的数据库表
export-dir :数据在HDFS 上存放目录
Sqoop 可以与Oozie 、Hive 、Hbase 等系统结合;
用户需要在sqoop-env.sh 中增加HBASE_HOME 、HIVE_HOME