概述
sqoop是一个开源工具,在RDBMS与hadoop间建立桥梁,可将RDBMS数据导入hadoop、Hbase、Hive等;反之将数据导入RDBMS。
Sqoop优点
- 高效、可控地利用资源,通过调整任务数来控制任务并发度,可以配置访问数据库的时间
- 自动完成数据库与hadoop系统中数据类型的映射与转换
- 支持多种数据库,mysql、Oracle等
Sqoop工作机制
Sqoop架构由客户端、hadoop平台以及外部存储系统构成。
- 客户端提交事务,转换成map任务;
- map任务访问数据库的元数据信息,将RDBMS数据读出导入hadoop;
- 反之将hadoop数据通过map任务导出到RDBMS。
Sqoop安装
下载解压Sqoop
#在镜像选择下载文件 wget http://mirror.bit.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.tar.gz #解压文件路径随意,改名为sqoop非必须 tar xvf sqoop-1.4.7.tar.gz -C /opt/sqoop
增加环境变量
#打开用户配置文件 vim ~/bashrc #增加sqoop环境变量 export SQOOP_HOME=/opt/sqoop PATH=$PATH:$SQOOP_HOME/bin
修改配置
#进入{$SQOOP_HOME}/conf cd /opt/sqoop/conf #复制sqoop-env.template.sh重命名sqoop.env.sh cp sqoop-env.template.sh sqoop-env.sh #打开文件编辑 export HADOOP_COMMON_HOME=/opt/hadoop export HADOOP_MAPRED_HOME=/opt/hadoop export HBASE_HOME=/opt/hbase export HIVE_HOME=/opt/hive export ZOOCFGDIR=/opt/zookeeper
添加数据库驱动包
下载mysql数据库驱动包到sqoop的lib目录
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.16/mysql-connector-java-8.0.16.jar mv mysql-connector-java-8.0.16.jar /opt/sqoop/lib
测试
sqoop hele
如果输出信息则配置成功。
Sqoop常用命令
sqoop import
将RDBMS数据导入HDFS,参数如下:
--connect | 连接mysql数据库的URL |
---|---|
--username | 连接mysql数据库的用户名 |
--password | 数据库用户密码 |
--table | mysql导出表名称 |
--target-dir | 表数据导入到HDFS的路径 |
-m | map并行度,表示产生多少文件 |
--fields-terminated-by | HDFS文件数据分隔符 |
sqoop import
--connect 'jdbc:mysql://192.168.8.200/djtdb_test?useUnicode=true&characterEncoding=UTF-8'
--username root
--password root
--table djt_test
--target-dir /user/sqoop/test
-m 2
--fields-terminated-by "@";
sqoop export
数据导出到RDSMS的参数
--connect | 连接mysql数据库的URL |
---|---|
--username | 连接mysql数据库的用户名 |
--password | 数据库用户密码 |
--table | 数据导入mysql表名称 |
--export-dir | HDFS数据导出的路径 |
-m | map并行度,表示产生多少文件 |
--fields-terminated-by | HDFS文件数据分隔符 |
sqoop export
--connect 'jdbc:mysql://192.168.8.200/djtdb_test?useUnicode=true&characterEncoding=UTF-8'
--username root
--password root
--table djt_test_jdbc
--export-dir /user/sqoop/test
-m 2
--fields-terminated-by "@";
最后
以上就是闪闪电脑为你收集整理的hadoop 工具 Sqoop的全部内容,希望文章能够帮你解决hadoop 工具 Sqoop所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复