【部署安装】
# Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
# 部署Sqoop到13.33,参考文档:
Sqoop安装配置及演示
http://www.micmiu.com/bigdata/sqoop/sqoop-setup-and-demo/
# Sqoop只需要部署一份,目前部署在13.33,和HadoopMaster一台机器。
【Mysql到HDFS】
# 测试同步mysql数据到HDFS:
sqoop import --connect jdbc:mysql://192.168.12.210/zhangsp --username hive --password 123456 --table test20141105 --warehouse-dir /user/sqoop/12_210 --split-by col1
常用参数说明:
# 默认设置下导入到hdfs上的路径是: /user/username/tablename/(files),比如我的当前用户是hadoop,那么实际路径即:/user/hadoop/demo_blog/(files)。
# 如果要自定义路径需要增加参数:--warehouse-dir,例如:--warehouse-dir /user/sqoop/12_210
# 无主键表的导入需要增加参数 --split-by xxx 或者 -m 1
【Oracle到HDFS】
-- 查看Oracle数据表
sqoop list-tables --connect jdbc:oracle:thin:@192.168.12.222:1521:edu --username edu --password=jyedu
-- 同步到一个HDFS文件
sqoop import --append --connect jdbc:oracle:thin:@192.168.12.222:1521:edu --username edu --password jyedu --target-dir /user/sqoop/12_222_edu/t_ssync_database --num-mappers 1 --table t_ssync_database
--columns DB_ID,DB_NAME,DB_DESCRIPTION,DB_TYPE,STATUS,CREATE_DATE --fields-terminated-by ‘\t‘
-- 同步到多个HDFS文件
sqoop import --append --connect jdbc:oracle:thin:@192.168.12.222:1521:edu --username edu --password jyedu --target-dir /user/sqoop/12_222_edu/t_ssync_database_distribute --num-mappers 5 --table
t_ssync_database --columns DB_ID,DB_NAME,DB_DESCRIPTION,DB_TYPE,STATUS,CREATE_DATE --fields-terminated-by ‘\t‘ --split-by DB_ID
【Oracle到HBase】
Sqoop之Oracle2HBase
http://f.dataguru.cn/forum.php?mod=viewthread&tid=126765
sqoop import --connect jdbc:oracle:thin:@192.168.12.222:1521:edu --username edu --password jyedu --table t_ssync_database --hbase-create-table --hbase-table h_t_ssync_database --column-family
cf_database --hbase-row-key DB_ID -m 1 --columns DB_ID,DB_NAME,DB_DESCRIPTION,DB_TYPE,STATUS,CREATE_DATE
【Oracle到Hive】
sqoop import --hive-import --hive-overwrite --hive-table hive_t_ssync_database --connect jdbc:oracle:thin:@192.168.12.222:1521:edu --username edu --password jyedu -m 2 --split-by DB_ID --columns
DB_ID,DB_NAME,DB_DESCRIPTION,DB_TYPE,STATUS,CREATE_DATE --table t_ssync_database
Sqoop工具使用(二)--从oracle导入数据到hive
http://www.xingxingge.com/Hadoop/148.html