Hadoop数据入库系统Sqoop原理架构
Sqoop:SQL-to-Hadoop
连接传统关系型数据库和Hadoop的桥梁
把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS、HBase 和 Hive) 中;
把数据从 Hadoop 系统里抽取并导出到关系型数据库里。
利用MapReduce
批处理方式进行数据传输
-
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