Sqoop 示例

Import:RDBMS到HDFS

从RDBMS导入数据

示例数据

mysql> create database company;
mysql> create table company.staff(
id int(4) primary key not null auto_increment,
name varchar(255),
sex varchar(255)
);
mysql> insert into company.staff(name,sex) values('Thomas','Male'),('Catalina','FeMale');
mysql> select * from company.staff;

导入到HDFS

查看结果
$ hdfs dfs -cat /sqoop/company/part-m-00000

查询导入
$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--query 'select name,sex from staff where id = 1 and $CONDITIONS;'
--target-dir /sqoop/company
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t";
解释说明:$CONDITIONS为了保证导入数据的顺序。
--query "select name,sex from staff where id = 1 and $CONDITIONS;"

指定表
$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--target-dir /sqoop/company
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t";

指定列
$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--columns id,sex
--target-dir /sqoop/company
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t";

指定条件
$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--columns id,sex
--where "id = 1"
--target-dir /sqoop/company
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t";

导入到Hive

$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--num-mappers 1
--fields-terminated-by "\t"
--hive-import
--hive-overwrite
--hive-table staff_hive;

导入到HBase

$ sqoop import
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--num-mappers 1
--hbase-create-table
--hbase-table "staff_hbase"
--column-family "info"
--hbase-row-key "id"
--split-by id

解释说明:sqoop1.4.6只支持HBase1.0.1之前版本的自动创建表功能,但是cdh版本可以直接用。

Export:HDFS到RDBMS

导出数据到RDBMS

导出到MySQL

$ sqoop export
--connect jdbc:mysql://host000:3306/company
--username root
--password ok
--table staff
--num-mappers 1
--export-dir /user/hive/warehouse/staff_hive
--input-fields-terminated-by "\t";

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容