我是靠谱客的博主 舒适盼望,最近开发中收集的这篇文章主要介绍sqoop安装和简单使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

sqoop是一个数据传输工具,主要用于在Hadoop和关系数据库,数据仓库,NoSQL之间传输数据.通过sqoop可以方便的将数据从关系数据库导入HDFS,HBase,Hive或者从HDFS中导出到关系数据库中.
sqoop通过map任务来传输数据,map负责加载,转换,然后存储到HDFS,HBase,Hive中.Sqoop是基于客户端模式.只需要一台机子即可.Sqoop只提交一个map作业,数据的传输和转化都是使用Mapper来完成的,可通过YARN查看状态.
前提java 和hadoop已经安装了.
1.下载sqoop并解压
2.添加环境变量

vim .bashrc
export SQOOP_HOME=/../
export PATH=$ SQOOP_HOME/bin:$PATH

3.修改配置文件$SQOOP_HOME/conf/sqoop-env.sh

cd $SQOOP_HOME/conf/sqoop-env-template.sh $SQOOP_HOME/conf/sqoop-env.sh
vim $SQOOP_HOME/conf/sqoop-env.sh
export HADOOP_HOME=/.../
export HADOOP_MAPRED_HOME=/.../(hadoop 安装目录)
export HIVE_HOME=/.../

4.添加MySQL jar 包到下

cp mysql-connector-java-xx-.bin.jar $SQOOP_HOME/lib/

5.检测
sqoop version

Sqoop 导入MySQL数据到HDFS

sqoop import --connect jdbc:mysql://localhost:3306/sqoop --username root --password root --table tableName -m 1 --delete-target-dir

–connect 指定要导入数据的数据库
–username 数据库中的用户名,密码
–password 密码
–table 需要导入的数据表
-m 并行度,默认是4,并行度决定最终输出到hdfs中文件个数
–delete-target-dir 因为sqoop是使用map操作,不能有已经存在的文件,所以如果有则删除
sqoop默认的导入路径是/user/用户名/表名
sqoop默认从关系型数据库中导入数据到hdfs的分隔符是逗号

Sqoop 导入HDFS数据到MySQL

导出前需要创建对应的导出表使其结构与导出数据对应.

sqoop export --connect jdbc:mysql://localhost:3306/sqoop --username root --password root --table tableName --columns “colnames1, colnames2” --export-dir /data --fields-terminated-by ‘t’ --lines-terminated-by ‘n’ -m 1

–connect 指定要导入数据的数据库
–username 数据库中的用户名,密码
–password 密码
–table 需要导入的数据表
–export-dir 导出目录
–fields-terminated-by 行分隔符
–lines-terminated-by  列分隔符
-m 并行度,默认是4,并行度决定最终输出到hdfs中文件个数
-Dsqoop.export.records.pre.statement 批量导入,一次导入多少行

Sqoop 导入MySQL数据到Hive

将MySQL数据导入到Hive的过程是将MySQL的数据导入HDFS,在用load函数将HDFS的文件加载到Hive中.

sqoop import --connect jdbc:mysql://localhost:3306/sqoop --username root --password root --table tableName -m 1 --delete-target-dir --hive-import --create-hive-table --hive-table tableInportName

–hive-import 表示将数据导入到Hive中
–create-hive-table 自动创建hive表
–hive-table hive表名
–hive-database 导入到指定的Hive数据库

其他的参数可通过查看

sqoop help
sqoop help command

最后

以上就是舒适盼望为你收集整理的sqoop安装和简单使用的全部内容,希望文章能够帮你解决sqoop安装和简单使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部