大数据辅助组件Apache Sqoop 如何使用-大萝卜博客网

sqoop介绍

Apache Sqoop是在Hadoop生态体系和RDBMS体系之间传送数据的一种工具。来自于Apache软件基金会提供。
Sqoop工作机制是将导入或导出命令翻译成mapreduce程序来实现。在翻译出的mapreduce中主要是对inputformat和outputformat进行定制。
Hadoop生态系统包括:HDFSHive、Hbase等
RDBMS体系包括:Mysql、Oracle、DB2等
Sqoop可以理解为:“SQL 到 Hadoop 和 Hadoop 到SQL”。

站在Apache立场看待数据流转问题,可以分为数据的导入导出:

Import:数据导入。RDBMS----->Hadoop
Export:数据导出。Hadoop---->RDBMS

sqoop安装

安装sqoop的前提是已经具备java和hadoop的环境。
最新稳定版: 1.4.6
配置文件修改:

cd $SQOOP_HOME/conf
mv sqoop-env-template.sh sqoop-env.sh
vi sqoop-env.sh
export HADOOP_COMMON_HOME= /export/servers/hadoop-2.7.5 
export HADOOP_MAPRED_HOME= /export/servers/hadoop-2.7.5
export HIVE_HOME= /export/servers/hive
加入mysql的jdbc驱动包
cp /hive/lib/mysql-connector-java-5.1.32.jar $SQOOP_HOME/lib/

验证启动

bin/sqoop list-databases \
--connect jdbc:mysql://localhost:3306/ \
--username root --password hadoop

本命令会列出所有mysql的数据库。
到这里,整个Sqoop安装工作完成。

Sqoop导入

下面的语法用于将数据导入HDFS。

$ sqoop import (generic-args) (import-args)
  • 全量导入mysql表数据到HDFS
bin/sqoop import \
--connect jdbc:mysql://node-1:3306/userdb \
--username root \
--password hadoop \
--delete-target-dir \
--target-dir /sqoopresult \
--table emp --m 1
其中--target-dir可以用来指定导出数据存放至HDFS的目录;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值