sqoop

1)概述

sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。
导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;
导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等

2)工作机制

将导入或导出命令翻译成mapreduce程序来实现,在翻译出的mapreduce中主要对inputformat 和outputformat进行定制

3)sqoop安装:

1.前提有hadoop与jdk

下载:官网

2.修改配置文件

改名字

cd $SQOOP_HOME/conf
mv sqoop-env-template.sh sqoop-env.sh

在sqoop-env.sh中添加

export HADOOP_COMMON_HOME=/uer/local/chun/hadoop-2.7.7/
export HADOOP_MAPRED_HOME=/uer/local/chun/hadoop-2.7.7/
export HIVE_HOME=/usr/local/hive
把jdbc驱动包加入到lib下,注意驱动版本向下兼容

4)启动验证

cd $SQOOP_HOME/bin
sqoop-version
预期的输出:
sqoop-version
Warning: /usr/local/sqoop-1.4.6/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /usr/local/sqoop-1.4.6/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
错误: 找不到或无法加载主类 org.apache.hadoop.hbase.util.GetJavaProperty
19/08/27 21:08:58 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6
Sqoop 1.4.6
git commit id c0c5a81723759fa575844a0a1eae8f510fa32c25
Compiled by root on Mon Apr 27 14:38:36 CST 2015

无法找不到或无法加载主类 org.apache.hadoop.hbase.util.GetJavaProperty:

因为hbase和hadoop版本有点不兼容,咱们没出现什么错误,就咱们不更换,我这里hbase是2.1.5,换到2.0.6就可以。

5)验证sqoop到mysql业务库之间的连通性:

 sqoop-list-databases --connect jdbc:mysql://localhost:3306 --username root --password adminsqoop-list-tables --connect jdbc:mysql://localhost:3306/test --username root --password admin

6)Sqoop的数据导入

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

1。从mysql导出到hdfs

bin/sqoop import   \       //sqoop命令表导入
--connect jdbc:mysql://localhost:3306/hive   \
//告诉jdbc,连接mysql的url连接MySQL使用的库
--username root  \       //连接mysql的用户名
--password admin   \     //连接mysql的密码
--target-dir  \             //目标的目录
/sqooptest  \
--fields-terminated-by ‘,’  \   //指定输出文件中的字段分隔符
--table emp   \            //你要导的表
--split-by id   \            //如果你的map指定的个数大于1,那就必须指定一个字段
--m 1                     //指定的maptask()

\可以转到下一行继续写

可以查看导出的数据 cat查看part-m-*

hdfs dfs -cat /mysql/import1/part-m-*
dake 22 failedman
dake 23 goodman
chun3 25 failedman
chun1 24 successfulman
chun2 23 goodman

2.导入关系表到HIVE

sqoop import --connect jdbc:mysql://localhost:3306/test --username root --password root --table emp --hive-import  --split-by id  --m 1

3.导入表数据子集

bin/sqoop import \
--connect jdbc:mysql://localhost:3306/test \
--username root \
--password admin \
--where "city ='sec-bad'" \
--target-dir /wherequery \
--table emp_add \--m 1

sqoop(数据迁移工具)-安装-学习相关推荐

  1. Sqoop数据迁移工具的使用

    文章作者:foochane 原文链接:https://foochane.cn/article/2019063001.html Sqoop数据迁移工具的使用 sqoop简单介绍 sqoop数据到HDFS ...

  2. 3.2.3 Sqoop 数据迁移工具, 导入数据import, MySQL到HDFS/Hive, 导出数据export,增量数据导入, Sqoop job,常用命令及参数

    目录 数据迁移工具 -- Sqoop 第一部分 Sqoop概述 第二部分 安装配置 第三部分 应用案例 第 1 节 导入数据import MySQL 到 HDFS MySQL 到 Hive 第 2 节 ...

  3. 大数据学习笔记45:Sqoop - 数据迁移工具

    文章目录 一.Sqoop概述 二.下载.安装和配置Sqoop 1.下载sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 2.将sqoop-1.4.7.bin__hadoop-2 ...

  4. sqoop数据迁移工具

    sqoop sqoop发行了2个版本,在同一个hadoop集群中不兼容,常用sqoop1的版本: sqoop1: 1.4.x sqoop2: 1.99.x版本 相同产品: 阿里DataX 架构 客户端 ...

  5. 第八章:sqoop数据迁移工具

    sqoop是专门用来迁移数据的,它可以把数据库中的数据迁移到HDFS文件系统,当然也可以从HDFS文件系统导回到数据库. 我来说一下Sqoop的使用场景,假如你们公司有个项目运行好长时间了,积累了大量 ...

  6. 大数据之spark学习记录二: Spark的安装与上手

    大数据之spark学习记录二: Spark的安装与上手 文章目录 大数据之spark学习记录二: Spark的安装与上手 Spark安装 本地模式 Standalone 模式 基本配置 步骤1: 复制 ...

  7. 如何进入大数据领域,学习路线是什么?

    目录 大数据时代的出现简单的讲是海量数据同完美计算能力结合的结果,确切的说是移动互联网.物联网产生了海量的数据,大数据计算技术完美地解决了海量数据的收集.存储.计算.分析的问题.当我们最初谈大数据的时 ...

  8. 大数据从何学起?大数据脑图+学习路线清晰的告诉你!

    近些年,大数据的火热可谓是技术人都知道啊,很多人呢,也想学习大数据相关,但是又不知道从何下手,所以今天在这里分享几个大数据脑图,希望可以让你清楚明白从哪里入门大数据,知道该学习以及掌握哪些知识点:当然 ...

  9. 大数据工程师需要学习哪些技术?

    "大数据"是一个体量特别大,数据类别特别大的数据集,并且这样的数据集无法用传统数据库工具对其内容进行抓取.管理和处理. 1. 数据体量巨大.从TB级别,跃升到PB级别. 2. 数据 ...

  10. 大数据技术怎么学习,需要具备什么基础?简单说一下

    大数据又称黑暗数据,是指人脑无法处理的海量数据聚合成的信息资产,在民生.IT.金融.农业.通信等方面都有广泛应用.未来5年大数据行业呈井喷趋势,人才需求火爆,2018年大数据人才缺口更是高达900万. ...

最新文章

  1. 【c语言】蓝桥杯算法提高 企业奖金发放
  2. 2018机器学习和AI最大突破没找到,但有人发现了最大障碍!
  3. 用python画猪_用python画小猪票佩奇
  4. 个人计算机与微型计算机的区别与联系,微处理器、微型计算机和微型计算机系统之间有何联系与区别?...
  5. 英特尔Optane固态硬盘年内问世 性能暴增
  6. getchar(),putchar()用法
  7. 遇到oracle错误1012,跟着感觉走,解决安装RAC过程中OCR完整性错误,待深入剖析...
  8. Devexpress Chart series 点击时获取SeriesPoint的值
  9. oracle grid安装看不到config,【图片】【rac11g安装问题】出了问题特来请教各位大侠【oracle吧】_百度贴吧...
  10. 草根最容易逆袭的地方就是互联网
  11. 11月国内浏览器市场份额:IE、Chrome均遭蚕食
  12. Spark(Hive)对字符串数值的排序
  13. xp系统计算机无法用搜索功能,XP系统搜索功能无法使用的六种解决方法
  14. ai人工智能_AI破坏已经开始
  15. Java异常之 Error 和 Exception
  16. 使用IText组件在PDF文档上绘制椭圆形印章的算法分析及代码分享
  17. Redis集群系列一 —— AKF拆分原则
  18. 计算机中二进制的加法
  19. Index of索引
  20. Gauss消元法求解线性方程组的Matlab实现(列主元、全主元)

热门文章

  1. WindowManager.LayoutParams类
  2. 随手小记·080911
  3. 会php学java入门要多久_php8(java入门要多久)
  4. ajax 批量上传图片插件,TinyMCE多图片批量上传(Ajax)教程
  5. Linux表空间扩容,linux下oracle表空间导致磁盘空间不足
  6. linux 选择文件指定的行数据类型,06练习题
  7. 运行时异常与一般异常有何异同_Java修行第015天,异常机制和常用类
  8. gui显示文本动态框
  9. python接口自动化测试框架实战从设计到开发_Python接口自动化测试框架实战 从设计到开发...
  10. python支持gui编程_Python GUI编程完整示例