ITPub博客

首页 > 大数据 > Hadoop > 大数据基础知识总结和大数据方面的核心技术

大数据基础知识总结和大数据方面的核心技术

原创 Hadoop 作者:金罗老师 时间:2018-12-26 17:17:57 0 删除 编辑

一、什么是大数据


         一种规模大到在获取、存储 、管理、分析方面大大超出了传统数据库 软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。 大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理 (MPP)数据库 、数据挖掘、分布式文件系统 、分布式数据库 、云计算平台 、互联网和可扩展的存储系统


二、大数据的基本特征

         数据量大(Volume):第一个特征是数据量大,包括采集、存储和计算的量都非常大。
     类型繁多(Variety):第二个特征是种类和来源多样化。包括结构化、半结构化和非结构化数据,具体表现为网络                                            日志、音频、视频、图片、地理位置信息等等,多类型的数据对数据的处理能力提出了更高                                             的要求。
     价值密度低(Value):第三个特征是数据价值密度相对较低,或者说是浪里淘沙却又弥足珍贵。随着互联网以及物                                            联网的广泛应用,信息感知无处不在,信息海量,但价值 密度较低,如何结合业务逻辑并通                                            过强大的机器算法来挖掘数据价值,是大数据时代最需要解决的问题。
     速度快时效高(Velocity):第四个特征数据增长速度快,处理速度也快,时效性要求高。
     数据是在线的(Online)。数据是永远在线的,是随时能调用和计算的,这是大数据区别于传统数据最大的特征。

三、大数据的数据单位

      按顺序给出所有单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。(进率2^10)

四、大数据的数据结构

         结构化数据:即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据
        非结构化数据:非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,
                                不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、
                                文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。
        半结构化数据:指结构数据中,结构不规则的数据,由于结构变化很大也不能够简单的
                                 建立一个表和他对应。如:声音、图像文件等之间的数据,HTML文档就

                                 属于半结构化数据。它一般是自描述的,数据的结构和内容混在一起,



                          没有明显的区分。


最后要感谢这个优秀的平台,可以让我们相互交流,如果想进一步学习交流,可以加群199427210,希望大家可以一起学习进步!




五、大数据的计算模式

            

批处理计算 (  MapReduce, Spark ): 最适合于完成大数据批处理的计算模式是MapReduce, 首先,MapReduce对具有简单数据关系、易于划分的大规模数据采用“分而治之”的并行处理思想;然后将大量重复的数据记录处理过程总结成Map和Reduce两个抽象的操作;最后MapReduce提供了一个统一的并行计算框架,把并行计算所涉及到的诸多系统层细节都交给计算框架去完成,以此大大简化了程序员进行并行化程序设计的负担。

流式计算   (Scribe ,Flume,Storm,S4,SparkStreaming) 流式计算是一种高实时性的计算模式,需要对一定时间窗口内应用系统产生的新数据完成实时的计算处理,避免造成数据堆积和丢失。

迭代计算 ( HaLoop ,iMapReduce,Twister,Spark) 为了克服Hadoop MapReduce难以支持迭代计算的缺陷,工业界和学术界对Hadoop MapReduce进行了不少改进研究。HaLoop把迭代控制放到MapReduce作业执行的框架内部,并通过循环敏感的调度器保证前次迭代的Reduce输出和本次迭代的Map输入数据在同一台物理机上,以减少迭代间的数据传输开销;

交互式计算

图计算    (Pregel,PowerGrapg,GraphX)

内存计算 (Dremel,Hana, redis


六、大数据的工作流程


1、采集与预处理 

      从数据源采集的数据,需要通过数据融合、数据集成、数据整合,生成新的数据集,供后续查询、分析、处理提供统一的数据视图

2、存储管理

       分布式文件系统

      分布式数据库(NEWSQL、NOSQL)

3、计算模式

       包括批处理、交互式处理、流式计算、迭代计算、图计算、内存计算

4、分析与挖掘

5、可视化处理


七、CDH简介

      CDH首先是100%开源,基于Apache协议。基于Apache  Hadoop 和相关projiect开发。可以做批量处理,交互式sql查询和及时查询,基于角色的权限控制。在企业中使用最广的 hadoop 分发版本。     


      

八、分布式架构设计CAP的工作原理

            

● 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本),换句话就是说,任何时刻,所用的应用程序都能访问得到相同的数据。
● 可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新具备高可用性),换句话就是说,任何时候,任何应用程序都可以读写数据。

● 分区容错性(P):以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择,换句话说,系统可以跨网络分区线性的伸缩和扩展。


大数据方面的核心技术

目前,大数据领域每年都会涌现出大量新的技术,成为大数据获取、存储、处理分析或可视化的有效手段。大数据技术能够将大规模数据中隐藏的信息和知识挖掘出来,为人类社会经济活动提供依据,提高各个领域的运行效率,甚至整个社会经济的集约化程度。那么下面我们就说说大数据方面的核心技术有哪些:

        1. 大数据生命周期


 


·        底层是基础设施,涵盖计算资源、内存与存储和网络互联,具体表现为计算节点、集群、机柜和数据中心。在此之上是数据存储和管理,包括文件系统、数据库和类似YARN的资源管理系统。然后是计算处理层,如hadoop、MapReduce和Spark,以及在此之上的各种不同计算范式,如批处理、流处理和图计算等,包括衍生出编程模型的计算模型,如BSP、GAS 等。


·       数据分析和可视化基于计算处理层。分析包括简单的查询分析、流分析以及更复杂的分析(如机器学习、图计算等)。查询分析多基于表结构和关系函数,流分析基于数据、事件流以及简单的统计分析,而复杂分析则基于更复杂的数据结构与方法,如图、矩阵、迭代计算和线性代数。一般意义的可视化是对分析结果的展示。但是通过交互式可视化,还可以探索性地提问,使分析获得新的线索,形成迭代的分析和可视化。基于大规模数据的实时交互可视化分析以及在这个过程中引入自动化的因素是目前研究的热点。


·        2.大数据技术生态


·        大数据的基本处理流程与传统数据处理流程并无太大差异,主要区别在于:由于大数据要处理大量、非结构化的数据,所以在各处理环节中都可以采用并行处理。目前,Hadoop、MapReduce和Spark等分布式处理方式已经成为大数据处理各环节的通用处理方法。


·        3.大数据采集与预处理


 


       在大数据的生命周期中,数据采集处于第一个环节。根据MapReduce产生数据的应用系统分类,大数据的采集主要有4种来源:管理信息系统、Web信息系统、物理信息系统、科学实验系统。对于不同的数据集,可能存在不同的结构和模式,如文件、XML 树、关系表等,表现为数据的异构性。对多个异构的数据集,需要做进一步集成处理或整合处理,将来自不同数据集的数据收集、整理、清洗、转换后,生成到一个新的数据集,为后续查询和分析处理提供统一的数据视图。针对管理信息系统中异构数据库集成技术、Web 信息系统中的实体识别技术和DeepWeb集成技术、传感器网络数据融合技术已经有很多研究工作,取得了较大的进展,已经推出了多种数据清洗和质量控制工具。


·       4.大数据存储与管理


 


 


        按数据类型的不同,大数据的存储和管理采用不同的技术路线,大致可以分为3类。第1类主要面对的是大规模的结构化数据。针对这类大数据,通常采用新型数据库集群。它们通过列存储或行列混合存储以及粗粒度索引等技术,结合MPP(Massive Parallel Processing)架构高效的分布式计算模式,实现对PB 量级数据的存储和管理。这类集群具有高性能和高扩展性特点,在企业分析类应用领域已获得广泛应用;第2类主要面对的是半结构化和非结构化数据。应对这类应用场景,基于Hadoop开源体系的系统平台更为擅长。它们通过对Hadoop生态体系的技术扩展和封装,实现对半结构化和非结构化数据的存储和管理;第3类面对的是结构化和非结构化混合的大数据,因此采用MPP 并行数据库集群与Hadoop集群的混合来实现对百PB 量级、EB量级数据的存储和管理。一方面,用MPP 来管理计算高质量的结构化数据,提供强大的SQL和OLTP型服务;另一方面,用Hadoop实现对半结构化和非结构化数据的处理,以支持诸如内容检索、深度挖掘与综合分析等新型应用。这类混合模式将是大数据存储和管理未来发展的趋势。


·        5.大数据计算模式与系统


·         所谓大数据计算模式,即根据大数据的不同数据特征和计算特征,从多样性的大数据计算问题和需求中提炼并建立的各种高层抽象(abstraction)或模型(model)。例如,MapReduce 是一个并行计算抽象,加州大学伯克利分校著名的Spark系统中的“分布内存抽象RDD”,CMU著名的图计算系统GraphLab中的“图并行抽象”(Graph Parallel Abstraction)等。传统的并行计算方法,主要从体系结构和编程语言的层面定义了一些较为底层的并行计算抽象和模型,但由于大数据处理问题具有很多高层的数据特征和计算特征,因此大数据处理需要更多地结合这些高层特征考虑更为高层的计算模式。


          根据大数据处理多样性的需求和以上不同的特征维度,目前出现了多种典型和重要的大数据计算模式。与这些计算模式相适应,出现了很多对应的大数据计算系统和工具。由于单纯描述计算模式比较抽象和空洞,因此在描述不同计算模式时,将同时给出相应的典型计算系统和工具。


·         6.大数据分析与可视化


 


        大规模数据的可视化主要是基于并行算法设计的技术,合理利用有限的计算资源,高效地处理和分析特定数据集的特性。通常情况下,大规模数据可视化的技术会结合多分辨率表示等方法,以获得足够的互动性能。 

在科学大规模数据的并行可视化工作中,主要涉及数据流线化、任务并行化、管道并行化和数据并行化4 种基本技术。微软公司在其云计算平台Azure 上开发了大规模机器学习可视化平台(Azure Machine Learning),将大数据分析任务形式为有向无环图并以数据流图的方式向用户展示,取得了比较好的效果。在国内,阿里巴巴旗下的大数据分析平台御膳房也采用了类似的方式,为业务人员提供的互动式大数据分析平台。


 最后要感谢这个优秀的平台,可以让我们相互交流,如果想进一步学习交流,可以加群199427210,希望大家可以一起学习进步!





来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31561003/viewspace-2286555/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-11-05

  • 博文量
    62
  • 访问量
    61536