概述
大数据之Sqoop的学习
Sqoop的概念和功能
sqoop是实现hadoop与关系型数据库(RDBMS)之间的数据迁移工具。通过sqoop可以很方便的将RDBMS的数据和hdfs、hbase、hive上的数据进行相互导入导出。
Sqoop的安装
sqoop的安装配置过程
- 下载sqoop的安装包
- 将sqoop的安装包解压
配置环境变量
运行命令行
sudo gedit /etc/profile
把下面的命令写入profile文件中
export SQOOP_HOME=/home/hadoop/sqoop-1.4.6
为sqoop压缩包解压以后的文件
export PATH=$PATH:$SQOOP_HOME/bin
更新环境变量的值,使其生效,在命令行中输入
source /etc/profile
配置$SQOOP_HOME/conf/sqoop-env.sh
将HADOOP_COMMON_HOME和HADOOP_MAPPED_HOME设置为hadoop文件的位置因为sqoop是hadoop与关系型数据库之间的数据交换,所以需要使用相关数据的jar包,这儿我们用的是mysql,所以需要下载mysql的链接jar包,然后放在sqoop的家目录下的lib目录下。下载链接:mysql-connector-java-5.1.32-bin.jar
命令行中运行下面的命令,添加jar包
mv mysql-connector-java-5.1.32-bin.jar /usr/local/sqoop-1.4.6.bin_hadoop-2.0.4-alpha.tar.gz/lib/
安装完成后简单验证(显示所有数据库)
sqoop list-databases --connect jdbc:mysql://master:3306/ --username root --password 123456
如出现如下错误,修改mysql配置文件 #bind-address=127.0.0.1
sqoop的使用
- 利用sqoop将数据从mysql中导入到hdfs现在数据库中建立一个employee的表,字段有id,name,age,place,entry_time,position
,然后再填充一些数据。 接下来开始导入数据到hdfs,使用命令行指令如下:
sqoop import --connect jdbc:mysql://master:3306/liu --username root --password 123456 --table employees --target-dir /input/sqoop/sqoop_employees -m 1
sqoop import --connect jdbc:mysql://master:3306/liu --username root --table t1 -m 1 --target-dir /input/sqoop/sqoop_t2
前面的是全表导入,还可以增量导入,增量导入有两种模式,分别是append模式和lastmodified模式,分别针对表的insert操作和update操作做的增量导入。
Sqoop导入数据的时候也可以使用—query 使用sql语句将查询出来的数据导入到hadoop中
sqoop import --connect jdbc:mysql://115.29.52.14:3306/douban_movie --username shawn --password zhangHAO8 --query "select * from rating where $CONDITIONS limit 10" --target-dir hdfs://Fedora:9000/Movie_Recommend/input1 -m 1
利用sqoop导入数据到hive表只需要加上—hive-import 这个参数进行导入即可。但是首先要启动hive-server。
- .导入数据到hbase与前面的导入类似,导入到hbase中需要注意的是需要指定hbase的行键,如果表不存在的话就需要添加 –hbase-create-table 这个参数。
- 将hdfs上的数据导入到关系型数据库中。使用sqoop export操作,与 sqoop import 操作很类似。不过,导入关系型数据库中时,表必须存在,并且表的字段类型需要匹配。使用—input-fields-terminated-by 界定字段分割符,使用—input-lines-terminated-by 界定行分隔符。使用—columns 指定导入数据格式
最后
以上就是贪玩小蘑菇为你收集整理的大数据之sqoop的学习大数据之Sqoop的学习的全部内容,希望文章能够帮你解决大数据之sqoop的学习大数据之Sqoop的学习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复