华工srp结题报告模板
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
华工srp结题报告模板
篇一:(格式)SRP结题报告书格式
****大学
“学生研究计划”(SRP)项目结题报告书
项目编号:
项目名称:
起止时间:
学生姓名:
学院专业:
联系电话:
电子信箱:
指导教师:
华南理工大学广州学院教务处制
年月日
篇二:SRP结题报告——唐伟志
SRP结题报告
基于分布式存储的实验数据采集和管理系统
1.绪论
研究背景
在信息技术不断发展下,人们认识到了数据本身的价值,“大数据”在商业应用中取得了巨大的成功。在智能信息处理的研究中,我们主要通过算法对数据进行理解和感知,
在研究过程中会采集和产生大量数据,如声音、视频、算法结果等,以往这些数据大部分会被作为无用数据丢弃,只保留部分实验结果。本项目拟使用当前非关系数据库、分布式文件系统等技术,建立智能信息处理中实验产生数据的采集及存储平台,将数据存储,以便后续更强大的算法和计算资源进行分析处理。
学生参与研究主要内容
开发基于分布式存储的实验数据采集和管理系统,用于采集和存储各类试验中产生的数据,方便随时获取和查阅,同时为后续更大规模的算法统计和处理做准备,详细包括:(1)、智能信息处理相关研究中各个环节数据的高效、方便的采集;
(2)、采集到数据的智能化处理,如标记、分类、压缩等;
(3)、搭建分布式存储系统,用于存储相关数据,并尽量能适应未来大规模并行算法的一些需求特点;
(4)、开发Web应用,能进行方便的数据查阅和获取。
预期目标
搭建基于分布式存储的实验数据采集和管理系统的小规模示范系统。
2.分布式文件系统概述
分布式文件系统简介
分布式文件系统(Distributed File System)是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间。
在这样的文件系统中,客户端并非直接访问底层的数据存储区块,而是通过网络,以特定的通信协议和服务器沟通。借由通信协议的设计,可以让客户端和服务器端都能根据访问控制列表或是授权,来限制对于文件系统的访问。
相对地,在一个分享的磁盘文件系统中,所有节点对数据存储区块都有相同的访问权,在这样的系统中,访问权限就必须由客户端程序来控制。
分布式文件系统可以包含的功能有:透通的数据复制与容错。也就是说,即使系统中有一小部份的节点脱机,整体来说系统仍然可以持续运作而不会有数据损失。
综上所述,分布式文件系统所拥有的透通的数据复制以及可靠的容错性,十分适合用于实验数据采集和管理系统。
分布式文件系统的选择
当前比较流行的分布式文件系统包括:
Lustre:lustre是一个大规模的、安全可靠的,具备高可用性的集群文件系统,它是由SUN公司开发和维护。该项目主要的目的就是开发下一代的集群文件系统,可以支持超过10000个节点,数以PB的数量存储系统。
Hadoop:hadoop并不仅仅是一个用于存储的分布式文
件系统,而是设计用来在由通用计算设备组成的大型集群上执行分布式应用的框架。
NFS:网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS。NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件。
在实际搭建中,主要考虑使用Apache Hadoop, Hadoop 可以配合云计算处理OpenStack使用,开源,文档资料比较丰富,现在已经广泛投入生产使用,也能够满足项目后续更大规模的算法统计和处理的要求。
Hadoop简述及安装
关于Apache Hadoop
Apache Hadoop是一款支持数据密集型分布式应用并以Apache 许可协议发布的开源软件框架。它支持在商品硬件构建的大型集群上运行的应用程序。Hadoop是根据Google 公司发表的MapReduce和Google档案系统的论文自行实作而成,由开源社区维护。
Hadoop框架透明地为应用提供可靠性和数据移动。现在普遍认为整个Apache Hadoop“平台”包括Hadoop内核、MapReduce、Hadoop分布式文件系统(HDFS)以及一些相关项目,有Apache Hive和Apache HBase等等。
Hadoop基础架构
Hadoop被定位为一个易于使用的平台,以HDFS、MapReduce为基础,能够运行上千台PCServer组成的系统集群,并以一种可靠、容错的方式分布式处理请求。
下图显示Hadoop部署结构示意图
在Hadoop的系统中,会有一台master,主要负责NameNode的工作以及JobTracker的工作。JobTracker的主要职责就是启动、跟踪和调度各个Slave的任务执行。还会有多台slave,每一台slave通常具有DataNode的功能并负责TaskTracker的工作。TaskTracker根据应用要求来结合本地数据执行Map任务以及Reduce任务。
Hadoop处理流程
Hadoop主要靠MapReduce进行处理处理。MapReduce 是由Google在一篇论文中提出并广为流传的。它最早是Google提出的一个软件架构,用于大规模数据集群分布式运算。任务的分解(Map)与结果的汇总(Reduce)是其主要思想。Map就是将一个任务分解成多个任务,Reduce就是将分解后多任务分别处理,并将结果汇总为最终结果。
下图所示Hadoop处理流程:
上图就是MapReduce大致的处理流程。在Map之前,可能还有对输入数据的Split过程以保证任务并行效率;在Map之后可能还有Shuffle过程来提高Reduce的效率以及减小数据传输的压力。