浅谈大数据生态圈.pptx

上传人:王** 文档编号:283658 上传时间:2023-04-27 格式:PPTX 页数:22 大小:2.32MB
下载 相关 举报
浅谈大数据生态圈.pptx_第1页
第1页 / 共22页
浅谈大数据生态圈.pptx_第2页
第2页 / 共22页
浅谈大数据生态圈.pptx_第3页
第3页 / 共22页
浅谈大数据生态圈.pptx_第4页
第4页 / 共22页
浅谈大数据生态圈.pptx_第5页
第5页 / 共22页
浅谈大数据生态圈.pptx_第6页
第6页 / 共22页
浅谈大数据生态圈.pptx_第7页
第7页 / 共22页
浅谈大数据生态圈.pptx_第8页
第8页 / 共22页
浅谈大数据生态圈.pptx_第9页
第9页 / 共22页
浅谈大数据生态圈.pptx_第10页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《浅谈大数据生态圈.pptx》由会员分享,可在线阅读,更多相关《浅谈大数据生态圈.pptx(22页珍藏版)》请在优知文库上搜索。

1、浅谈大数据生态体系何为大数据 大数据是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。 大数据的特点: 一是数据体量巨大。至少是PB级别以上量级的数据 二是数据类型多样。现在的数据类型不仅是文本形式,更多的是图片、视频、音频、地理位置信息等多类型的数据,个性化数据占绝对多数。 三是处理速度快。数据处理遵循“1秒定律”,可从各种类型的数据中快速获得高价值的信息。 四是价值密度低。以视频为例,一小时的视频,在不间断的监控过程中,可能有用的数据仅仅只有一两秒。大数据,首先你要能存的下大数据 传统的文件系统是单机的,不能横跨不同的机器。HDFS(Hadoop Distribut

2、ed FileSystem)的设计本质上是为了大量的数据能横跨成百上千台机器,但是你看到的是一个文件系统而不是很多文件系统。 比如你说我要获取/hdfs/tmp/file1的数据,你引用的是一个文件路径,但是实际的数据存放在很多不同的机器上。你作为用户,不需要知道这些,就好比在单机上你不关心文件分散在什么磁道什么扇区一样。HDFS为你管理这些数据。那什么是HDFS(Hadoop Distributed FileSystem)? 一个分布式存储系统 Google GFS的开源实现 数据存储采用master/slave架构模式,主要由Client、 NameNode、Secondary NameN

3、ode和DataNode组成HDFS:体系结构示意图 NameNode管理文件系统的命名空间和客户端对文件的访问操作。 DataNode 负责处理文件系统客户端的文件读写请求,并在 NameNode 的统一调度下进行数据块的创建、删除和复制工作。ClientNameNodeDataNodeblockblockblockblockblock.DataNodeblockblockblockblockblock.DataNodeblockblockblockblockblock.数据请求读写文件相关操作处理数据存的下数据之后,你就开始考虑怎么处理数据 虽然HDFS可以为你整体管理不同机器上的数据,但

4、是这些数据太大了。一台机器读取成TB或者PB量级的数据,一台机器慢慢跑也许需要好几天甚至好几周。 对于很多公司来说,单机处理是不可忍受的,比如微博要更新24小时热博,它必须在24小时之内跑完这些处理。那么我如果要用很多台机器处理,我就面临了如何分配工作,如果一台机器挂了如何重新启动相应的任务,机器之间如何互相通信交换数据以完成复杂的计算等等。 为了解决以上可能出现的问题,人们正式提出了MapReduce / Tez / Spark等等框架。MapReduce是第一代计算编程模型,Tez和Spark是第二代。MapReduce的设计,采用了极简化的计算模型,只有Map和Reduce两个计算过程,

5、通过这个模型,已经可以处理大数据领域很大一部分问题了。Hadoop 概述Hadoop 是 Apache 软件基金会旗下的一个开源分布式计算平台。以 Hadoop 分布式文件 系统(HDFS,Hadoop Distributed File System)和 MapReduce(Google MapReduce 的开源实现)为核心的 Hadoop,为用户提供了系统底层细节透明的分布式基础架构。HDFS 的高容错性、高伸缩性等优点允许用户将 Hadoop 部署在低廉的硬件上, 形成分布式系统; MapReduce 分布式编程模型允许用户在不了解分布式系统底层细节的情况下开发并行应用程序。所以,用户可

6、以利用 Hadoop 轻松地组织计算机资源,从而搭建自己的分布式计算平台,并且可以充分利用集群的计算和存储能力,完成海量数据的处理什么是MapReduce?找出一仓库黄豆中最大的n个黄豆如何解决?一仓库黄豆一桶黄豆一桶黄豆一桶黄豆一桶黄豆筛子筛子筛子筛子黄豆黄豆黄豆黄豆一桶黄豆筛子黄豆找N个人一起筛黄豆,最后把每个人筛出的K个黄豆放在一起 (总共N*K个黄豆),再交由一个人筛出N*K个黄豆里最大的K个 (分布式计算)MAPReduceMapReduce模型概述 一个 MapReduce 作业(job)通常会把输入的数据集切分为若干独立的数据块,由 map 任务(task)以完全并行的方式处理它

7、们。框架会对 map 的输出先进行排序,然后把结果输入给 reduce 任务。通常作业的输入和输出都会被存储在文件系统中。整个框架负责任务的调度和监控,以及重新执行已经失败的任务。Map-Reduce 流程MapReduce 模型首先将用户的原始数据源进行分块,然后分别交给不同的 Map 任务区处理。Map 任务从输入中解析出 Key/Value 对集合,然后对这些集合执行用户自行定义的 Map 函数得到中间结果,并将该结果写入本地硬盘。Reduce 任务从硬盘上读取数据之后, 会根据 key 值进行排序,将具有相同 key 值的组织在一起。最后用户自定义的 Reduce 函数会作用于这些排好

8、序的结果并输出最终结果。MapReduce的缺点Hadoop的一个最主要缺陷: MapReduce计算模型延迟过高,无法胜任实时、快速计算的需求,因而只 适用于离线批处理的应用场景。1、表达能力有限:计算都必须要转化为Map和Reduce两个操作,但这并不是适合所有的情况,难以描述复杂的数据处理过程; 2、磁盘IO开销大:每次执行时都需要从磁盘读取数据,并且在计算完成后需要将中间结果写入磁盘,IO开销较大; 3、延迟高:一次计算可能需要分解成一系列按顺序执行的MapReduce任务,任务之间的衔接由于涉及到IO开销,会产生较高的延迟。而且在前一任务执行完成之前,其他任务无法开始,因此难以胜任复

9、杂、多阶段 的计算任务。第二代计算框架Spark尽管MapReduce极大的简化了大数据分析,但是随着大数据需求和使用模式的扩大,用户的需求也越来越多,MapReduce显得力不从心1. 更复杂的多重处理需求(比如迭代计算, 机器学习(ML),图算法Graph);2. 低延迟的交互式查询需求而MapReduce计算模型的架构导致上述两类应用先天缓慢,用户迫切需要一种更快的计算模型,来补充MapReduce的先天不足。Spark架构Spark的优点(1)运行速度快:Spark使用先进的DAG执行引擎,以支持循环数据流和内存计算,基于内存的执行速度可比Hadoop MapReduce快上百倍,基于

10、磁盘的执行速度也能快十倍; (2)易使用:Spark支持使用Scala、Java、Python和R语言进行编程,简洁的API设计有助于用户轻松构建并行程序。 (3)通用性:Spark提供了完整而强大的技术栈,包括SQL查询 (Spark SQL)、流式计算(Spark Streaming)、机器学习(MLlib) 和图算法(GraphX)组件; (4)运行模式多样:Spark可以运行于独立的集群模式中,或运行于 Hadoop中,也可以运行于Amazon EC2等云环境中,并且可以访问 HDFS、HBase、Hive等多种数据源;HBase数据库HBase的特点?大:一个表可以有上亿行,上百万列

11、;面向列:面向列(族)的存储和权限控制,列(族)独立检索;稀疏:对于为空(null)的列,并不占用存储空间,因此,表可以设计得非常稀疏。HBase的是啥?HBase建立在HDFS之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统。它介于NoSQL和RDBMS之间,仅能通过行键(row key)和行键序列来检索数据,仅支持单行事务(可通过Hive支持来实现多表联合等复杂操作)。主要用来存储非结构化和半结构化的松散数据。与Hadoop一样,HBase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。Hbase的架构Hive介绍Hive是一个数据仓库基础工具在H

12、adoop中用来处理结构化数据。它架构在Hadoop之上,总归为大数据,并使得查询和分析方便。并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。Hive和Hbase区别Hive:Hive是Hadoop数据仓库,严格来说,不是数据库,主要是让开发人员能够通过SQL来计算和处理HDFS上的结构化数据,适用于离线的批量数据计算。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce。应用场景: Hive适合用来对一段时间内的数据进行分析查询,例如,用来计算趋势或者网站的日志。Hive不应该用来进行实

13、时的查询。因为它需要很长时间才可以返回结果。Hbase非常适合用来进行大数据的实时查询。Facebook用Hbase进行消息和实时的分析。它也可以用来统计Facebook的连接数。Hive是一个数据仓库,那么Hive和传统意义上的数据库有什么不一样的呢? 1.hive和关系数据库存储文件的系统不同,hive使用的是hadoop的HDFS(hadoop的分布式文件系统),关系数据库则是服务器本地的文件系统. 2.hive使用的计算模型是mapreduce,而关系数据库则是自己设计的计算模型. 3.关系数据库都是为实时查询的业务进行设计的,而hive则是基于hadoop的,是为海量数据做数据挖掘设

14、计的,实时性很差;实时性的区别导致hive的应用场景和关系数据库有很大的不同。 4.Hive很容易扩展自己的存储能力和计算能力,这个是继承hadoop的,而关系数据库在这个方面要比数据库差很多。1. 低延迟和高性能2. 可扩展3. 高可靠性4. 高容错性5. 编程模型简单6. 支持多种编程语言7. 支持本地模式Storm特性Storm框架设计Storm集群有两种节点:控制(Master)节点和工作者(Worker)节点。 Master节点运行一个称之为“Nimbus”的后台程序,负责在集群范围内分发代码、为worker分配任务和故障监测。 每个Worker节点运行一个称之“Supervisor”的后台程序,监听分配给它所在机器的工作,基于Nimbus分配给它的事情来决定启动或停止工作者进程。THANKS

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

当前位置:首页 > IT计算机 > Web服务

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!