sqoop hive 写mysql_项目实战 -sqoop写入Mysql(三)

1.参考官网文档:http://sqoop.apache.org/docs/1.4.6/SqoopUserGuide.html#_importing_data_into_hive_2

2.sqoop可以将mysql写入hive、HDFS、hbase中

3.sqoop可以将hive、HDFS、hbase数据写入mysql中

4.发音:死谷瀑

安装

解压

tar -zxvf sqoop-1.4.6.xxx.tar.gz -C /opt/bigdata

复制

mv sqoop-1.4.6.xxx sqoop sqoop-1.4.6

配置环境

/etc/profile

测试

sq

配置 /conf目录

mv sqoop-env-template.sh sqoop-env.sh(不用修改。里面都是找hadoop环境,已经有了)

拷贝

mysql驱动包到 /bin目录下

查看版本

sqoop version

测试连接mysql,连接成功会显示所有库

sqoop list-databases --connect jdbc:mysql://node01:3306 --username root --password aa123456

bc9ac84bfb1e6ddd5c650bdaeac4df3e.png

sqoop也是一个MR

将mysql数据写入HDFS

语法:

sqoop import --connect jdbc:mysql://ke01:3306/test --username root --password aa123456 --as-textfile --columns id,name --delete-target-dir -m 1 --table info --target-dir /sqoop

运行时会启动一个MR任务

8872ab1100820527c8140f13b784c80c.png

测试:HIVE中验证数据

hive> dfs -cat /sqoop/*;

1,xiaoke

2,xiaowang

3,xiaoming

4,4

将命令放入文件中

vi option2

import

--connect

jdbc:mysql://ke01:3306/test

--username

root

--password

aa123456

--as-textfile

--delete-target-dir

-m

1

--target-dir

/sqoop

-e

select * from info where id > 2 and $CONDITIONS

$CONDITIONS是sql中的1=1

执行:

sqoop --option-file option2

验证:

dfs -cat /sqoop/*

3,xiaoming

4,4

sqoop写入到hive中

参考:7.2.12. Importing Data Into Hive

vi option3

import

--connect

jdbc:mysql://ke01:3306/test

--username

root

--password

aa123456

--as-textfile

--delete-target-dir

-m

1

--target-dir

/sqoop

-e

select * from info where id > 2 and $CONDITIONS

--hive-import

--create-hive-table

--hive-table

h_info

运行:

sqoop --options-file option3

d0f9a83aa4ebc3f46e784bc5d8e44e95.png

MR运行步骤: sqoop先往hdfs中写数据,在写入hive(HDFS对应hive目录)中

也可以自己指定分隔符:

--input-fields-terminated-by

sqoop写入到HBase中

需要找到对应的sqoop版本和hbase版本,否则报错

参考:7.2.13. Importing Data Into HBase

将hive(hdfs)数据导入mysql

1.当数据是map、数组格式会把这个列当做一个字符串存入mysql

vi option4

export

--connect

jdbc:mysql://ke01:3306/test

--username

root

--password

aa123456

--columns

id,name,hobby,address

--export-dir

/user/hive_ke/warehouse/psn1

-m

1

--table

test

运行:

sqoop --options-file option4

3c4403b8beed3fab7db2e35d18488102.png

如果目录/user/hive_ke/warehouse/psn1 是HDFS有分隔符则使用

--input-fields-terminated-by

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值