dongxicheng.orgBigData处理汇报人:biandh中国科学技术大学背景介绍1Hadoop基本概念2.1Hadoop1.x系统框架介绍2.2目录大数据处理方案-hadoop2总结3Hadoop生态系统介绍2.4Hadoop2.x系统框架介绍2.3中国科学技术大学*facebook社交网络…淘宝、ebuy电子商务…微博、Apps移动互联…21世纪是数据信息大发展的时代,移动互联、社交网络、电子商务等极大拓展了互联网的边界和应用范围,各种数据正在迅速膨胀并变大。互联网(社交、搜索、电商)、移动互联网(微博)、物联网(传感器,智慧地球)、车联网、GPS、医学影像、安全监控、金融(银行、股市、保险)、电信(通话、短信)都在疯狂产生着数据。“大数据”的诞生:半个世纪以来,随着计算机技术全面融入社会生活,信息爆炸已经积累到了一个开始引发变革的程度。它不仅使世界充斥着比以往更多的信息,而且其增长速度也在加快。信息爆炸的学科如天文学和基因学,创造出了“大数据”这个概念。如今,这个概念几乎应用到了所有人类智力与发展的领域中。大数据时代的背景中国科学技术大学*GBTBPBEBZB想驾驭这庞大的数据,我们必须了解大数据的特征。地球上至今总共的数据量:在2006年,个人用户才刚刚迈进TB时代,全球一共新产生了约180EB的数据;在2011年,这个数字达到了1.8ZB。而有市场研究机构预测:到2020年,整个世界的数据总量将会增长44倍,达到35.2ZB(1ZB=10亿TB)!1PB=2^50字节1EB=2^60字节1ZB=2^70字节数据大爆炸中国科学技术大学*大数据的4V特征体量Volume多样性Variety价值密度Value速度Velocity非结构化数据的超大规模和增长总数据量的80~90%比结构化数据增长快10倍到50倍是传统数据仓库的10倍到50倍大数据的异构和多样性很多不同形式(文本、图像、视频、机器数据)无模式或者模式不明显不连贯的语法或句义大量的不相关信息对未来趋势与模式的可预测分析深度复杂分析(机器学习、人工智能Vs传统商务智能(咨询、报告等)实时分析而非批量式分析数据输入、处理与丢弃立竿见影而非事后见效中国科学技术大学*大数据不仅仅是“大”多大?至少PB级比大更重要的是数据的复杂性,有时甚至大数据中的小数据如一条微博就具有颠覆性的价值中国科学技术大学*大数据的应用通过用户行为分析实现精准营销是大数据的典型应用,但是大数据在各行各业特别是公共服务领域具有广阔的应用前景消费行业金融服务食品安全医疗卫生军事交通环保电子商务气象中国科学技术大学*管理大数据“易”理解大数据“难”虽然大数据是一个重大问题,真正的问题是让大数据更有意义目前大数据管理多从架构和并行等方面考虑,解决高并发数据存取的性能要求及数据存储的横向扩展,但对非结构化数据的内容理解仍缺乏实质性的突破和进展,这是实现大数据资源化、知识化、普适化的核心非结构化海量信息的智能化处理:自然语言理解、多媒体内容理解、机器学习等中国科学技术大学具体案例中国科学技术大学难点分析中国科学技术大学*大数据处理两套解决方案传统的数据库在处理大数据时会显得性能十分低,所以需要分而治之。这个就是hadoop的精髓,但是小的数据量存在分布式的环境里,处理的的性能反而会降低。hadoop是面向至少TB,PB级的数据量,才能最大的发挥它的优势。1TB=1024G1PB=1024T1EB=1024P因此,对于大数据处理两套解决方案1、移动数据,把数据分发到多个计算节点进行计算;第一种是MPI,常用于科学计算。2、移动计算,将计算能力移到数据存储位置;Hadoop是第二种。中国科学技术大学大数据处理方案--hadoop2Hadoop1.x系统框架介绍2.1目录背景介绍1Hadoop2.x系统框架介绍2.2总结3Hadoop基本概念2.1Hadoop生态系统介绍2.3中国科学技术大学Hadoop简介Hadoop是一个分布式系统基础架构,由Apache基金会开发。2006年2月从Nutch项目中分离出来,正式成为Apache顶级项目之一。作者:DougCutting官方网站官方logo用Java编写运行平台:•Linux,MacOS/X,Solaris,Windows•普通的X86硬件平台中国科学技术大学谁在用Hadoop中国科学技术大学大数据处理方案--hadoop2目录背景介绍1Hadoop2.x系统框架介绍2.3总结3Hadoop1.x系统框架介绍2.2Hadoop基本概念2.1Hadoop生态系统介绍2.4中国科学技术大学dongxicheng.orgHadoop1.0生态系统构成中国科学技术大学dongxicheng.orgHadoop1.x内核基本构成分布式存储系统HDFS高可靠性高扩展性高吞吐率分布式计算框架MapReduce易于编程高容错性高扩展性中国科学技术大学dongxicheng.orgHDFS是什么源自于Google的GFS论文发表于2003年10月HDFS是GFS克隆版HadoopDistributedFileSystem易于扩展的分布式文件系统运行在大量普通廉价机器上,提供容错机制为大量用户提供性能不错的文件存取服务中国科学技术大学dongxicheng.orgHDFS优点高容错性数据自动保存多个副本副本丢失后,自动恢复适合批处理移动计算而非数据数据位置暴露给计算框架适合大数据处理GB、TB、甚至PB级数据百万规模以上的文件数量10K+节点规模流式文件访问一次性写入,多次读取保证数据一致性可构建在廉价机器上通过多副本提高可靠性提供了容错和恢复机制中国科学技术大学dongxicheng.orgHDFS设计思想Server(10TB)Server(10TB)Server(10TB)block1block2block3block4block1block1block2block2block3block3block4block4block1:node1,node2,node3block2:node2,node3,node4block3:node4,mode5,node6block4:node5,node6.node7…….Server(10TB)64MB64MB64MB64MB……file350GBblock1block2block3中国科学技术大学dongxicheng.orgHDFS架构StandbyNamenode中国科学技术大学dongxicheng.orgHDFS块副本放置策略RackARackB问题:一个文件划分成多个block,每个block存多份,如何为每个block选择节点存储这几份数据?Block副本放置策略:副本1:同Client的节点上副本2:不同机架中的节点上副本3:与第二个副本同一机架的另一个节点上其他副本:随机挑选中国科学技术大学dongxicheng.orgHDFS可靠性文件损坏网络或者机器失效NameNode挂掉常见的三种错误情况•文件完整性–CRC32校验–用其他副本取代损坏文件•Heartbeat–Datanode定期向Namenode发heartbeat•元数据信息–FSImage(文件系统镜像)、Editlog(操作日志)–多份存储–主备NameNode实时切换文件损坏网络或者机器失效NameNode挂掉常见的三种错误情况中国科学技术大学dongxicheng.orgHDFS缺点低延迟数据访问比如毫秒级低延迟与高吞吐率小文件存取占用NameNode大量内存寻道时间超过读取时间并发写入、文件随机修改一个文件只能有一个写者仅支持append中国科学技术大学dongxicheng.orgMapReduce是什么源自于Google的MapReduce论文发表于2004年12月HadoopMapReduce是GoogleMapReduce克隆版MapReduce特点易于编程良好的扩展性高容错性适合PB级以上海量数据的离线处理中国科学技术大学dongxicheng.orgMapReduce1.0架构中国科学技术大学dongxicheng.org初识MapReducewordcount程序能做什么?中国科学技术大学dongxicheng.orgMapReduce不擅长什么实时计算像MySQL一样,在毫秒级或者秒级内返回结果流式计算MapReduce的输入数据集是静态的,不能动态变化MapReduce自身的设计特点决定了数据源必须是静态的DAG计算多个应用程序存在依赖关系,后一个应用程序的输入为前一个的输出中国科学技术大学大数据处理方案--hadoop2目录背景介绍1Hadoop1.x系统框架介绍2.2总结3Hadoop2.x系统框架介绍2.2Hadoop基本概念2.1Hadoop生态系统介绍2.2中国科学技术大学dongxicheng.orgHadoop2.0生态系统构成(原生态)中国科学技术大学Hadoop2.0生态系统构成中国科学技术大学Hadoop2.0HDFS中国科学技术大学dongxicheng.orgYARN是什么资源管理和调度系统管理集群中的资源(类似于操作系统)将资源分配给上层的应用程序好处降低运维成本有利于数据共享提高资源利用率中国科学技术大学dongxicheng.orgYARN基本架构中国科学技术大学dongxicheng.orgYARN工作原理NodeManagerNodeManagerNodeManagerResourceManagerApplicationMasterClientClientClient①②③④⑤⑤⑤⑥⑥TaskContainerContainerTaskTaskContainer中国科学技术大学dongxicheng.org以YARN为核心构建服务体系中国科学技术大学dongxicheng.orgMapReduce2.0架构MRAppMstrMRAppMstrNodeManagerMapTaskMapTaskNodeManagerReduceTaskReduceTaskClientClient1Container2245MapTaskMapTask7775ResourceSchedulerApplicationsManagerContainerContainerContainerResourceManager3,8666中国科学技术大学dongxicheng.orgMapReduce实现机制—推测执行作业完成时间取决于最慢的任务完成时间一个作业由若干个Map任务和Reduce任务构成因硬件老化、软件Bug等,某些任务可能运行非常慢推测执行机制发现拖后腿的任务,比如某个任务运行速度远慢于任务平均速度为拖后腿任务启动一个备份任务,同时运行谁先运行完,则采用谁的结果不建议启用推测执行机制的情况任务间存在严重的负载倾斜特殊任务,比如任务向数据库中写数据中国科学技术大学大数据处理方案--hadoop2目录Hadoop1.x系统框架介绍2.2总结3Hadoop生态系统介绍2.2Hadoop2.x系统框架介绍2.2Hadoop基本概念2.1背景介绍1中国科学技术大学dongxicheng.org中国科学技术大学dongxicheng.orgHadoop生态系统介绍Hive:披着SQL外衣的MapReduce。Hive是为方便用户使用MapReduce而在外面包了一层SQL,由于Hive采用了SQL,它的问题域比MapReduce更窄,因为很多问题,SQL表达不出来,比如一些数据挖掘算法,推荐算法、图像识别算法等,这些仍只能通过编写MapReduce完成。Pig:披着脚本语言外衣的MapReduce,为了突破HiveSQL表达能力的限制,采用了一种更具有表达能力的脚本语言PIG。由