一.导入数据
在Sqoop中,"导入"指的是从非大数据集群(RDBMS)向大数据集群(HDFS,HBASE,HIVE)中传输数据,即import。
1.RDBMS到HDFS
1)确定mysql服务开启正常
2)创建一个数据库并在该库下创建一个表,然后填充一些数据
3)导入数据
(1)全部导入
注意jdbc包的版本,我这里用的是mysql-connector-java-5.1.35.jar与Sqoop1.4.6兼容。
(2)查询导入
查询导入不指定table
(3)导入指定列以及条件查询
2.导入数据到Hive
将hive 里面的lib下的hive-exec-**.jar 放到sqoop 的lib 下可以解决以下问题。
这个导入是两个过程——先将数据导入到HDFS中,结束后再将数据从HDFS中上传到Hive中。
所以,我们会先在HDFS的默认存储目录下(我的是/user/root)看到student目录,然后这个student目录会被删除,接下来就是会在Hive的默认存储目录下(我的是/user/hive/warehouse)看到hive_student目录
3.导入数据到Hbase
二.导出数据
在Sqoop中,"导出"指的是从大数据集群(HDFS,HIVE)向非大数据集群(RDBMS)中传输数据,即export。 (不支持HBASE)
但是mysql表必须提前创建