HADOOP,开题报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

篇一:基于hadoop的云计算平台搭建毕业设计开题报告

本科毕业设计(论文)开题报

题目:基于hadoop的云计算平台搭建

学生姓名

教学院系

专业年级指导教师

单位

学号计算机科学学院职称计算机科学学院

1 选题的目的和意义

1.1 设计的背景

hadoop作为apache基金会资助的开源项目,由doug cutting带领的团队进行开发,基于lucene和nutch等开源项目,实现了google的gfs和hadoop能够稳定运行在20个节点的集群;2006年1月,doug cutting加入雅虎公司,同年2月apache hadoop项目正式支持hdfs和mapreduce的独立开发。同时,新兴公司cloudera为hadoop提供了商业支持,帮助企业实现标准化安装,并志愿贡献社区。

1.1 选题的现状

1.1.1 海量数据时代的现状

我们生活在数据的时代,很难估计全球的数据有多少,“数字宇宙”项目统计得出,2006年的数据总量为0.18zb,也就是10亿tb。

问题1:数据处理速度不够,以100mb每秒计算,读取1tb的数据需要2个半小时。一个比较好的方案就是把数据放在100个磁盘中每个磁盘中存放1%的数据并行读取,不到2min就能读取所有数据。经过统计用户的分析工作会在不同的时间点进行,所以用户相互间的干扰不会太大。但是一旦硬件发生故障,用户的数据就会丢失,所以要准备多份。(hdfs)

问题2:需要从100个磁盘中取出数据结合使用。mapreduce将这个问题抽象,转化为对一个数据集合的计算。这个计算模型分为map和reduce两个阶段,只有这两个部分对外提供接口。举例 rackspace的一个部门mailtrust:mapreduce是一种比较蛮力的办法,每个查询几乎需要处理整个数据集,至少是数据集的很大一部分。在合理的时间内对整个数据集合的数据即时查询,是对数据的一种创新。rackspace的mailtrust部门,使用hadoop处理邮件日志,他们做用户地理分布查询。“这些数据非常有用,每个月运行一次决定哪些rackspace数据中心需要添加新的邮件服务器“。通过整合数百gb的数据,并分析,可以通过这些数据改善现有服务。1.1.2 hadoop的发展史

hadoop起源于nutch网络搜索引擎,nutch是lucene(一个文本搜索系统库)的一部分,创始人为doug cutting。

nutch项目开始于2002年

2004年开始开发gfs的开源版本ndfs,谷歌发表论文向全世界介绍它的mapreduce系统。2005年实现了mapreduce的开源版本。

2006年将hadoop移出nutch独立成为一个项目,hadoop创始人进入雅虎

2008年hadoop成为apache顶级项目,证明了其成功。209s 完成1tb数据排序 2009年4月 59秒排序500gb 1400节点 173分钟排序100t的数据3400节点典型案例纽约时报facebook last.fm

1.1.3 hadoop生态系统

pig:数据流语言和运行环境,检索非常大的数据集

hive: 管理hdfs中的数据,提供sql查询

hbase: 安列存储数据库,支持批量式计算和点查询

zookeeper: 一个分布式、可用性高的协调系统。zookeeper提供分布式锁之类的基本服务用于构建分布式应用。

sqoop: 在数据库和hdfs之间高效传输的数据工具。

kerberos:实现的是机器级别的安全认证,也就是前面提到的服务到服务的认证问题。防止了用户伪装成datanode,tasktracker,去接受jobtracker,namenode的任务指派。kerberos 对可信任的客户端提供认证,确保他们可以执行作业的相关操作。防止用户恶意冒充client 提交作业的情况。用户无法伪装成其他用户入侵到一个hdfs或者mapreduce集群上。用户即使知道datanode的相关信息,也无法读取hdfs上的数据,用户无法发送对于作业的操作到jobtracker上。

2 主要研究的内容

2.1 系统概述

2.1.1 功能与作用

众所周知,现代社会的信息量增长速度极快,这些信息里又积累着大量的数据,其中包括个人数据和工业数据。预计到2020年,每年产生的数字信息将会有超过1/3的内容驻留在云平台中或借助云平台处理。我们需要对这些数据进行分析和处理,以获取更多有价值的信息。那么我们如何高效地存储和管理这些数据,如何分析这些数据呢?这时可以选用hadoop系统,它在处理这类问题时,采用了分布式存储方式,提高了读写速度,并扩大了存储容量。采用mapreduce来整合分布式文件系统上的数据,可保证分析和处理数据的高效。与此同时,hadoop还采用存储冗余数据的方式保证了数据的安全性。

hadoop中hdfs的高容错特性,以及它是基于java语言开发的,这使得hadoop可以部署在低廉的计算机集群中,同时不限于某个操作系统。hadoop中hdfs的数据管理能力,mapreduce 处理任务时的高效率,以及它的开源特性,使其在同类的分布式系统中大放异彩,并在众多行业和科研领域中被广泛采用。

2.1.2 具体任务

对本系统分析后,系统的具体任务主要如下:

1) 调研该项目的状况和成果。

2) 对所选题目进行可行性分析,从技术和可操作性上进行分析

3) 根据目前掌握和了解的技术选择最适合的开发工具和开发语言,对所用到的

技术及语言相关知识进行学习巩固

4) 配置,部署hadoop

5) 测试,使用hadoop

2.1.3 设备要求

1) 操作系统

centos6.2

2) hadoop-1.0.4-13) jdk1.6.0_04

2.2 系统设计

2.2.1 体系结构

hadoop的核心框架包括两个部分:hdfs 和mapreduce;hdfs(即hadoop distributed system 的缩写)是分布式计算的基石,而mapreduce是任务的分解和结果的汇总。简单的说,map 就是将一个任务分解成为多个任务,而reduce就是将分解后多任务处理的结果汇总起来得出最后的结果;hdfs是一个与其它文件系统类似的,对于整个集群有单一的命名空间,文件被分割为多块分配存储到数据节点上的一个系统。

图2.1 数据处理流程图

相关文档
最新文档