sqoop数据迁移

概述

sqoop是apache旗下一款Hadoop和关系数据库服务器之间传送数据”的工具。

导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;

导出数据:从Hadoop的文件系统中导出数据到关系数据库

 

工作机制

将导入或导出命令翻译成mapreduce程序来实现

在翻译出的mapreduce中主要是对inputformat和outputformat进行定制

 

 sqoop安装

安装sqoop的前提是已经具备java和hadoop的环境

下载sqoop

http://sqoop.apache.org/

下载后上传到虚拟机并解压

tar -zxvf sqoop-1.4.2.bin__hadoop-2.0.0-alpha.tar.gz -C /soft(解压)

mv sqoop-1.4.2.bin sqoop(改名)

修改配置文件

$ cd /soft/sqoop/conf

$ mv sqoop-env-template.sh sqoop-env.sh

打开sqoop-env.sh并编辑下面几行:

export HADOOP_COMMON_HOME=/soft/hadoop/

export HADOOP_MAPRED_HOME=/soft/hadoop/

export HIVE_HOME=/soft/hive

环境变量 sudo nano /etc/profile

export SQOOP_HOME=/soft/sqoop

export PATH=$PATH:$SQOOP_HOME/bin

 

加入mysql的jdbc驱动包

cp  /soft/hive/lib/mysql-connector-java-5.1.28.jar   $SQOOP_HOME/lib/

验证启动

sqoop-version

预期的输出:

18/08/10 14:52:32 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6

Sqoop 1.4.6 git commit id 5b34accaca7de251fc91161733f906af2eddbe83

Compiled by abe on Fri Aug 1 11:19:26 PDT 2015

到这里,整个Sqoop安装工作完成。