最新推荐sqoop查看日志精选word文档 12页Word文档下载推荐.docx
- 文档编号:15765110
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:10
- 大小:21.02KB
最新推荐sqoop查看日志精选word文档 12页Word文档下载推荐.docx
《最新推荐sqoop查看日志精选word文档 12页Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《最新推荐sqoop查看日志精选word文档 12页Word文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
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.
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环境使用命令:
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将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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新推荐sqoop查看日志精选word文档 12页 最新 推荐 sqoop 查看 日志 精选 word 文档 12