最新推荐sqoop查看日志精选word文档 12页.docx

上传人:b****3 文档编号:2854061 上传时间:2022-11-15 格式:DOCX 页数:10 大小:21.02KB
下载 相关 举报
最新推荐sqoop查看日志精选word文档 12页.docx_第1页
第1页 / 共10页
最新推荐sqoop查看日志精选word文档 12页.docx_第2页
第2页 / 共10页
最新推荐sqoop查看日志精选word文档 12页.docx_第3页
第3页 / 共10页
最新推荐sqoop查看日志精选word文档 12页.docx_第4页
第4页 / 共10页
最新推荐sqoop查看日志精选word文档 12页.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

最新推荐sqoop查看日志精选word文档 12页.docx

《最新推荐sqoop查看日志精选word文档 12页.docx》由会员分享,可在线阅读,更多相关《最新推荐sqoop查看日志精选word文档 12页.docx(10页珍藏版)》请在冰豆网上搜索。

最新推荐sqoop查看日志精选word文档 12页.docx

最新推荐sqoop查看日志精选word文档12页

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!

==本文为word格式,下载后可方便编辑和修改!

==

sqoop查看日志

篇一:

sqoop使用手册

Author:

路帅

1.Sqoop介绍概述

Hadoop的数据传输工具sqoop是Apache顶级项目,主要用来在Hadoop和关系数据库、数据仓库、NoSql系统中传递数据。

通过sqoop,我们可以方便的将数据从关系数据库导入到HDFS、Hbase、Hive,或者将数据从HDFS导出到关系数据库。

sqoop架构非常简单,其整合了Hive、Hbase和Oozie,通过map-reduce任务来传输数据,从而提供并发特性和容错。

Sqoop集成了工作流程协调的ApacheOozie,定义安排和自动导入/导出任务。

sqoop主要通过JDBC和关系数据库进行交互。

理论上支持JDBC的database都可以使用sqoop和hdfs进行数据交互。

但是,只有一小部分经过sqoop官方测试,如下:

版本介绍

201X年3月,sqoop从Apache的孵化器中毕业。

成为Apache的Top-LevelProject。

下图提供了sqoop从诞生到目前的简要概述:

第1页

Sqoop的版本到目前为止,主要分为sqoop1和sqoop2,sqoop1.4.4之前的所有版本称为sqoop1,之后的版本sqoop1.991,sqoop1.99.2,sqoop1.99.3称为sqoop2。

目前sqoop1的稳定版本是sqoop1.4.4,sqoop2的最新版本是sqoop1.99.3。

Sqoop1和sqoop2的区别

1.3.1.

工作模式

sqoop1基于客户端模式,用户使用客户端模式,需要在客户端节点安装sqoop和连接器/驱动器

sqoop2基于服务的模式,是sqoop1的下一代版本,服务模式主要分为sqoop2server和client,用户使用服务的模式,需要在sqoop2server安装连接器/驱动器,所有配置信息都在sqoop2server进行配置。

1.3.2.MR角度透视其区别

sqoop只提交一个map作业,数据的传输和转换都由Mappers来完成。

sqoop2提交一个MapReduce作业,Mappers负责从数据源传输(transporting)数据,Reducers负责根据指定的源来转换(transforming)数据。

1.3.3.从安全的角度

另外一个重要的区别是sqoop2从安全的角度进行设计,管理员来配置数据的源和目标,然而,操作者直接使用已经建好的链接,不需要了解该链接的具体细节信息,按需获取即可。

1.3.4.其他方面

WebUI:

sqoop只提供了CLI方式,sqoop2同时也支持WebUI的方式。

SqoopServer以REST服务方式提供CLI和WebUI

第2页

另外,Sqoop2REST服务接口能更容易的集成其他框架进来,比如Oozie,用来定义Sqoop2工作流。

注意点:

sqoop是Hue(HUE-1214)的模块,不是ASF的部分。

1.3.5.功能差异:

MovingfromSqoop1toSqoop2:

Sqoop2isessentiallythefutureoftheApacheSqoopproject.However,sinceSqoop2currentlylackssomeofthefeaturesofSqoop1,ClouderarecommendsyouuseSqoop2onlyifitcontainsallthefeaturesrequiredforyourusecase,otherwise,continuetouseSqoop1.Feature

ConnectorsforallmajorRDBMS

Sqoop1

Supported.

Sqoop2

Notsupported.

Workaround:

UsethegenericJDBCConnectorwhichhasbeentestedonthefollowingdatabases:

MicrosoftSQLServer,PostgreSQL,MySQLandOracle.

ThisconnectorshouldworkonanyotherJDBCcompliantdatabase.However,performancemightnotbecomparabletothatofspecializedconnectorsinSqoop.

KerberosIntegration

SecuritySupported.Notsupported.

EncryptionofStoredPasswordsNotsupported.Noworkaround.

SupportedusingDerby's.

Disclaimer:

AlthoughexpectedtoworkinthecurrentversionofSqoop2,thisconfigurationhasnotbeenverified.

DatatransferfromRDBMStoHiveorHBase

Supported.Notsupported.

Workaround:

Followthistwo-stepapproach.

1.ImportdatafromRDBMSintoHDFS

2.LoaddataintoHiveorHBasemanuallyusingappropriatetoolsandcommandssuchastheLOADDATAstatementinHive

第3页

Sqoop1

Sqoop1架构

sqoop架构非常简单,其整合了Hive、Hbase和Oozie,通过map任务来传输数据,map负责数据的加载、转换,存储到HDFS、Hbase或者Hive中。

数据大概流程

1.读取要导入数据的表结构,生成运行类,默认是QueryResult,打成jar包,然后提交给Hadoop2.设置好job,主要也就是设置好sqoop的各个参数

3.这里就由Hadoop来执行MapReduce来执行Import命令了,

第4页

1)首先要对数据进行切分,也就是DataSplit

DataDrivenDBInputFormat.getSplits(JobContextjob)2)切分好范围后,写入范围,以便读取

DataDrivenDBInputFormat.write(DataOutputoutput)这里是lowerBoundQueryandupperBoundQuery

3)读取以上2)写入的范围

DataDrivenDBInputFormat.readFields(DataInputinput)4)然后创建RecordReader从数据库中读取数据

DataDrivenDBInputFormat.createRecordReader(InputSplitsplit,TaskAttemptContextcontext)

5)创建Map

TextImportMapper.setup(Contextcontext)

6)RecordReader一行一行从关系型数据库中读取数据,设置好Map的Key和Value,交给Map

DBRecordReader.nextKeyValue()7)运行map

TextImportMapper.map(LongWritablekey,SqoopRecordval,Contextcontext)最后生成的Key是行数据,由QueryResult生成,Value是NullWritable.get()

第5页

篇二:

使用sqoop将mysql中数据导入到hive中

接上一篇文章:

Hadoop学习全程记录——hive入门

hive是Facebook的产品,最早研发它的目的是用它来对Facebook网站每天产生的海量日志进行分析。

有时我们需要分析的数据可能存在数据库中,这时我们可以利用sqoop将mysql中数据导入到hive中。

操作系统:

在windows下使用wubi安装了ubuntu10.10

hadoop版本:

hadoop-0.20.2.tar.gz

zookeeper版本:

zookeeper-3.3.3.tar.gz

hive版本:

hive-0.6.0.tar.gz

sqoop版本:

sqoop-1.2.0-CDH3B4.tar.gz

其中sqoop是将mysql数据导入hive的工具。

这篇文章/cdh/3/sqoop-1.2.0-CDH3B4/SqoopUserGuide.html比较详细得介绍了sqoop的使用。

主要的使用命令为:

Java代码

1.$sqoopimport--connectjdbc:

mysql:

//IP:

PORT/DATABASE--usernameUSERNAME--passwordPASSWORD--tableTABLE--hive-import

通过上面的命令我们就能把数据库DATABASE中的TABLE表导入到hive中了,在hive环境使用命令:

Java代码

1.hive>showtables;

就能发现多了一个TABLE表了,接下来就可以使用hive对表中数据进行分析了。

在使用过程中可能遇到的问题:

sqoop依赖zookeeper,所以必须配置ZOOKEEPER_HOME到环境变量中。

?

sqoop-1.2.0-CDH3B4依赖hadoop-core-0.20.2-CDH3B4.jar,所以你需要下载hadoop-0.20.2-CDH3B4.tar.gz,解压缩后将

hadoop-0.20.2-CDH3B4/hadoop-core-0.20.2-CDH3B4.jar复制到

sqoop-1.2.0-CDH3B4/lib中。

?

sqoop导入mysql数据运行过程中依赖mysql-connector-java-*.jar,所以你需要下载mysql-connector-java-*.jar并复制到

sqoop-1.2.0-CDH3B4/lib中。

?

只要注意这几点,我们就能使用sqoop将mysql中的表数据导入到hive进行并行计算分析了,当然只有在mysql中存在海量数据时才使用这个方法,一般数据量时,使用mysql的SQL语句已经足够了。

篇三:

Sqoop

Sqoop的用法

1.系统配置

电脑1(LenovoE420),win764位系统,8G内存,此电脑虚拟机上运行两个ubuntu14.10系统。

电脑2(LenovoSL410),win764位系统,4G内存,此电脑虚拟机上运行一个ubuntu14.10系统。

虚拟机:

Vmware10.0

Hadoop2.7.0

Zookeeper3.4.6

Sqoop1.4.4

2.Sqoop简介

Sqoop主要用于在HADOOP(Hive)与传统数据库之间进行数据的传递。

可以将一个关系型数据库(mysql,oracle..)中的数据导入Hadoop的HDFS中,也可以将HD

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1