温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Sqoop1如何导入导出

发布时间:2022-01-15 10:54:56 来源:亿速云 阅读:159 作者:小新 栏目:大数据

这篇文章主要介绍Sqoop1如何导入导出,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!


 》Sqoop1 和 Sqoop2 的区别 

Sqoop1 由 Client 端直接接入 Hadoop,任务通过解析生成对应的 MR 执行

Sqoop1 仅有一个客户端,架构简单明了,部署即用,使用门槛比较低,但是耦合性强,用户密码暴露不安全

Sqoop2 服务端部署,运行,提供 Cli、rest api、webui 等入口,Connector 集中管理,RDBMS控制账户更安全,但是 Sqoop2 仅负责数据的读写操作,架构相对复杂

 》Sqoop1导入(MySQL 导入到 HDFS)

注意:首先要启动MySQL、ZK、Hadoop

# demo1:table

# sqoop1 导入命令 mysql=>hdfs
bin/sqoop import 
# mysql驱动类
--driver com.mysql.cj.jdbc.Driver
# 连接字符串 
--connect jdbc:mysql://192.168.56.1/dbName?serverTimezone=GMT%2B8
# 从哪张表导数据
--table tbName
# mysql账号 
--username root
# mysql 密码 
--password 123456 
--verbose 
# 目标目录(HDFS)
--target-dir=/sqoop/a_users

# demo2:query

# 导入数据
# --query和--table是互斥的;
bin/sqoop import 
--connect jdbc:mysql://192.168.56.1/dbName?serverTimezone=GMT%2B8
--username root 
--password 123456 
--verbose 
# 获取记录条数
--fetch-size 30 
# SQL 语句
# $CONDITIONS sql语句执行的条件,这个条件由sqoop自己控制
--query 'select * from a_users where $CONDITIONS' 
# 按照 id 切分
#--split-by;拆分的这一列不能重复,一般是主键
--split-by id  
# 目标目录(HDFS)
--target-dir=/sqoop/a_users

# demo3:将sqoop脚本封装在文件中

# 新建一个文件;(一行一个,使用#注释);文件名随便写
import
--connect jdbc:mysql://192.168.56.1/dbName?serverTimezone=GMT%2B8
--username root
--password 123456
--verbose
--fetch-size 30
--query 'select * from a_users where $CONDITIONS'
--split-by id
--target-dir=/sqoop/a_users

执行Sqoop脚本文件的命令

bin/sqoop --options-file /root/fileName.txt

以上是“Sqoop1如何导入导出”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI