大数据平台基础架构和常用处理工具_第1页
大数据平台基础架构和常用处理工具_第2页
大数据平台基础架构和常用处理工具_第3页
大数据平台基础架构和常用处理工具_第4页
大数据平台基础架构和常用处理工具_第5页
已阅读5页,还剩44页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大数据平台基础架构和常用处理工具大数据平台基础架构和常用处理工具—课程概要大数据在线分析处理和常用工具大数据离线处理和常用工具OLAP和OLTP处理和常用处理工具大数据平台基础架构和常用处理工具大数据在线分析处理和常用工具大数据在线分析处理和常用工具—课时知识点大数据在线分析处理的特点Flume介绍Spark和Storm介绍HBase介绍大数据在线分析处理和常用工具—大数据在线分析处理的特点数据源源不断的到来;数据需要尽快的得到处理,不能产生积压;处理之后的数据量依然巨大,仍然后TB级甚至PB级的数据量;处理的结果能够尽快的展现;以上四个特点可以总结为数据的收集->数据的传输->数据的处理->数据的展现。其中数据的处理一般涉及数据的聚合,数据的处理和展现能够在秒级或者毫秒级得到响应。针对这些问题目前形成了Flume+kafka+Storm/Spark+Hbase/Redis的技术架构

大数据在线分析处理和常用工具—Flume介绍Flume专注于大数据的收集和传输,用来解决在线分析处理特点,数据源源不断的到来的问题。类似的大数据开源系统有Logstash和Fluentd。三者区别如下:Logstash主要和Elasticsearch、Kibana结合使用,俗称ELK框架;Logstash主要负责将数据源的数据转换成Elasticsearch认识的索引结构供Kibana查询Fluentd当前的使用者已经很少,逐渐被功能更强大的Flume代替了Flume能够支持多种数据源并且输出到多种输出源,并且支持多种格式的数据大数据在线分析处理和常用工具—Flume介绍架构图大数据在线分析处理和常用工具—Flume介绍架构图中Source用来连接输出源,Sink用来连接输出源,Channel是Flume内部数据传输通道(主要包括MemoryChannel和FileChannel)。其中Source连接的输入源可以但不限于:AvroThrift

Exec(unixcommand

output)JMS(JavaMessageService)KafkaNetCat(可以使用nc–lkport测试)SyslogCustom

大数据在线分析处理和常用工具—Flume介绍其中Sink连接的输出源可以但不限于:HdfsHive

AvroThrift

FileRollHbaseElasticSearch(提供的功能和Logstash一样,但是不如Logstash丰富,大多数时候需要自己构造ElasticSearch文档和索引)KafkaCustom大数据在线分析处理和常用工具—Flume介绍Flume也能多个Agent相连形成Agent链大数据在线分析处理和常用工具—Flume介绍Flume也能多个Agent进行数据源的合并大数据在线分析处理和常用工具—Spark和Storm介绍Spark

(SparkStreaming)和Storm专注于将数据按照时间窗口进行聚合和处理。用来解决在线分析处理特点,数据需要尽快的得到处理的问题。所以经常被称作流式处理框架。两者的区别如下:Storm提供比Spark更加实时的流式处理;Spark提供比Storm更加多的服务,Spark逐渐已经形成类似Hadoop的生态圈了。大数据在线分析处理和常用工具—Spark和Storm介绍目前Spark生态圈包含的生态系统如下(而且还正在逐渐的壮大中):大数据在线分析处理和常用工具—Spark和Storm介绍目前Spark有三种集群管理模式:Standalone:一种简单的集群管理,其包括一个很容易搭建集群的Spark;ApacheMesos:一种通用的集群管理,可以运行HadoopMapReduce和服务应用的模式;HadoopYARN:Hadoop2.0中的资源管理模式。其中第二种和第三种都是使用Spark做任务管理和调度,Mesos和Yarn做资源管理和调度大数据在线分析处理和常用工具—Spark和Storm介绍Spark工作组件大数据在线分析处理和常用工具—Spark和Storm介绍Strom结构图大数据在线分析处理和常用工具—Spark和Storm介绍Storm的工作组件:topology:一个拓扑是一个个计算节点组成的图,每个节点包换处理的逻辑,节点之间的连线表示数据流动的方向;spout:表示一个流的源头,产生tuple;bolt:处理输入流并产生多个输出流,可以做简单的数据转换计算,复杂的流处理一般需要经过多个bolt进行处理。大数据在线分析处理和常用工具—Spark和Storm介绍Strom拓扑topology的组成大数据在线分析处理和常用工具—HBase介绍HBase专注于大数据存储和提供查询,用来解决在线分析处理特点,数据经过处理后数据量依然巨大的存储和展现问题。类似的大数据开源系统有Cassandra。两者区别如下:Cassandra满足可用性和分区容忍性,允许数据的不一致(不同客户端可能看到不一样的情况)、Cassandra提供了类似SQL的CQL查询语言,查询方便;HBase满足一致性和分区容忍性,拥有强大的记录集一致性。HBase不支持SQL需要使用者部署第三方服务来支持SQL(如ApachePhoenix);大数据在线分析处理和常用工具—HBase介绍架构图大数据在线分析处理和常用工具—HBase介绍组成部件说明:Client:使用HBaseRPC机制与HMaster和HRegionServer进行通信;Zookeeper:存储hbase:meta表等元数据信息;HRegionServer把自己以Emphedral方式注册到Zookeeper中,HMaster随时感知各个HRegionServer的健康状况;Zookeeper避免HMaster单点问题;HMaster:主要负责Table和Region的管理工作:管理用户对表的增删改查操作管理HRegionServer的负载均衡,调整Region分布RegionSplit后,负责新Region的分布在HRegionServer停机后,负责失效HRegionServer上Region迁移大数据在线分析处理和常用工具—HBase介绍HRegionServer:HBase中最核心的模块,主要负责响应用户I/O请求,向HDFS文件系统中读写数据:HRegionServer管理一些列HRegion对象;每个HRegion对应Table中一个Region,HRegion由多个HStore组成;每个HStore对应Table中一个ColumnFamily的存储;大数据在线分析处理和常用工具—HBase介绍客户端写数据过程图大数据在线分析处理和常用工具—HBase介绍Region的Split和StoreFile的Compact:Client写入->存入MemStore,一直到MemStore满->Flush成一个StoreFile,直至增长到一定阈值->触发Compact合并操作->多个StoreFile合并成一个StoreFile,同时进行版本合并和数据删除->当StoreFilesCompact后,逐步形成越来越大的StoreFile->单个StoreFile大小超过一定阈值后,触发Split操作,把当前RegionSplit成2个Region,Region会下线,新Split出的2个孩子Region会被HMaster分配到相应的HRegionServer上,使得原先1个Region的压力得以分流到2个Region上。

由此过程可知,HBase只是增加数据,有所得更新和删除操作,都是在Compact阶段做的,所以,用户写操作只需要进入到内存即可立即返回,从而保证I/O高性能;大数据平台基础架构和常用处理工具大数据离线处理和常用工具大数据离线处理和常用工具—课时知识点大数据离线处理特点Hdfs介绍MapReduce介绍Hive介绍大数据离线处理和常用工具—大数据离线处理特点数据量巨大且保存时间长;在大量数据上进行复杂的批量运算;数据在计算之前已经完全到位,不会发生变化;能够方便的查询批量计算的结果;不像在线计算当前呈现的各种框架和架构,离线处理目前技术上已经成熟,大家使用的均是:使用Hdfs存储数据,使用MapReduce做批量计算,计算完成的数据如需数据仓库的存储,直接存入Hive,然后从Hive进行展现。大数据离线处理和常用工具—Hdfs介绍Hdfs是一种分布式文件系统,和任何文件系统一样Hdfs提供文件的读取,写入,删除等操作。Hdfs是能够很好的解决离线处理中需要存储大量数据的要求。Hdfs和本地文件系统的区别如下:Hdfs不支持随机读写;Hdfs是分布式文件系统,支持数据多备份;Hdfs多备份数据存放策略:第一个副本放在和client所在的node里(如果client不在集群范围内,则这第一个node是随机选取的,当然系统会尝试不选择哪些太满或者太忙的node);第二个副本放置在与第一个节点不同的机架中的node中(随机选择);第三个副本和第二个在同一个机架,随机放在不同的node中。如果还有更多的副本就随机放在集群的node里。大数据离线处理和常用工具—Hdfs介绍架构图大数据离线处理和常用工具—Hdfs介绍客户端读取数据流程图大数据离线处理和常用工具—Hdfs介绍客户端写入数据流程图大数据离线处理和常用工具—MapReduce介绍MapReduce是一种分布式批量计算框架,分为Map阶段和Reduce阶段。MapReduce能够很好的解决离线处理中需要进行大量计算的要求。MapReduce从出现到现在经历了第一代MapReducev1和第二代MapReduceYarn。Yarn框架相对于老的MapReduce框架有以下优势:减小了JobTracker的资源消耗,之前JobTracker既负责资源分配,也负责任务监控,Yarn将这两项任务分别交给了ResourceManager和ApplicationMaster

,减少了之前JobTracker单点失败的风险;MRv1将资源分别Mapslot和Reduceslot而且相互之前不能使用,Yarn将资源分别CPU、内存,相互之前能够通用,更加灵活也更加合理;大数据离线处理和常用工具—MapReduce介绍架构图大数据离线处理和常用工具—MapReduce介绍Yarn框架各个组件的功能:ResourceManager:负责资源的调度,由两个组件组成:调度器和应用管理ApplicationsManager(ASM);ApplicationsManager(ASM):主要用于管理AM;ApplicationMaster(AM):主要用于管理其对应的应用程序,如MapReduce作业,DAG作业等;NodeManager(NM):主要用于管理某个节点上的task和资源;Container:容器中封装了机器资源,如内存,CPU,磁盘,网络等,每个任务会被分配一个容器,该任务只能在该容器中执行,并使用该容器封装的资源大数据离线处理和常用工具—Hive介绍Hive是一种数据仓库,Hive中的数据存储于文件系统(大部分使用Hdfs),Hive提供了方便的访问数据仓库中数据的HQL方法,该方法将SQL翻译成MapReduce。能够很好的解决离线处理中需要对批量处理结果的查询。Hive将元数据存放在metastore中,Hive的metastore有三种工作方式:内嵌Derby方式:在同一时间只能有一个进程连接使用数据库;Local方式:使用本地Mysql数据库存储元数据;Remote方式:使用远程已经搭建完成的Mysql数据库存储元数据;大数据离线处理和常用工具—Hive介绍架构图大数据平台基础架构和常用处理工具OLAP和OLTP处理和常用工具OLAP和OLTP处理常用工具—课时知识点OLAP和OLTP特点Elasticsearch介绍Impala介绍Kylin介绍OLAP和OLTP处理常用工具—OLAP和OLTP特点OLAP(联机分析处理)和OLTP(联机事务处理)在查询方面的特点:OLTP单次查询返回数据量小,但是经常会涉及服务器端简单的聚合操作,要求查询响应速度快,一般应用于在线处理;OLAP单次查询返回数据量巨大,服务器端进行的处理复杂,经常包含上卷(从细粒度数据向高层的聚合)、下钻(将汇总数据拆分到更细节的数据)类似的操作;OLAP和OLTP处理常用工具—Elasticsearch介绍Elasticsearch是一种基于文档的底层使用Lucene进行检索的分布式NoSql集群。Elasticsearch检索大量文档类数据响应速度很快,更够为在线OLTP提供支持。类似的大数据开源系统有Solr。两者的区别如下Elasticsearch是分布式的。不需要其他组件,分发是实时的,被叫做”Pushreplication”并且完全支持ApacheLucene的接近实时的搜索;建立索引时,搜索效率下降,实时索引搜索效率不高;随着数据量的增加,Solr的搜索效率会变得更低,而Elasticsearch却不会有明显变化所以,Solr的架构不适合实时搜索的应用,也就不适合OLTP处理OLAP和OLTP处理常用工具—Elasticsearch介绍架构图OLAP和OLTP处理常用工具—Impala介绍Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的Hdfs和Hbase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点就是它的快速。所以,Impala使得在TB甚至PB级数据上进行OLTP分析成为可能。OLAP和OLTP处理常用工具—Impala介绍架构图OLAP和OLTP处理常用工具—Impala介绍Impala主要通过以下两种技术实现快速查询大量数据:实现了嵌套型数据的列存储;使用了多层查询树,使得任务可以在数千个节点上并行执行和聚合结果;列存储可以减少查询

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论