一. 导入数据(非大数据集群(RDBMS)=>大数据集群)
Sqoop中,"导入"概念指:从非大数据集群(RDBMS)向大数据集群(如HDFS,HIVE,HBASE)中传输数据,即使用import关键字。
- 从RDBMS到HDFS
1). 开启Hadoop集群
[root@cos100 sqoop]# start-all.sh
2). 开启Mysql服务
[root@cos100 sqoop]# mysql -u root -p
3). 创建表格并插入数据
mysql> create database company;
mysql> create table company.staff(id int primary key auto_increment, name varchar(30), sex varchar(30));
mysql> insert into company.staff(name, sex) values('Victor', 'Man');
mysql> insert into company.staff(name, sex) values('Eddy', 'Man');
4). 导入数据
(1) 全部导入
[root@cos100 sqoop]# bin/sqoop import \
--connect jdbc:mysql://cos100:3306/company \
--username root \
--password 000000 \
--table staff \
--target-dir /user/company \
--delete-target-dir \
--num-mappers 1 \
--fields-terminated-by "\t"
浏览器页面查看文件,显示上传成功(后面的不一一查看)
(2) 查询导入
注意:如果用where语句的话,则语句中必须有$CONDITIONS关键字,如下语句
[root@cos100 sqoop]# bin/sqoop import \
> --connect jdbc:mysql://cos100:3306/company \
> --username root \
> --password 000000 \
> --target-dir /user/company \
> --delete-target-dir \
> --num