大学毕业论文-—云计算文件系统的实现.doc

大学毕业论文-—云计算文件系统的实现.doc

ID:12967057

大小:1.33 MB

页数:59页

时间:2018-07-19

上传者:zhaojunhui
大学毕业论文-—云计算文件系统的实现.doc_第1页
大学毕业论文-—云计算文件系统的实现.doc_第2页
大学毕业论文-—云计算文件系统的实现.doc_第3页
大学毕业论文-—云计算文件系统的实现.doc_第4页
大学毕业论文-—云计算文件系统的实现.doc_第5页
资源描述:

《大学毕业论文-—云计算文件系统的实现.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

计算机科学与技术学院毕业设计(论文)论文题目云计算文件系统的实现指导教师职称讲师学生姓名学号专业网络工程班级系主任院长 目录摘要iAbstractii绪论1第一章云计算的介绍11.1云计算的发展概况21.2课题研究意义及研究内容21.2.1课题的研究意义21.2.2课题的研究内容5第二章云计算系统的研究62.1云计算的服务层次62.2云计算系统的结构和原理72.2.1云计算的体系结构72.2.2云计算系统的原理9第三章开发环境的概述103.1典型云计算平台103.2Hadoop架构的介绍103.2.1Hadoop的概述103.2.2MapReduce分布式处理技术的介绍133.2.3MapReduce架构143.2.4HDFS简介163.2.5HDFS体系结构18第四章Hadoop云平台搭建204.1Hadoop平台搭建所用到的安装包204.2平台的搭建204.2.3Windows下系统环境变量的配置274.2.4安装和配置SSHD服务294.2.5启动ssh服务314.3EclipseHadoop插件开发配置36 4.3.1Eclipse插件的介绍364.3.2具体步骤39第五章云文件系统的实现405.1云文件系统实现前的技术准备405.2文件系统服务器端代码415.3云脑系统的登录实现425.3.1登陆实现代码425.4云文件夹的制作445.4.1工具菜单栏445.4.2快捷操作栏465.4.3文件栏485.5云文件系统的功能能实现485.5.1、云文件系统中的前进和后退实现485.5.2新建文件夹的实现485.3.3文件权限的设置50第六章总结51参考文献52谢辞54 云计算文件系统的实现摘要云计算是一种基于互联网提供服务的业务模式,它能够实现IT基础设施的资源化和服务化,用户可以按需进行定制和付费,从而彻底改变了传统IT基础设施的提供和支付方式,有效解决了无限增长的海量信息存储和计算问题。文章给出了云计算分布式文件系统的主要类型,分析了Google文件系统(GFS)和Hadoop分布式文件系统(HDFS)的演进情况。最后,详细描述了分布式文件系统的工作原理。本文主要完成云计算文件系统的实现,主要的实现方法是通过Hadoop平台及Eclipce开发环境来实现文件系统的各种功能及文件系统的创建和撤销。给用户一个类似Windows中我的电脑一样的用户体验,可以根据用户意愿实现文件目录及文件进行管理。关键字:云计算;Hadoop;HDFS;文件系统ii CloudcomputingfilesystemimplementationAbstractCloudcomputingisaninternet-basedservicebusinessmodel,ITcanrealizetheutilizationofITinfrastructureandservice,theusercanaccordingtoneedtocustomizeandpaid,whichcompletelychangedthetraditionalITinfrastructuretoprovideandpayway,effectivelysolvethemassinformationstorageandcomputationalproblemsofunlimitedgrowth.Articlegivesthemaintypesofcloudcomputingdistributedfilesystem,analyzestheGooglefilesystem(GFS)andtheevolutionoftheHadoopdistributedfilesystem(HDFS).Finally,describesindetailtheworkingprincipleofthedistributedfilesystem.Thispapermainlycompletedtheimplementationofcloudcomputingfilesystem,therealizationofthemainwayisthroughtheHadoopplatformandEclipcedevelopmentenvironmenttoimplementthefunctionsoffilesystemandfilesystemcreationandrevoked.GiveusersasimilartoWindowsinmycomputerasuserexperience,canaccordingtouser'sintentiontofiledirectoryandfilemanagement.Keywords:cloudcomputing;Hadoop;HDFS;thefilesystemii 南华大学计算机科学与技术毕业设计(论文)绪论云计算是基于互联网将规模化资源池的计算、存储、开发平台和软件能力提供给用户,实现自动化、低成本、快速提供和灵活伸缩的IT服务。云计算是利用将没有用到的资源整合起来形成一个大型的集群,提高资源利用率。从云计算的角度看软硬件都是服务,云计算将催生出新的增长模式,如云软件托管中心、云软件销售等。云计算将使技术人员和使用者都面临着一个巨大的变革。云计算能够给用户提供可靠的、自定义的、最大化资源利用的服务,是一种崭新的分布式计算模式。同时,云计算和其他技术及理论的有机结合,也是解决理论研究和实际应用的重要途径。第54页共54页 南华大学计算机科学与技术毕业设计(论文)第一章云计算的介绍1.1云计算的发展概况随着电子计算机技术的的发展,人们开始适应的单机工作模式将随着云计算的出现面临着巨大的变革。人们将从习惯于购买软件和硬件变为软件和硬件都将隐没于云端,用户在这种技术下面所对的将全部是服务。所以它不仅仅是改变了计算机的使用方法,它也将改变人们的日常生活。云计算从技术理念出现,到技术融合创新,再到商业运营成功,前后经历几十年,是各种技术发张到一定阶段,在某些因素(宽带的普及、互联网上的海量数据、信息化的快速发展、多个IT巨头的实践)共同促进下形成的一个新的业务领域。云计算的发展经历了以下几个阶段:第一阶段:关键技术探索期(20世纪90年代之前)。在这一阶段,虚拟化、分布式计算、并行计算等关键计算和概念纷纷出现并取得了一系列的进展。第二阶段:IT服务化商业模式探索期(20世纪90年代初到21世纪初)。在这一阶段随着硬件性能的大幅提提升,服务器的利用率迅速下降,管理运营成本逐渐成为IT的主要支出之一。为了提高服务器的利用率降低运行成本开始实行虚拟化。第三阶段:云计算技术和商业模式实践期(21世纪初至今)。在虚拟化、自动化、分布式计算和存储技术开始走向成熟后,互联网巨头在借鉴以往经验的基础上对商业模式进行了在创新,并且涌现出了若干经典的成功案例,从而为云计算最终的粉墨登场提供了素材。1.2课题研究意义及研究内容1.2.1课题的研究意义随着电子计算机技术的的发展,人们开始适应的单机工作模式将随着云计算的出现面临着巨大的变革。第54页共54页 南华大学计算机科学与技术毕业设计(论文)人们将随着习惯于购买软件和硬件变为软件和硬件都将隐没于云端,用户在这种技术下面所对的将全部是服务。所以它不仅仅是改变了计算机的使用法方,它也将改变人们的日常生活。企业中4/5的数据是非结构化数据,这些数据每年按指数增长3/5。非结构化数据,顾名思义,是存储在文件系统的信息,而不是数据库。据报道指出:平均只有1%-5%的数据是结构化的数据。如今,这种迅猛增长的从不使用的数据在企业里消耗着复杂而昂贵的一级存储的存储容量。如何能够更好的保留那些在全球范围内都具有潜在价值的不同类型的文件,而不会因为处理它们却干扰日常的工作?虽然可以采购更多的就地存储设备,但这些存储设备总会有局限性的。云存储技术已经获得越来越多的IT公司的青睐。实现在云端的文件的共享是云计算的一种应用,是将用户计算机上的文件分块上传到不同的存储节点,然后可以使其他地区的用户可以共享到你上传的文件。总的来说,本文主要讲述了以下几方面的意义:1)随着计算机技术的飞速发展,数据量也随之变得越来越庞大,怎么对大量数据进行有效管理已经成为企业的关键问题。而如果利用云存储技术解决这个问题,会对企业的经济效益有很大的提高。2)对HDFS的研究方法可以推广到别的集群存储技术研究上,为下一步研究打好基础。3)HDFS可以很轻松的运行在普通的PC集群上,这就会降低了实施运行分布式系统的成本。4)Hadoop平台还没有被广泛地推广应用于各行各业,但是当基于HDFS的云存储应用研究获得一定的成效时,就会对Hadoop技术起到很好的推广作用。云计算是将软硬件隐藏在云端,给用户提供便利的服务,现在来看一下云计算的优缺点。(1)云计算的优点:1)降低电脑用户成本因为云计算的开发平台对PC机几乎没有什么特殊要求,因此在进行云计算开发时几乎不需要高买一些高端的计算机来满足设计的必要,这就大大的降低了用户电脑成本。2)改善计算机的性能第54页共54页 南华大学计算机科学与技术毕业设计(论文)因为云集算就是一种用户提出请求而不需要在自己的PC机上运行就能得到结果的技术,因此用户不需要在自己的PC机上安装大量所需的软件及高的硬件配置从而也就是不用消耗大量用户PC机的资源所以用户计算机的性能奖的到大的改善。3)降低IT基础设施投资一些组织的IT部门也可以通过使用云计算而降低成本,用云计算的计算和存储能力代替组织能的资源开销,从而企业可以减少IT本门的投资,而对于一些需要处理计算量很大的企业我们也不需要购买大量的和高端的软硬件来处理大量的数据,这也可以通过云计算狠容易的完成。4)减少软硬件的维护问题因为用户所需要的服务都是在云端完成,因此不再用担心软硬件的维护问题,所用到的软硬件几乎都是在云计算管理者那里,所以只要维护好自己用的PC机的软硬件就好了。5)减少软件开发由于一些成本的降低,很多云计算的软件服务费用都会降低,所以这将减少软件的开发。6)及时的软件更新由于大部分软件都隐藏在云端所以用户几乎不在用对软件的更新,这些将在云计算管理者那里由管理人员更新,用户将不用再花费高额的费用或时间进行软件的更新。7)计算能力的增加这是非常明显的,应为当用户和云端连接起来后几乎可以用整个云的计算能力。8)无限的存储能力因为云计算就是非本地的计算机资源的集合,它是将大量的计算机没有用到的资源集合起来,所以它有无限的存储能力。9)增加数据的安全性。因为在云计算系统里一台计算机的崩溃不会影响到整个的系统,将不会影响我们存储在云端的数据,而如果没有云的存储我们自己的计算机的崩溃将可能使我们的数据丢失,因此使用云计算将很高的增加数据的安全性。10)数据的获取将无地点限制云计算及将大量的非本地的计算机集合成集群,因此只要我们有一台能连接到网络的计算机就可以在这个集群里索取任何地点的数据。(2)云计算的缺点:1)要求持续的网络连接第54页共54页 南华大学计算机科学与技术毕业设计(论文)用户要通过连接网络来应用程序和一些文档,而不连接网络几乎不能做这方面的任何事情,因此要能充分的利用云计算就需要持续的连接网络。2)低网络环境下不能很好工作几乎与你计算的各种应用都需要大量的带宽来下载,因此在底网络连接下就不能很好的进行云计算。3)反应慢因为数据在客户端和云端要不断的进行传输,因此应用程序的反应都要比在桌面的应用程序反应要慢。4)功能有限制就现在的云计算功能和桌面的应用程序比较他的功能还是有限制的,较桌面的应用程序功能缩水了很多。5)云不能保证数据有丢失虽然在云端存储的数据较个人计算机数据的安全性能要高,但是它也有不完善的地方,当我们的数据不知道因为什么原因丢失时,云计算相应的持有者并不负有任何责任。6)数据安全性由于云上的资源是公共获取的,所以当我们把数据存储在云端时,存在数据被泄露出去的危险。1.2.2课题的研究内容本文主要研究基于云计算文件系统的实现,本文首先介绍了云计算的定义及其发展历史,从云计算的一路发展,揭示了云计算的优点及缺点。第二本文介绍了云计算系统的体系结构及工作原理,第三本文主要做关于文件系统的实现,从而介绍了实现文件系统的云平台,第四就是搭建这里所需要用到的平台及环境,最后通过平台及环境实现文件系统。第54页共54页 南华大学计算机科学与技术毕业设计(论文)第二章云计算系统的研究2.1云计算的服务层次与传统的PC系统相对应,云计算系统可以在硬件资源、平台到和应用程序等各个层次为用户提供各种级别的服务,即业界普遍认同的经典云计算服务体系----基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。这些服务的交互可以与云计算实现模型的不同层次对应:IAAS服务主要依托于云计算基础构架层,向外提供基础资源服务,PAAS服务主要依托于云计算应用开发和执行环境,向外提供应用开发与运行托管服务,SAAS服务主要通过云计算应用软件层向外提供应用软件服务。其服务体系如图2.1:云计算基础架构SaaSPaaSIaaS图2.1经典云计算服务体系在云计算中,根据其服务集合提供的不同服务类型,把云计算的整个服务体系划分为4个层次分别为应用层、平台层、虚拟化层及基础设施层,其中每一层都对应了一个子服务集合,如下为云计算服务层次。第54页共54页 南华大学计算机科学与技术毕业设计(论文)应用层平台层基础设施层虚拟化层软件即服务平台即服务基础设施即服务硬件即服务云计算四层模式云服务集合中的子服务图2.2云计算服务体系结构云计算的服务层次结构是根据服务集合来划分的,这与计算机网络体系结构中的层次划分有所不同。在计算机网络体系结构中每个层次都会实现一定的功能,层与层之间都会有一定的联系。但是云计算体系结构中的层次是可以分割的,即某一层次可以独立的完成一个用户请求而不用其他的层次为它提供一些必要的支持和服务。2.2云计算系统的结构和原理2.2.1云计算的体系结构云计算平台是一个十分强大的云网络,连接了很多的并发网络计算和服务,可以利用虚拟化技术增强每一个服务器的能力,并且将各自的资源通过云计算平台整合起来,提供超级计算的能力和存储能力。通用的云计算体系结构如下。第54页共54页 南华大学计算机科学与技术毕业设计(论文)云用户端管理系统部署工具服务器集群服务目录资源监控图2.3云计算体系结构这里的云用户端指向云端提出请求的交互界面,提供可以让用户使用云的入口,云计算的“大门”为浏览器,因此用户可以通过web浏览器进行注册,登录、制定服务、配置和管理用户。打开应用的实例与本地桌面系统一样。管理系统和部署工具就是提供管理和服务,能够管理云用户及对用户授权、登陆、认证等进行管理,并且可以管理可用计算资源,接受用户的请求,根据请求转发到相应的应用程序,调动资源和应用,动态的部署、回收、配置资源。服务目录是云用户在取得相应的权限后可以选择或制定服务,也可以对已有的服务进行取消定制的操作,在云用户端生成相应列表或图标的形式用以展现相关的服务。监控是计算和监控云计算系统的资源的使用情况,当发生某事件是可以做出充分的反应,完成节点资源监控、负载均衡配置和同步配置,确保资源能够顺利的分配给需要的用户。服务器集群式虚拟的或物理的服务器,由管理系统管理,负责高并发量用户请求处理、用户web应用服务、大运算量计算处理,云数据存储是采用相应数据的数据切割算法采用并行方式上传下载大容量数据。第54页共54页 南华大学计算机科学与技术毕业设计(论文)2.2.2云计算系统的原理云计算是对分布式处理、并行处理和网格计算及分布式数据库的改进,它基于解决大型问题的并行计算和网格计算,将计算资源作为可计量的服务为用户提供公用计算,在互联网宽带技术和虚拟化技术的高速发展后产生出云计算。云计算的基本原理为利用远程的或非本地的服务器的分布式计算为互联网的用户提供服务。这可以使用户将资源切换到有需求的应用那里,根据需求访问计算机和存储系统。云计算可以把普通服务器或pc机连接起来获得超级计算机及计算机的计算和存储等功能,而且成本很低。云计算实现了按需计算,提高了计算机软硬件的利用效率。云计算是一种全新的基于互联网的超级计算机模式和理念,实现云计算需要很多种不同技术的结合,并且需要使用软件来实现将硬件资源虚拟化的调度及管理,形成一个大的虚拟化资源池,把存储与移动设备、个人计算机和其他设备设备上的处理器资源集中在一起协同工作。按照最大化理解云计算就是把计算机的资源都放到互联网上,互联网就是与计算时代的云,其中计算资源包括计算机的软件资源和硬件资源。第54页共54页 南华大学计算机科学与技术毕业设计(论文)第三章开发环境的概述3.1典型云计算平台因为云计算的快速发展及其功能进一步的体现,所以云计算的研究吸引不同领域的巨头,因此对云计算的理论及实现架构有所不同。如亚马逊利用虚拟化的技术提供云计算服务,退出S3提供可靠、可扩展的及快速的网络存储设备服务,而弹性可扩展的云计算服务器EC2则采用Xen虚拟化的技术,实现一个虚拟化的执行环境,可以让用户通过互联网来执行自己的程序。IBM将包括Xen和PowerVM的虚拟的Linux操作系统景象与Hadoop并行工作负载调度。现在的云计算通过对资源层、应用层的虚拟化和平台层以及对物理上的分布式集成,使庞大的计算机资源整合在一起。更为突出的是,云计算不仅是资源的简单汇聚,他为我们提供了一种管理机制,让整个集群作为一种资源池对外提供服务,并对开发者透明的获取资源和使用的权限。3.2Hadoop架构的介绍在云计算技术中,编程平台的搭建是十分重要的一个环节,而在各种编程平台中hadoop技术是应用最为广泛的开源编程平台3.2.1Hadoop的概述在Google发表MapReduce之后,04年开源社群用java语言搭建了一套Hadoop框架,用来实现MapReduce算法,用其能把应用程序分割成很多很小的工作单元,每个单元能在任何集群的节点上执行或重复执行。Hadoop是一个分布式存储与计算平台,其适合大数据,对于小数据而言,Hadoop处理效果反而不佳。Hadoop还提供了一种分布式文件系统GFS,是一个可扩展的、结构化的、具备日志分布式文件系统,支持分布式大数据量的读写操作,其容错性很强。H第54页共54页 南华大学计算机科学与技术毕业设计(论文)adoop框架具有高容错性和对数据读写的高吞吐率,可以自动的处理失败节点,下图为hadoop的架构云计算架构HadoopBigTable(分布式数据库)MapReduceAPI(Map,Reduce)GFS(Goole分布式文件系统)图3.1Hadoop架构在Hadoop架构中MapReduceAPI提供reduce和map的处理、BigTable分布式数据库的数据存储和GFS分布式文件系统。使用Hadoop架构可以非常轻松的和方便的完成处理海量数据的分布式并行程序,并且可以运行到大规模集群上。基于Hadoop架构平台可以给出云计算的执行过程如下图所示。第54页共54页 南华大学计算机科学与技术毕业设计(论文)MapReduceAPIMasterWorker1worker2……..workern选择执行Map程序的Worker机器分配数据块到执行map的机器执行将map结果存到本机磁盘选择执行Reduce程序的worker机器结合GFS和BigTable读取远程Map,混合、汇聚、排序,执行Reduce图3.2云计算的执行过程Hadoop作为应用最广泛的云计算编程环境所以它有着大量的优点:1)可扩展性:不管是计算机的扩展性还是存储的扩展性都是hadoop设计的基础对hadoop的设计十分重要,hadoop的扩展性十分的简单,不用修改已有的任何结构。2)Hadoop很可靠:mapreduce的监控和分布式文件系统备份恢复机制使hadoop有了很高的可靠性。3)对硬件要求低:hadoop架构能在任何计算机上执行,对计算机没有什么特殊的要求。第54页共54页 南华大学计算机科学与技术毕业设计(论文)Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务发送(Map)到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。Hadoop的最常见用法之一是Web搜索。虽然它不是惟一的软件框架应用程序,但作为一个并行数据处理引擎,它的表现非常突出。Hadoop最有趣的方面之一是MapandReduce流程,它受到Google开发的启发。这个流程称为创建索引,它将Web爬行器检索到的文本Web页面作为输入,并且将这些页面上的单词的频率报告作为结果。然后可以在整个Web搜索过程中使用这个结果从已定义的搜索参数中识别内容。3.2.2MapReduce分布式处理技术的介绍MapReduce是Goole开发的c++、java、python的编程工具,用于大规模的数据集的并行运算,同时也是云计算的核心技术,一种分布式运算技术,也是简化的分布式编程模式,适合处理大量的数据的分布式运算,用于解决问题的程序开发模式,同时也是开发人员解决问题的方法。MapReduce模式的运行方式是将问题拆分为Map映射和Rduce化简的方法,先通过映射程序将数据分割成不相关的区块,调度非大量计算机处理达到分布式运算的效果,然后通过化简程序将结果整合起来,最后输出开发者需要的结果。MapReduce软件实现是指定一个映射函数,把键值对(key/value)映射成新的键值对,并形成一系列的中间形式的key/value对,在把他们传给化简函数,把有相同中间形式的key及value合并在一起。这里的map及reduce具有一定的关联性,如表3.1所示。第54页共54页 南华大学计算机科学与技术毕业设计(论文)表3.1map、reduce关联表函数输入输出MapReduce(K1,l1)(k2,list(v2))List(k2,v2)List(v2)其中v1、v2即可以使简单数据,也可是一组数据,对应不同的映射函数规则。在map过程中将数据并行,就是把数据用映射函数分开,而redduce是把分开后处理过的分开数据用化简函数的规则在整合在一起,其实就是map函数是将数据分开的过程,而reduce则是对应的整合数据。使用mapreduce,即使编程人员不会分布式并行编程的情况下,也同样可以将自己的程序运行在分布式系统上。Mapreduce的应用也十分广泛包括简单的计算任务、集群计算环境和海量输入数据等。3.2.3MapReduce架构MapReduce主要用于处理产生大数据集的相关实现。用户指定一个映射函数来处理一个key/value对,从而形成一些列中间形式的key/value对。然后再指定一个化简函数合并所有的具有相同中间形式的key的value合并在一起。下面将通过举例来反应mapreduce的架构形式。Mapreduce的主从结构:主节点,只有一个:JobTracker其主要的功能负责接收客户提交的计算任务、把计算任务分配给TaskTrackers执行、监控TaskTracker的执行情况、从节点,有很多个:TaskTrackers第54页共54页 南华大学计算机科学与技术毕业设计(论文)它的主要功能是执行JobTracker分配的计算任务。下面为举例查看mapreduce架构报表系统,数据库和数据仓库会设计的比较麻烦,送一个指令给数据库。报表内存可能小于数据库数据,不能一次性加载,可以采用分布读取,但十分慢,报表系统负责计算的性能远远低于数据量本身。数据量本身远远超过了计算能力,只能用时间换空间。怎么改进?如果都跑相同的报表系统,跑多台,上面做累加,但是数据库这块分成三份,北京一个库,河北一个库,可以报表1系统跑北京数据,报表系统2跑天津数据,这样每个报表处理的数据量处理为原来的一部分。再找一台服务器进行汇总,汇总只是加上,逻辑是不一样的。如果要处理海量数据,从目前硬件的局限,只能是运行很多的服务器来处理海量数据,运行少量的服务器处理中间结果。把逻辑拆分不同的系统中。MapReduce:汇总和报表系统。报表叫map最后的汇总叫reduce.让一个节点关系管理这些东西,Map和reduce在管理上看没有什么差别,由他分配谁是什么角色。其mapreduce架构图形如下。报表系统一Map这一部分是mapreduce汇总系统reduce数据库是分布式的报表系统2管理节点报表系统3客户第54页共54页 南华大学计算机科学与技术毕业设计(论文)图3.3报表mapreduce架构图3.2.4HDFS简介HDFS是Hadoop实现的一个分布式文件系统,HDFS具有高容错性的特点,为了保证数据的一致性,一般都采用一次写入,多次读取的方式。并且设计用来部署在低廉的(low-cost)硬件设备上,它有单一的文本空间,而且它提供高传输率(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streamingaccess)文件系统中的数据。其中HDFS他把数据分成很多很小的快,以64M的大小为一个快,块是磁盘上最小单位。每个数据块(block)在很多个从节点存有数据,客户端是通过主节点获取数据块的位置,然后访问从节点获取数据。(1)与普通文件系统的比较分布式文件系统较普通的文件系统而言,其相同的是分布式文件系统中的文件也是被分成以大小为64MB为一块的数据块存储的,而与普通的文件系统不同之处在于,当一个文件的大小不足64mb时,则这个文件将不占用整个数据块。(2)主从结构首先介绍主节点和从节点。主节点:只有一个Namenode,其主要的功能责任是接受用户的操作请求、维护文件系统的目录结构,便于对文件进行分类管理及管理文件与Block之间关系,Block与Datanode之间关系。从节点:有很多个Datanode,它的主要功能职责是存储文件,当文件被分成很多数据块时,将其存放在磁盘上。下面我们通过一个主从节点的例子在了解一下主从结构。主从结构:须有地方存储服务器和磁盘的映射关系。QQ和具体数据的对应信息。又叫做元数据信息。检索数据更快的话,先访问元数据。所有的节点信息,包括容量信息(不断变化,需要通过节点和元数据不断可以通信,经常通信可以称为心跳机制,节点不停向元数据发送信息,元数据的职责已经改变,管理各个节点的资源情况)都在元数据节点上注册,元数据,索引机制,数据量越大,价值越能体现出来。第54页共54页 南华大学计算机科学与技术毕业设计(论文)引出角色划分:继续增加节点的时候会比较麻烦。节点上面跑程序,不停的发送信息。节点上面跑服务,不会停止。调用元数据函数,传入形参,我节点的信息。元数据职责,处理每个节点的信息。客户可以和节点通信,也可以和元数据通信,也可以元数据和节点通信。元数据就是Namenode,主节点。下面通过一个QQ例子的图来了解一下元数据维护文件和快的关系,以及快与所在节点的关系。元数据(管理节点)心跳机制节点磁盘a节点磁盘bQQ服务器节点磁盘c图3.5主从结构图(3)文件系统的名字空间传统的文件组织体系结构是被HDFS所支持的,程序或用户可以创建目录,并在其中存储自己想要存储的文件。名字空间结构与大多数文件系统是十分相似的。用户可以对文件进行删除、创建或者让文件从一个目录移到另外一个目录以及对一个文件进行重命名等操作。就现在的DHFS而言还不能实现访问权限控制及用户配置,也不支持软硬连接。然而,就现在的DHFS这些性能都不会被影响到。第54页共54页 南华大学计算机科学与技术毕业设计(论文)3.2.5HDFS体系结构在HDFS中,是由给定的名字节点NameNode来管理一些文件系统的名字空间操作的,例如打开和关闭及重命名目录或文件。名字节点NameNode会将block映射到数据节点DataNode上,并处理来自HDFS客户端的读或写请求。DataNode数据节点还根据NameNode名字节点指令删除、创建及复制数据块。HDFS体系架构,如下图所示。客户端NamenodeMetadataopsReaddatanodes客户端写blocks应用Blockopsdatanodes存储服务器存储服务器图3.6DHFS体系结构从DHFS体系结构图可以看出,一个集群包含一个主节点,使系统机构得到了很大的简化。主节点作为系统元数据的存储及仲裁者,使得这种设计形成了一个简化模型用来管理每个名称空间的数据分布,使得用户数据不会流经名字节点。(1)主节点和从节点之间的关系第54页共54页 南华大学计算机科学与技术毕业设计(论文)主节点和从节点是一些软件组件,主要目的是用一种解耦和方式跨越多个异构操作系统在普通的计算机上运行。HDFS是由Java编程语言编写的,因此,HDFS能在任何支持Java编程语言的机器上运行。在一个集群里拥有一台专用机器,用来运行一个主节点,可能还有一个从节点,其他集群中的机器都运行一个从节点。HDFS典型部署是在专门的机器上运行主节点,集群中的其他机从节点;也可以在运行主节点的机器上同时运行从节点,也可以一台机器上运行多个从节点。一个集群只能一个主节点。主节点使用事物日志(editLog)用来记录HDFS元数据的变化,同时也使用使用映射文件(FsImage)存储文件系统的命名空间,其中包含文件的属性信息等。映射文件和事物日志都存储在主节点的本地文件系统中。主节点启动时,从一存储的了映射文件和事物日志的盘里读取映射文件和事物日志,使事物日志的事物都可以应用到内存中的映射文件上,然后将新的元数据移动到本地磁盘新的映射文件中,这样就可以截去旧的事物日志,这个过程通常被称为检查点(Checkpoint)。HDFS还设有SecondaryNameNode节点,它辅助主节点处理事物日志和映射文件。主节点启动的时候就合并映射文件和事物日志,而SecondaryNameNode周期性的从主节点复制映射文件和事物日志到临时目录,合并成为新的映射文件后再重新上传到主节点,主节点及时更新映射文件和清理事物日志,使事物日志大小始终控制在可配置的限度内。(2)NameNode管理对文件系统名字空间的更改和维护NameNode维护系统的名字空间,它将记录每一次的名字空间内的任何改动或名字空间本身属性的改变。我们知道HDFS有很强的容错性,所以HDFS复制文件块以便容错,应用程序在一个文件创建时就制定该文件副本数,这个数量值可以在以后任何时候更改,这个数量值成为复制因子。主节点负责所有块复制决定。第54页共54页 南华大学计算机科学与技术毕业设计(论文)第四章Hadoop云平台搭建4.1Hadoop平台搭建所用到的安装包Hadoop安装包----hadoop-1.1.2.tarJDK--------jdk1.8.0_05Eclipse------eclipse-standard-kepler-SR2-win32-x86_32.zipCygwin-------1.7.29-24.2平台的搭建.4.2.1jdk的安装将jdk的安装包拷贝到root/Downloads/目录下并在此安装jdk其步骤如下;图4.1jdk安装包的存放路径第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.2jdk的安装步骤图4.3jdk的安装步骤第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.4jdk的安装步骤图4.5jdk的安装步骤在这我们看到jdk已经配置成功。4.2.2Cygwin的安装Cygwin的功能就是在Windows平台上模拟出unix环境。现在来对其进行安装,首先,我是先下载了一个引导程序来对它进行安装我先登录网站http://www.cygwin.com/下载setup-x86.exe文件第54页共54页 南华大学计算机科学与技术毕业设计(论文)(1)打开以下载的setup-x86.exe图4.6setup-x86.exe界面(2)点击下一步进入下面的界面图4.7setup-x86.exe的安装步骤第54页共54页 南华大学计算机科学与技术毕业设计(论文)第一项“InstallfromInternet”表示从网络上找到安装文件后会自动安装。一般网络环境好的可以先择此项,但此安装不会保存安装文件,因此若下次需再次安装时也一定需要有网络;第二项“DownloadWithoutInstalling”表示下载安装镜像,但不安装。这里下载有个好处就是,在以后没有网络的情况下也可以自由安装;第三项“InstallFromLocalDirectory”表示安装已下载到本地目录下的安装文件。一般最好先选择“DownloadWithoutInstalling”之后再通过“InstallFromLocalDirectory”来安装,这样就可以方便于日后无网络的时候安装。(1)点击“InstallFromLocalDirectory”进入下一步图4.8setup-x86.exe的安装步骤这里为Cygwin选择安装的地址,我将它安装在“d:programfilescygwin”目录下。(2)点击下一步按钮,继续安装第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.9setup-x86.exe的安装步骤这里选择的是之前下载的setup是存放的地址。(3)继续点击下一步,出现如下界面图4.10setup-x86.exe的安装步骤这里要保证下载时选的4个包在这里已经全部被选中,base—第54页共54页 南华大学计算机科学与技术毕业设计(论文)>sed、editors-->vim、libs-->、net-->OpenSSH。同时检查一下包的状态。其中“keep”为安装,“Reinstall”为重新安装;“Uninstall”为不安装其检测如下图:图4.11setup-x86.exe的安装步骤(4)点击下一步,直接到完成界面。图4.12setup-x86.exe的安装步骤第54页共54页 南华大学计算机科学与技术毕业设计(论文)在这里点击完成就可以完成Cygwin的安装了。4.2.3Windows下系统环境变量的配置(1)右键“我的电脑”-〉系统属性-〉高级/高级系统设置-〉环境变量;在这里进行环境变量的配置。图4.13环境变量配置界面(2)我们这里需要做的事添加环境变量JAVA_HOME;要在系统变量里新建,在“变量名”处,加入JAVA_HOME,在“变量值”处加入安装JDK时的安装目录地址,我这里为d:Javajdk;如下图所示。第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.14JAVA_HOME环境变量配置(3)新建加入环境变量CLASSPATH;要在系统变量里新建,在“变量名”处写入CLASSPATH在“变量值”处输入:“.;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar”。这里一点要注意前面的“.;”,这个不能少写或写错。图4.15JAVA_HOME环境变量配置(4)新建环境变量CYGWIN在系统变量里新建,在“变量名”处输入CYGWIN在“变量值”处输入:ntsec。如下图所示。图4.16cygwin环境变量配置第54页共54页 南华大学计算机科学与技术毕业设计(论文)(5)配置path目录在系统变量目录中选中“PATH”然后点“编辑”。1)第一步首先是添加JDK的路径,并以分号结束;路径为:C:Javajdk1.8.0_05;2)第二步添加JRE的路径;路径为:C:Javajre8;3)第三步添加Cygwin的bin路径;路径为:D:ProgramFiles(x86)cygwin64bin;4)第四步添加Cygwinusr的bin或sbin路径;路径为:D:ProgramFiles(x86)cygwin64usrsbin;将这些都添加到PATH的最前面,最后就完成了path目录的配置了。如下图所示。图4.17path目录配置4.2.4安装和配置SSHD服务(1)安装SSHD服务启动已下载安装好的Cygwin;第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.18sshd服务安装在已启动的Cygwin中输入命令$ssh-host-config;当我们输入了$ssh-host-config会出现供我们选择的问题Shouldprivilegeseparationbeused?(yes/no)在这里选择no;之后还回出现一个问题,选择yes;图4.19sshd服务配置接着上面会出现:“EnterthevalueofCYGWINforthedaemon:[]”,在这里输入ntsec;接着下一个问题是:“Doyouwanttouseadifferenname?(yes/no)”,这里选择是no;第54页共54页 南华大学计算机科学与技术毕业设计(论文)接着是:“Createnewprivilegeduseraccount‘cyg_server’?(yes/no)”,这里选择yes;最后出现:“Pleaseenterthepassword:”,但是在这里不用对它设置密码,回车之后,当我们看到:“Hostconfigurationfinished.Havefun!”之后,表示sshd已经安装成功;图4.19sshd服务配置4.2.5启动ssh服务在我的电脑那里右键打开到管理到服务和应用程序再到服务。选择CYGWINSSH,并启动。如下图:第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.20sshd服务启动注意:在启动ssh服务的时候可能会弹出“本地计算机上的cygwinsshd服务启动后停止.....”的错误。这种情况可能是由于权限问题所导致,这是要先解决掉这个错误才可启动cygwinssh服务。(1)配置sshd服务的无密码登陆1)首先生成密钥对。打开Cygwin输入:ssh-keygen;图4.21sshd服务启动2)在将生成的密钥对中的公钥加入到公钥授权文件中。先进入.ssh的目录,输入:cd第54页共54页 南华大学计算机科学与技术毕业设计(论文).ssh/;然后将该目录下的文件id_rsa.pub的文件加入公钥授权文件中:cpid_rsa.pubauthorized_keys;图4.22sshd服务启动3)退出Cygwinsshd的登录;4)打开Cygwin;输入:sshlocalhost,这时会遇到一个问题Areyousureyouwanttocontinueconnecting(yes/no)?这里选择yes。5)通过who指令来验证是否已经成功登陆服务。(2)配置Hadoop安装包1)将以下载的Hadoop安装包解压。我这里使用的Hadoop为hadoop-1.1.2.tar.gz。注意:自己解压hadoop安装包后所存放的目录,这里为:“D:hadoop-1.1.2”。2)修改配置文件(hadoop解压文件内的conf目录,这里为D:hadoop-1.1.2conf);3)hadoop-env.sh找到D:hadoop-1.1.2conf下的文件“hadoop-env.sh”,用记事本打开。找到“exportJAVA_HOME=/usr/lib/j2sdk1.5-sun”将JAVA_HOME之后的修改成JDK的安装目录,并且在目录前加入/cygdrive/,即修改成“exportJAVA_HOME=/cygdrive/C/Java/jdk1.8.0_05”。保存之后,退出即可。如下图所示。第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.23Hadoop安装包配置4)core-site.xml找到D:hadoop-0.20.2srccore下的文件“core-default.xml”,并将其拷贝到D:hadoop-0.20.2conf下。删除原有文件“core-site.xml”,并将拷贝过来的文件“core-default.xml”改名“core-site.xml”,然后用记事本打开。搜索到节点“fs.default.name”:将其中value值改成“hdfs://localhost:9000”:保存退出即可。5)hdfs-site.xml找到找到D:hadoop-0.20.2srchdfs下的文件“hdfs-default.xml”,并将其拷贝到D:hadoop-0.20.2conf下。删除原有文件“hdfs-site.xml”,并将拷贝过来的文件“hdfs-default.xml”改名“hdfs-site.xml”,然后用记事本打开。搜索到节点“dfs.replication”:将其中value值改成“1”:保存退出即可。6)mapred-site.xml找到D:hadoop-0.20.2srcmapred下的文件“mapred-default.xml”第54页共54页 南华大学计算机科学与技术毕业设计(论文),并将其拷贝到D:hadoop-0.20.2conf下。删除原有文件“mapred-site.xml”,并将拷贝过来的文件“mapred-default.xml”改名“mapred-site.xml”,然后用记事本打开。搜索到节点“mapred.job.tracker”:将其中value值改成“localhost:9001”:保存退出即可。7)启动Hadoop;启动CygwinTeminal。开启sshd服务并登陆。$netstartsshd$sshlocalhost并通过who指令来查看是否登陆成功。8)启动Hadoop;进入Hadoop的bin目录,我这里为:“D:hadoop-0.20.2bin”。$cdD:$cdhadoop-0.20.2bin$./hadoopnamenode-format(格式化bin目录,第一次登陆须格式化)$./start-all.sh9)校验Hadoop是否开启成功$./hadoopdfsadmin-report图4.24Hadoop启动第54页共54页 南华大学计算机科学与技术毕业设计(论文)如上图所示,Hadoop启动成功。至此,Windows上基于Hadoop的云平台搭建完成。4.3EclipseHadoop插件开发配置4.3.1Eclipse插件的介绍Hadoopeclipse是Hadoop开发环境的插件。在配置完Hadoop的相关信息之后,在对应Hadoop目录下面的contribeclipse-plugin下有一用于eclipse下Hadoop开发的jar包:hadoop-1.1.2-eclipse-plugin.jar。这里的目录为:D:hadoop-1.1.2contribeclipse-plugin。该包中包含eclipse上Hadoop开发的所有API。因此只要将此包导入eclipse并加以配置eclipse之后就可以在eclipse上创建MapReduce应用程序了。4.3.2具体步骤(1)安装eclipse(2)Eclipse插件开发配置将Hadoop开发包复制到eclipse安装目录下;将文件“D:hadoop-0.20.2contribeclipse-pluginhadoop-0.20.2-eclipse-plugin.jar;复制到eclipse的目录:G:Softwareeclipseeclipseplugins中。其实就是将hadoop-0.20.2-eclipse-plugin.jar放入Eclipse的plugins目录中。然后重启eclipse,即可看到相应的效果,当发现DFSLocations时,则表示Eclipse已经识别到了Hadoopeclipse插件。如下图所示。第54页共54页 南华大学计算机科学与技术毕业设计(论文)图4.25eclipse插件开发配置(3)设置Hadoop的安装目录Eclipse上选择Windows->preference,会发现有一项HadoopMap/Reduce,选择这一项,并且在右边的“Hadoopinstallationdirectory:”处选择自己Hadoop的安装目录。我这里为:D:hadoop-0.20.2。如下图所示。图4.26Hadoop安装目录(4)把工作目录切换到Map/Reduce。在eclipse上选择Windows->OpenPerspective->Other,在弹出的对话框中选择Map/Reduce,即可完成工作目录的切换。(5)建立Hadoop集群链接在下方的Map/ReduceLocation中右键单击,选择NewHadoop第54页共54页 南华大学计算机科学与技术毕业设计(论文)Location,并在弹出的对话框中填写链接Hadoop集群的信息。如下图所示。图4.27Hadoop集群链General配置。其中,Locatiionname可以任意,自己取名字。对于Map/ReduceMaster中,Host填写Master.Hadoop的IP地址,单击的话也可以是localhost;Port为之前固定配置的9001。对于DFSMaster中,勾选UseM/RMasterhost;Port也是之前固定配置好了的9000;而Host已经固定了localhost。5)Advancedparameter配置。将Hadoop.tmp.dir选项修成Hadoop集群中的地址(在core-site.xml中配置):/user/hadoop/tmp。图4.28Advancedparameter配置第54页共54页 南华大学计算机科学与技术毕业设计(论文)设置完后回车即可。此时会看到Map/ReduceLocation下多出myHadoop链接信息。链接完成之后,可以通过Eclipse软件左侧的DFSLocations查看HDFS文件系统结构。第54页共54页 南华大学计算机科学与技术毕业设计(论文)第五章云文件系统的实现5.1云文件系统实现前的技术准备(1)首先,通过servlet中的应用requst.getParameter()方法,将要接收的数据存到一个字符串中,其格式如下Stringstringname=requset.getParameter(“parametername”)(2)将字符串转换成字节数组,其方法如下:Bytebytearrayname[]=stringname.getBytes(“iso-8859-1”);(3)将字节数组从新转化为utf-8(字符集编码)格式的字符串,Stringname=newString(bytearrayname,”utf-8”);经以上3个步骤,就可以将中文字符串接受到我们的servlet中作后续的操作。但是在一般的情况下,由于接受的数据比较多,我们可以将中文封装转化为一个转换方法handleString(Strings),这就可以在需要字符串进行转换时,随时的进行调用转换,方法如下:Publicstringhandlestring(strings){Try{Bytebb[]=s.getbytes(“iso-8859-1”);S=newstring(bb,”utf-8”);}Catch(exceptione){System.out.print(e);}Returns;}//handlestring第54页共54页 南华大学计算机科学与技术毕业设计(论文)5.2文件系统服务器端代码第54页共54页 南华大学计算机科学与技术毕业设计(论文)5.3云脑系统的登录实现5.3.1登陆实现代码第54页共54页 南华大学计算机科学与技术毕业设计(论文)图5.1登陆界面第54页共54页 南华大学计算机科学与技术毕业设计(论文)图5.2注册界面5.4云文件夹的制作5.4.1工具菜单栏这一部分的作用是组织操作整个云盘文件系统的选型菜单第54页共54页 南华大学计算机科学与技术毕业设计(论文)针对工具栏菜单,要对它制定鼠标点击出发的方法,这里定义了一个menuhandler函数对菜单栏的每一个按钮进行事件处理,当发生点击事件时,函数将捕捉被点击的选项,并对其内容标签进行保存,用switch语句对标签类型进行判断,从而针对不同的点击内容进行不同的处理。其实现代码如下:第54页共54页 南华大学计算机科学与技术毕业设计(论文)5.4.2快捷操作栏快捷操作栏,就是将用户常常会用到的按钮组织在一起,方便用户进行快速而简单的操作。其实现代码如下第54页共54页 南华大学计算机科学与技术毕业设计(论文)云盘信息如下其实现如下图5.3云盘信息第54页共54页 南华大学计算机科学与技术毕业设计(论文)5.4.3文件栏文件栏当用户进入自己的的需要访问的文件夹的时候,可以通过文件栏了解文件夹下的内容,对其进行操作,为方便,一般会用户设计3种显示形式,即缩略图、列表、详细信息。5.5云文件系统的功能能实现5.5.1、云文件系统中的前进和后退实现当用户进入文件系统的操作过程,经常想在进入下一个目录后,返回上一个访问的目录,这就相当于在电脑里实现前进和后退的功能的实现。其实现步骤如下:1)堆栈及相应变量的设置2)后退按钮的处理函数。具体实现5.5.2新建文件夹的实现用户使用云文件系统时,要灵活组建文件夹目录结构,新建文件夹时十分重要的。对于新建文件夹这里分两步实现。1)显示效果的设计,这一步的实现比较简单其代码如下第54页共54页 南华大学计算机科学与技术毕业设计(论文)图5.3新建文件夹界面2)在新建文件夹过程中,要让此模块识别到用户在目录下的那个文件夹内新建文件夹,这里需要用到一个共享变量当用户选择进入一个文件夹时就将该文件夹ID存储到共享变量中,然后只需将共享变量中的所需信息取出,便可识别在哪个文件夹下建立文件夹。具体实现如下:Importflash.net.sharedobject;//引入共享变量的包文件第54页共54页 南华大学计算机科学与技术毕业设计(论文)Publicvarusershare:sharedobject;//定义共享变量Privatefunctioninit():void{//初始化共享变量Usershare=sharedobject.getlocal(“userdata”);}Privatefunctiongetuid():int{//获取用户id信息Ruturnusershare.data.userid;}Privatefunctiongetfoid():int{//获取所在文件夹信息Ruturnusershare.data.foid;}3)将用户新建的文件夹信息发送给服务器端进行数据同步。5.3.3文件权限的设置设置文件权限首先我们要确定对哪个文件夹或哪个文件进行权限设置这和上面我们确定在哪里新建文件夹的办法一样,先设置一个共享变量记录要进行的文件位置代码方法如上。搭建的平台是一个模拟的Linux环境,打开Cygwin进入要修改的文件夹或文件目录。1)用户读权限的设置我这里要设置的文件为file.txt将此文件设置为所有人皆可读输入:chmoda+rfile.txt2)写权限的设置将文件file.txt设置为所有者及和所有者同组的可写,其他的不可写输入:Chmodug+w,o-wfile3)查看权限的配置输入:ls-all第54页共54页 南华大学计算机科学与技术毕业设计(论文)第六章总结今天,大学里最后的一次“作业——我的毕业设计,终于完成了!这次我选择的题目是基于云计算文件系统的设计。在接触这个设计之前,我对云计算的概念是只是听说过而从来没有接触过,再者云计算还没有被推广,所以我认为这是个比较新颖的题目。所以,我选择了它。的确作这个题目在学校里是一个十分新鲜的题目,通过这个设计让我了解了很多以前从没有接触过得知识,其中了解了云计算的主要计算方法MapReduce,了解了为这个计算量身定做的Hadoop编程平台,也简单的通过这个平台设计出了文件系统。当然做这个设计需要的信息量也是十分庞大的,我要搜集很多资料,来做出我的论文,同时在搭建平台时也是十分困难的,要在网上咨询一些专业人员,总算是做出来了。这次的毕业设计很有意义,它让我切身体会到理论与实际结合才能让自己获得更大的进步。在今后的发展中,我不仅要加强理论学习,还要增强动手能力。第54页共54页 南华大学计算机科学与技术毕业设计(论文)参考文献[1]王鹏.走近云计算(第一版).人民邮电出版社.2009年6月[2]罗军舟.宋爱波.云计算体系架构与关键技术.通信学报.2011年7月[3]JohnRhoton.CloudComputingExplained:ImplementationHandbookforEnterprises.RecursiveLimited.2nd[4]刘鹏.云计算(第二版).电子工业出版社.2011年5月[5]Hadoop技术论坛.Hadoop开发者.第一期.2010年1月27日[6]Hadoop技术论坛.Hadoop开发者.第二期.2010年3月30日[7]Hadoop技术论坛.Hadoop开发者.第三期.2010年6月20日[8]Hadoop技术论坛.Hadoop开发者.第四期.2011年[9]李铮.多媒体云计算平台关键技术研究.博士学位论文.2011年5月5日[10]吴朱华.云计算核心技术剖析.人民邮电出版社.2011年5月第一版[11]张为民.云计算:深刻改变未来.科学出版社.2009[12]周洪波.云计算:技术、应用、标准和商业模式.电子工业出版社2011年6月[13]TomWhite.Hadoop:TheDefinitiveGuide[14]徐立冰.云计算和大数据时代网络技术揭秘.人民邮电出版社.2013年4月第一版[15](美)KaiHwang,GeoffreyC.Fox,JackJ,Dongarra著,武永卫,秦中元,李振宇译.云计算与分布式系统从并行处理到物联网[16]MichaelRohs,JurgenBohn.EntryPointsintoaSmartCampusEnviroment-OverviewoftheETHOCSystem[D].SwissFederalInstituteofTechnologyETHZurich,2007.[17]M.WasimRaad.KFUPMSmartCampusandtheRoleofRFIDinAcademia[D].KingFahadUniversity,2010.[18]SangkeunLee.“SmartCampusSystem”AProposalfor第54页共54页 南华大学计算机科学与技术毕业设计(论文)Context-AwareApplication[D],.SeoulNationalUniversity,2011.[19]严真·云计算环境下图书馆的变革[J].图书馆工作与研究,2010(2):37-39·[20]陈全,邓倩妮·云计算及其关键技术[J].计算机应用,2009,29(9):2562-2564·第54页共54页 南华大学计算机科学与技术毕业设计(论文)谢辞在本次设计中,我首先是查资料,包括图书馆书籍、知网上的相关文献和网上一些相关的知识;在有了思路之后,我开始确定设计方案。在这个过程中,我遇到了很多不懂的问题,自己不断查阅资料,同时也得到了老师的认真指导和同学的热情帮助,在此我表示非常感谢大家!通过这次的设计,我学到了很多东西。之前学过一些关于云计算的开发环境的基础知识,但是那是整个开发环境的很小一部分。在真正要去设计云计算功能的时候,要考虑很多因素,比如开发环境的配置、集群节点的设计等都要做的很仔细。在开始作云计算的时候,我感到有些迷惑,多亏了老师及同组同学的帮助,我才顺利地作出这一个设计。由于云计算之前真的没这么接触过,所以想要把一个关于云计算的设计做出来是一件不容易的事情。在此,在这很感谢我的老师谭邦老师,他亲自为我们找了很多阅读文献资料。因为自己缺乏经验,所学知识也很有限,所以阅读相关的文献对自己设计思路的形成有很大的帮助。这次设计使我将所学的知识与具体实践结合起来,虽然困难重重,但是苦中有乐,能学习到新的知识才是这其中最大的乐趣。在今后的发展里,无论是进一步学习还是工作,我都要谨记学以致用。最后,再次感谢我的老师谭邦老师的指导和同学们的帮助!第54页共54页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭