Sqoop数据迁移工具
一、概述
sqoop 是 apache 旗下一款“ Hadoop 和关系数据库服务器之间传送数据”的工具。
导入数据: MySQL, Oracle 导入数据到 Hadoop 的 HDFS、 HIVE、 HBASE 等数据存储系统;
导出数据:从 Hadoop 的文件系统中导出数据到关系数据库 mysql 等
Sqoop 的本质还是一个命令行工具,和 HDFS, Hive 相比,并没有什么高深的理论。

二、工作机制
将导入或导出命令翻译成 mapreduce 程序来实现
在翻译出的 mapreduce 中主要是对 inputformat 和 outputformat 进行定制
三、sqoop安装
安装 sqoop 的前提是已经具备 java 和 hadoop 的环境
安装包下载地址 http://ftp.wayne.edu/apache/sqoop/1.4.6/
安装步骤 :
(1)准备安装包 sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz
(2) 解压安装包到安装目录
tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C apps/
cd apps
mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha/ sqoop1.4.6
(3) 进入到 conf 文件夹,找到 sqoop-env-template.sh,修改其名称为 sqoop-env.sh
cd conf
mv sqoop-env-template.sh sqoop-env.sh
(4) 修改 sqoop-env.sh

(5) 加入 mysql 驱动包到 sqoop1.4.6/lib 目录下
cp mysql-connector-java-5.1.39.jar apps/sqoop1.4.6/lib/
(6) 配置系统环境变量
vi /etc/profile
然后输入:
export SQOOP_HOME=/root/apps/sqoop1.4.6
export PATH=$PATH:$SQOOP_HOME/bin
然后保存退出
source /etc/profile
(7) 验证安装是否成功
sqoop –version

(8)出现如图所示画面,证明安装成功,那么接下来就可以正常使用了。
四、sqoop基本命令介绍


五、sqoop数据导入
“导入工具”导入单个表从 RDBMS 到 HDFS。表中的每一行被视为 HDFS 的记录。所有记录 都存储为文本文件的文本数据(或者 Avro、 sequence 文件等二进制数据)
1、导入mysql数据到HDFS
(1)普通导入

如果我们没有给该命令指定导出的文件的存储路径,那么默认会保存在 HDFS 上的
/user/root/help_keyword 目中
其中,第一个 user 是固定的,第二个 root,表示链接的用户名,第三个表示表名


从以上结果可以得出一个结论: 如果没有指定路径,则会按默认规则生成路径,如果没有 指定分隔符,默认按照逗号分隔
(2)指定分隔符和导入路径


(3)导入where条件数据
我们可以导入表的使用 Sqoop 导入工具, "where"子句的一个子集。它执行在各自的数据库 服务器相应的 SQL 查询,并将结果存储在 HDFS 的目标目录。 

(4)导入 Query 结果数据


2、导入 MySQL 到 HIVE
Sqoop 导入关系型数据到 hive 的过程是先导入到 hdfs,然后再 load 进入 hive
Sqoop数据迁移工具的更多相关文章
- Sqoop数据迁移工具的使用
文章作者:foochane 原文链接:https://foochane.cn/article/2019063001.html Sqoop数据迁移工具的使用 sqoop简单介绍 sqoop数据到HDF ...
- Sqoop 数据迁移工具
Sqoop 数据迁移工具 sqoop : SQL to hadOOP 两个功能: 1. RDB 向HDFS导入 2. HDFS向RDB导入 注:拷贝mysql-connector.jar 和 json ...
- 数据迁移工具sqoop
有问题........数据迁移工具sqoop sqoop安装 [root@sqoop data]# wget wget http://apache.fayea.com/sqoop/1.4.6/sqo ...
- sqoop 数据迁移
sqoop 数据迁移 1 概述 sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具. 导入数据:MySQL,Oracle导入数据到Hadoop的HDFS.HIVE.H ...
- sqoop数据校验
sqoop数据校验 # check data oracle_cnt=$(sqoop eval \ -Dmapred.job.queue.name=${queue} \ --connect ${conn ...
- 撸了个 django 数据迁移工具 django-supertube
撸了个 django 数据迁移工具 django-supertube 支持字段映射和动态字段转化. 欢迎 star,issue https://github.com/FingerLiu/django- ...
- 【Hadoop离线基础总结】Sqoop数据迁移
目录 Sqoop介绍 概述 版本 Sqoop安装及使用 Sqoop安装 Sqoop数据导入 导入关系表到Hive已有表中 导入关系表到Hive(自动创建Hive表) 将关系表子集导入到HDFS中 sq ...
- 数据迁移工具Sqoop和DataX功能比较
本文转载自: http://www.cnblogs.com/panfeng412/archive/2013/04/29/data-migration-tool-sqoop-and-datax.html ...
- sqoop数据导出导入命令
1. 将mysql中的数据导入到hive中 sqoop import --connect jdbc:mysql://localhost:3306/sqoop --direct --username r ...
随机推荐
- 在Notepad++中为Python配置编译环境
方法1:按下F5 输入d:\Python25\python.exe "$(FULL_CURRENT_PATH)" 其中"d:\Python25\python.exe&qu ...
- js插件实现一键复制功能
clipboard.js 可以实现纯 JS 的从浏览器复制文本到系统剪贴板的功能. 使用方法: 1. 下载 clipboard.js,并在页面中引入该插件.clipboard.js 下载地址: htt ...
- 进阶篇:4.1)DFA设计指南:简化产品设计(kiss原则)
本章目的:理解kiss原则,明确如何简化产品的设计. 1.前言:kiss原则,优化产品的第一原则 如果要作者选出一个优化产品的最好方法,那一定是kiss原则莫属.从产品的整体设计到公差的分析,kiss ...
- JMeter与WireShark
最近在学习JMeter,刚学了一点皮毛,就掉入了WireShark的坑,我发现在学习的道路上就是不断的给自己挖坑,之前在学习LoadRunner的道路上,遇到的坑更大,就单纯的安装LR就耗费了两个星期 ...
- OpenLDAP配置TLS加密传输
原文发表于cu:2016-07-04 参考文档: 基于OpenSSL自建CA与颁发SSL证书:http://seanlook.com/2015/01/18/openssl-self-sign-ca/ ...
- 53. [LeetCode] Maximum Subarray
Given an integer array nums, find the contiguous subarray (containing at least one number) which has ...
- 联邦快递 IE和IP的区别 Fedex IE VS Fedex IP
什么是FedEx IP? FedEx IP指的是联邦快递优先服务,时效比较快些,相对来说价格也比普通的高一些. 什么是FedEx IE? FedEx IE指的是联邦快递经济服务,时效与FedEx IP ...
- 用 Python 3 的 async / await 做异步编程
前年我曾写过一篇<初探 Python 3 的异步 IO 编程>,当时只是初步接触了一下 yield from 语法和 asyncio 标准库.前些日子我在 V2EX 看到一篇<为什么 ...
- 王者荣耀交流协会--第2次Scrum会议
Scrum master:袁玥 要求1:工作照片 要求2:时间跨度:2017年10月14号 6:02--6:43 共计41min 要求3:地点:一食堂二楼两张桌子旁(靠近卖方便面那边) 要求4:立 ...
- 关于jsp之间href传参(中文)乱码问题
在A.jsp中有href传值 <a href=\"6.jsp?param="+rs.getString(2)+"\">" 在B.jsp中使 ...