sqoop(数据迁移工具)-安装-学习

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/437689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 数据分析三剑客之 Pandas(五):统计计算与统计描述

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

【转】UWP 和 WPF 对比

本文告诉大家 UWP 和 WPF 的不同。 如果在遇到技术选择或者想和小伙伴吹的时候可以让他以为自己很厉害,那么请继续看。 如果在看这文章还不知道什么是 UWP 和 WPF 那么也没关系,下面会告诉大家。 实际上 Universal Windows Platform (UWP) 和 Windows …

Python 数据分析三剑客之 Pandas(六):GroupBy 数据分裂、应用与合并

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

错误: 找不到或无法加载主类 org.apache.flume.tools.GetJavaProperty

打开bin下的flume-ng 找到下面,添加红色框内容,即可 如果还有有关hbase的同样的错误(因为hadoop与hbase版本不兼容,更换我这里hadoop-2.7.7,hbase-2.0.6(一开始是2.1.5会出现这个错误)&#xff…

centos7安装telnet后/etc/xinetd.d/telnet下没有telnet

centos7的telnet配置文件是:/etc/xinetd.conf。centos7以前的是/etc/xinetd.d/telnet 因为装好telnet服务之后,默认是不开启服务的,下面我们需要修改文件来开启服务 需要把 disable 改成no

Python 数据分析三剑客之 Pandas(七):合并数据集

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

flume学习-含安装

1.Flume是什么:Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。 Flume组成架构 下面我们来详细介绍一下Flume架构中的组件。 1) Agent&#xff1…

Python 数据分析三剑客之 Pandas(八):数据重塑、重复数据处理与数据替换

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

【转】使用Azure Rest API获得Access Token介绍

1. 前言 本文主要描述了以java应用为客户端,使用Azure Rest接口的认证过程,帮助快速完成使用Azure Rest接口的第一步。 2. 读者 本文适合开发人员、IT运维人员阅读。 3. 方案架构说明 在我负责的某大型国企客户提出的混合云战略是:不仅要…

Flume-ng运行出错: Caused by: java.net.BindException: 地址已在使用org.apache.flume.lifecycle.LifecycleSupervis

Flume下杀死collector再恢复出现错误 2019-08-29 15:57:52,578 (lifecycleSupervisor-1-5) [ERROR - org.apache.flume.lifecycle.LifecycleSupervisor$MonitorRunnable.run(LifecycleSupervisor.java:251)] Unable to start EventDrivenSourceRunner: { source:Avro source r…

Python 数据分析三剑客之 Pandas(九):时间序列

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

Flume-ng 高可用搭建-与测试

前提: 1)五台虚拟机(三台也可以) 2)flume单节点测试并学会 3)hadoop集群搭建完成 Flume NG集群,架构图 Flume的存储可以支持多种,这里只列举了HDFS 角色分配 名称HOST角色Agent1chun1Web ServerAgent2chun2Web Ser…

【转】D365 FO第三方集成(一)---访问认证(应用注册)

从Axapta3.0的COM Business Connector,到AX4.0和AX2009的 .NET Business Connector,到AX2012的WCF Services,最后到D365FO的接口方式。 AX的接口演化,几乎见证了微软整个技术栈的变迁。 D365 FO的Web Services比起AX2012有了飞跃&…

【转】Postman系列一:Postman安装及使用过程中遇到的问题

一:Postman的简介、下载安装及界面说明 1.Postman的简单介绍 Postman是一款强大的网页调试和发送网页HTTP请求的工具,Postman让开发和测试人员做API(接口)测试变得更加简单。在我使用Postman之前还有一个版本,就是需要…

Hive报错:Exception in thread main java.lang.Incom。。。。 Class com.google.common.collect.ImmutableSotil

Exception in thread “main” java.lang.IncompatibleClassChangeError: Class com.google.common.collect.ImmutableSotil.NavigableMap Exception in thread "main" java.lang.IncompatibleClassChangeError: Class com.google.common.collect.ImmutableSotil.Na…

Python 数据分析三剑客之 Pandas(十):数据读写

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

Hive优化

一、 Fetch抓取 Fetch抓取是指,Hive中对某些情况的查询可以不必使用MapReduce计算。 例如:SELECT * FROM employees;在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台。 在hive-default…

COVID-19 肺炎疫情数据实时监控(python 爬虫 + pyecharts 数据可视化 + wordcloud 词云图)

文章目录【1x00】前言【2x00】思维导图【3x00】数据结构分析【4x00】主函数 main()【5x00】数据获取模块 data_get【5x01】初始化函数 init()【5x02】中国总数据 china_total_data()【5x03】全球总数据 global_total_data()【5x04】中国每日数据 china_daily_data()【5x05】境外…

【转】Postman系列二:Postman中get接口实战讲解(接口测试介绍,接口测试流程,头域操作)

一:接口测试介绍 接口测试:就是针对软件对外提供服务的接口输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能和接口描述文档的一致性。 接口测试好处:接口测试通常能对系统测试的更为彻底,更高的保…

hive或mysql报错Too many connections

in acquiring locks: com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initializ e pool: Data source rejected establishment of connection, message from server: “Too many connections” 显示:Too many connections &#xff0c…