您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 绩效管理 > 厦门大学计算机科学系研究生课程
《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版厦门大学计算机科学系2013年新版林子雨厦门大学计算机科学系E-mail:ziyulin@xmu.edu.cn主页:第2章大数据关键技术与挑战(2013年新版)厦门大学计算机科学系研究生课程《大数据技术基础》《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版提纲大数据处理的基本流程大数据处理模型大数据关键技术大数据处理工具大数据时代面临的新挑战本讲义PPT存在配套教材,由林子雨通过大量阅读、收集、整理各种资料后编写而成下载配套教材请访问《大数据技术基础》2013班级网站:《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版大数据处理的基本流程整个大数据的处理流程可以定义为:在合适工具的辅助下,对广泛异构的数据源进行抽取和集成,结果按照一定的标准进行统一存储,并利用合适的数据分析技术对存储的数据进行分析,从中提取有益的知识并利用恰当的方式将结果展现给终端用户。具体来说,可以分为数据抽取与集成、数据分析以及数据解释。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版•大数据的一个重要特点就是多样性,这就意味着数据来源极其广泛,数据类型极为繁杂。这种复杂的数据环境给大数据的处理带来极大的挑战。•要想处理大数据,首先必须对所需数据源的数据进行抽取和集成,从中提取出关系和实体,经过关联和聚合之后采用统一定义的结构来存储这些数据。•在数据集成和提取时需要对数据进行清洗,保证数据质量及可信性。•现有的数据抽取与集成方式可以大致分为以下四种类型:数据整合、数据联邦、数据传播和混合方法等。数据抽取与集成《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版•传统的分析技术如数据挖掘、机器学习、统计分析等在大数据时代需要做出调整,因为这些技术在大数据时代面临着一些新的挑战,主要有:–数据量大并不一定意味着数据价值的增加,相反这往往意味着数据噪音的增多–大数据时代的算法需要进行调整(邦弗朗尼原理)–数据结果好坏的衡量数据分析《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版•数据分析是大数据处理的核心,但是用户往往更关心结果的展示。如果分析的结果正确但是没有采用适当的解释方法,则所得到的结果很可能让用户难以理解,极端情况下甚至会误导用户。•大数据时代的数据分析结果往往也是海量的,同时结果之间的关联关系极其复杂,采用传统的解释方法基本不可行•可以考虑从下面两个方面提升数据解释能力:–引入可视化技术–让用户能够在一定程度上了解和参与具体的分析过程数据解释《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版提纲大数据处理的基本流程大数据处理模型大数据关键技术大数据处理工具大数据时代面临的新挑战《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版大数据之“快”从何说起•时间就是金钱时间在分母上,越小,单位价值就越大。•像其它商品一样,数据的价值会折旧过去一天的数据,比过去一个月的数据可能都更有价值。•数据跟新闻和金融行情一样,具有时效性《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版大数据的三种状态大数据的三种状态如上图所示,按照数据的三状态定义,水库里一平如镜(非活跃)的水是“静止数据(dataatrest)”,水处理系统中上下翻动的水是“正使用数据(datainuse)”,汹涌而来的新水流就是“动态数据(datainmotion)”。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版大数据的“快”说的是两个层面•“动态数据”来得快动态数据有不同的产生模式。有的是burst模式,极端的例子如欧洲核子研究中心(CERN)的大型强子对撞机(LargeHadronCollider,简称LHC),此机不撞则已,一撞惊人,工作状态下每秒产生PB级的数据。也有的动态数据是涓涓细流的模式,典型的如clickstream,日志,RFID数据,GPS位置信息,Twitter的firehose流数据等。•“正使用数据”处理得快水处理系统可以从水库调出水来进行处理(“静止数据”转变为“正使用数据”),也可以直接对涌进来的新水流处理(“动态数据”转变为“正使用数据”)。这对应着两种大相迥异的处理范式:批处理和流处理。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版批处理与流处理左半部是批处理:以“静止数据”为出发点,数据是任尔东西南北风、我自岿然不动,处理逻辑进来,算完后价值出去。右半部则是流数据处理范式。这次不动的是逻辑,“动态数据”进来,计算完后价值留下,原始数据加入“静止数据”,或索性丢弃。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版批处理与流处理的组合两种范式常常组合使用,而且形成了一些定式:•流处理作为批处理的前端:比如大型强子对撞机,每秒PB级的数据先经过流处理范式进行过滤,只有那些科学家感兴趣的撞击数据保留下来进入存储系统,留待批处理范式处理。这样,欧洲核子研究中心每年的新增存储存储量可以减到25PB。•流处理与批处理肩并肩:流处理负责动态数据和实时智能,批处理负责静止数据和历史智能,实时智能和历史智能合并成为全时智能。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版如何实现“快”的数据处理首先,“快”是个相对的概念,可以是实时,也可以秒级、分钟级、小时级、天级甚至更长的延迟。其次,考虑目前的架构是不是有潜力改造到足够“快”。一些通用的技术思路来实现“快”:•如果数据流入量太大,在前端就地采用流处理进行即时处理、过滤掉非重要数据•把数据预处理成适于快速分析的格式•增量计算--也即先顾眼前的新数据,再去更新老数据•很多批处理系统慢的根源是磁盘和I/O,把原始数据和中间数据放在内存里,一定能极大地提升速度•降低对精确性的要求《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版流处理流处理的处理模式将数据视为流,源源不断的数据组成了数据流。当新的数据到来时就立刻处理并返回所需的结果。《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版批处理Google公司在2004年提出的MapReduce编程模型是最具代表性的批处理模式。一个完整的MapReduce过程如图所示:《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版提纲大数据处理的基本流程大数据处理模型大数据关键技术大数据处理工具大数据时代面临的新挑战《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版Google于2006年首先提出了云计算的概念,并研发了一系列云计算技术和工具。难能可贵的是Google并未将这些技术完全封闭,而是以论文的形式逐步公开其实现。正是这些公开的论文,使得以GFS、MapReduce、Bigtable为代表的一系列大数据处理技术被广泛了解并得到应用,同时还催生出以Hadoop为代表的一系列云计算开源工具。下图展示了Google的技术演化过程:大数据关键技术《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版包括Google、微软、Facebook和淘宝在内的众多企业和学者从不同方面对满足大数据存储需求的文件系统进行了详尽的研究。并自行开发出支持其自身业务的文件系统:•GFS•Colosuss•HDFS•CloudStore•Haystack•TFS•FastDFS文件系统《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版直接采用关系模型的分布式数据库并不能适应大数据时代的数据存储,主要因为:1.规模效应所带来的压力2.数据类型的多样化3.设计理念的冲突4.数据库事务特性面对这些挑战,以Google为代表的一批技术公司纷纷推出了自己的解决方案:1.Google的Bigtable2.Amazon的Dynamo3.Yahoo的PNUTS数据库系统《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版Bigtable、Dynamo、PNUTS等的成功促使人们开始对关系数据库进行反思,由此产生了一批未采用关系模型的数据库,这些方案现在被统一的称为NoSQL(NotOnlySQL)。NoSQL并没有一个准确的定义,但一般认为NoSQL数据库应当具有以下的特征:1.模式自由(schema-free)2.支持简易备份(easyreplicationsupport)3.简单的应用程序接口(simpleAPI)4.最终一致性(或者说支持BASE特性,不支持ACID)5.支持海量数据(Hugeamountofdata)。NoSQL技术《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版索引和查询技术不太可能将已有的成熟索引方案直接应用于大数据。表一些索引方案直接应用在Facebook上的性能估计《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版NoSQL数据库针对主键的查询效率一般较高,因此有关的研究集中在NoSQL数据库的多值查询优化上。针对NoSQL数据库上的查询优化研究主要有两种思路:1.采用MapReduce并行技术优化多值查询:当利用MapReduce并行查询NoSQL数据库时,每个MapTask处理一部分的查询操作,通过实现多个部分之间的并行查询来提高多值查询的效率。此时每个部分的内部仍旧需要进行数据的全扫描。2.采用索引技术优化多值查询:很多的研究工作尝试从添加多维索引的角度来加速NoSQL数据库的查询速度。索引和查询技术《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版•Mapreduce是谷歌最早采用的计算模型,适合批处理•谷歌设计了Pregrel用于图计算•Dremel适用于Web数据级别的交互式数据分析系统•谷歌的PowerDrill主要用于大数据量的核心数据集分析实时数据处理是大数据分析的一个核心需求。很多研究工作正是围绕这一需求展开的。前面介绍了大数据处理的两种基本模式,而在实时处理的模式选择中,主要有三种思路:–采用流处理模式:Storm–采用批处理模式:Percolator\Nectar\DryadInc实现大规模数据的增量计算–二者的融合数据分析技术《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版提纲大数据处理的基本流程大数据处理模型大数据关键技术大数据处理工具大数据时代面临的新挑战《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.edu.cn2013年9月第一版Hadoop是目前最为流行的大数据处理平台。除了Hadoop,还有很多针对大数据的处理工具。这些工具有些是完整的处理平台,有些则是专门针对特定的大数据处理应用。下表归纳总结了现今一些主流的处理平台和工具。(了解专业术语很重要)大数据处理工具《大数据技术基础》厦门大学计算机系林子雨ziyulin@xmu.ed
本文标题:厦门大学计算机科学系研究生课程
链接地址:https://www.777doc.com/doc-6310016 .html