欢迎来到天天文库
浏览记录
ID:20639823
大小:425.50 KB
页数:5页
时间:2018-10-14
《课题研究方向》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、项目研究内容及要求一、研究领域随着云时代的来临,大数据(Bigdata)也吸引了越来越多的关注。大数据(Bigdata)通常用来形容一个公司创造的大量非结构化和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像Hadoop一样的框架来向数十、数百或甚至数千的计算机分配工作。Hadoop是一个可实现大规模分布式计算的开源软件平台,已经被广泛应用在云计算领域。Hadoop是Apache开源组织的一个分布式计算开源框架,它可以运行在
2、大型集群的廉价硬件设备上,实现对集群的控制和管理。而且Hadoop为应用程序透明的提供了一组稳定可靠的接口,屏蔽了并行应用开发的细节,实现更加便捷的构建企业级的应用,并且能够实现海量数据的管理和分布式数据处理。Hadoop最核心的设计就是分布式文件系统HDFS和Map/Reduce算法模型。分布式文件系统HDFS是专门为Map/Reduce作业所设计的文件系统。计算模型Map/Reduce是Hadoop的核心计算模型,是用于在集群上分布式处理大数据集的软件架构。它将复杂的运行于大规模集群上的并行计算过程高度的抽
3、象到了2个函数,Map和Reduce,这是一个简单而又强大的模型。Hadoop还包括对于结构化数据处理的HBase、数据仓库的基础设施Hive、并行计算的高层次数据流语言和执行框架Pig和分布式应用的高性能协调服务Zookeeper等子项目。Hadoop集群是典型的Master/Slaves结构,NameNode与JobTracker为Master,DataNodes与TaskTrackers为Slaves。NameNode与DataNodes负责完成HDFS的工作,JobTracker与TaskTracker
4、s则负责完成MapReduce的工作。Hadoop任务分配工作原理如下图所示;Hadoop中有一个作为主控的JobTracker,用于调度和管理其它的TaskTracker,JobTracker可以运行于集群中任一台计算机上。TaskTracker负责执行任务,必须运行于DataNode上,即DataNode既是数据存储结点,也是计算结点。JobTracker将Map任务和Reduce任务分发给空闲的TaskTracker,让这些任务并行运行,并负责监控任务的运行情况。如果某一个TaskTracker出故障了,
5、Job-Tracker会将其负责的任务转交给另一个空闲的TaskTracker重新运行。Map/Reduce的工作原理如下图所示;当你向Map/Reduce框架提交一个计算作业时,它会首先把计算作业拆分成若干个Map任务,然后分配到不同的节点上去执行,每一个Map任务处理输入数据中的一部分,当Map任务完成后,它会生成一些中间文件,这些中间文件将会作为Reduce任务的输入数据。Reduce任务的主要目标就是把前面若干个Map的输出汇总到一起并输出。Map/Reduce计算模型的核心是Map和Reduce两个函
6、数,这2个函数由用户负责实现,功能是按一定的映射规则将输入的对转换成另一个或一批对输出。Map过程通过在输入列表中的每一项执行函数,生成一系列的输出列表。Reduce过程再将Map的输出列表作为输入列表,随后生成一个聚集值,作为最后的输出,其中所有相同键值的列表被输入到同一个Reduce任务中。另外,在Map前还会对输入的数据有Split(分割)的过程,保证任务并行效率,在Map之后还会有Shuffle(混合)的过程,用于提高Reduce的效率以及减小数据传输的压力。
7、为了减少数据在网络上的传输,降低对网络带宽的需求,从而保证分布式计算的高效性。HDFS还为应用提供了将它们自己移动到数据附近的接口。HBase的服务器体系结构也是遵从简单的主从服务器架构,由HBaseMaster主服务器和Hregion服务器群构成,实现对大表的结构化数据的存储。对用户来说,每个表是一堆数据的集合,靠主键来区分。物理上,一张表是被拆分成多块,每一块称为一个Hregion。用表名+开始/结束主键,来区分一个Hregion,一个Hregion会保存一个表里面某段连续的数据,从开始主键到结束主键,一张
8、完整的表格是保存在多个Hregion上面的,HBase通过管理整个区域某部分的节点来管理整个表。HBase本质上是一个稀疏的,长期存储的(存在硬盘上),多维度的,排序的映射表。这张表的索引是行关键字,列关键字和时间戳。每个值是一个不解释的字符数组,数据都是字符串,没类型。用户在表格中存储数据,每一行都有一个可排序的主键和任意多的列。由于是稀疏存储的,所以同一张表里面的每一行数据都可以有
此文档下载收益归作者所有