Home  >  Article  >  Database  >  使用Sqoop将MySQL数据导入到Hadoop

使用Sqoop将MySQL数据导入到Hadoop

WBOY
WBOYOriginal
2016-06-07 16:42:24923browse

Sqoop的安装也很简单。 完成sqoop的安装后,可以这样测试是否可以连接到mysql(注意:mysql的jar包要放到 SQOOP_HOME/lib 下):

Hadoop的安装配置这里就不讲了。

Sqoop的安装也很简单。

Sqoop的安装与使用 

 

完成sqoop的安装后,可以这样测试是否可以连接到mysql(注意:mysql的jar包要放到 SQOOP_HOME/lib 下):

sqoop list-databases --connect jdbc:mysql://192.168.1.109:3306/ --username root --password 19891231

结果如下

使用Sqoop将MySQL数据导入到Hadoop

即说明sqoop已经可以正常使用了。

 

CentOS安装和配置Hadoop2.2.0 

Ubuntu 13.04上搭建Hadoop环境

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

Ubuntu下Hadoop环境的配置

单机版搭建Hadoop环境图文教程详解

搭建Hadoop环境(在Winodws环境下用虚拟机虚拟两个Ubuntu系统进行搭建)

 

下面,要将mysql中的数据导入到hadoop中。

我准备的是一个300万条数据的身份证数据表:

使用Sqoop将MySQL数据导入到Hadoop

 

先启动hive(使用命令行:hive 即可启动)

 

然后使用sqoop导入数据到hive:

sqoop import --connect jdbc:mysql://192.168.1.109:3306/hadoop --username root --password 19891231 --table test_sfz --hive-import

 

sqoop 会启动job来完成导入工作。

使用Sqoop将MySQL数据导入到Hadoop

使用Sqoop将MySQL数据导入到Hadoop

 

完成导入用了2分20秒,,还是不错的。

 

在hive中可以看到刚刚导入的数据表:

使用Sqoop将MySQL数据导入到Hadoop

 

我们来一句sql测试一下数据:

select * from test_sfz where id

使用Sqoop将MySQL数据导入到Hadoop

可以看到,hive完成这个任务用了将近25秒,确实是挺慢的(在mysql中几乎是不费时间),但是要考虑到hive是创建了job在hadoop中跑,时间当然多。

 

接下来,我们会对这些数据进行复杂查询的测试:

我机子的配置如下:

使用Sqoop将MySQL数据导入到Hadoop

hadoop 是运行在虚拟机上的伪分布式,虚拟机OS是ubuntu12.04 64位,配置如下:

使用Sqoop将MySQL数据导入到Hadoop

更多详情见请继续阅读下一页的精彩内容:

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn