首页 > 范文大全 > 正文

云计算大学计算机基础学习系统设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇云计算大学计算机基础学习系统设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:为解决在大学计算机基础课程学习系统中,由于大量数据同时上传到服务器造成负载过重的问题,本文将云计算引入到该系统的设计中。该系统采用Hadoop并行编程模型,搭建了实验性的云计算平台大学计算基础课程学习系统。该系统具有分布式计算,资源共享等特点。实验结果表明,云计算与大学计算机基础课程学习系统建设相结合能有效地解决服务器负载过重问题。

关键词:云计算;Hadoop;大学计算机基础;系统设计

中图分类号:TP3-05 文献标识码:A DoI: 10.3969/j.issn.1003-6970.2012.06.029

Cloud Computing University Computer based Learning System Design

oUYaNG Chun-juan, LIU Chang-xin, SUN Ling-yu

(Jinggangshan University of electronic information engineering college, Jiangxi Ji’an 343009, China)

0 绪 论

随着互联网的飞速发展,基于Internet的多媒体学习资源建设得到了广泛地应用。然而传统以计算机网络为基础各种学习系统的性能一直是阻碍其发展的关键因素。例如,大学计算机基础课程学习系统应用中,当学生向服务器提交作业时,由于所有的学生几乎都在同一时间段提交,大量的数据同时上传到服务器,服务器负载过重导致服务器瘫痪。按传统的方法,解决该问题需对计算机硬件及网络带宽提出更高的要求,这在实际操作中不易达到。而云计算时代的到来,为解决以上问题提供了理想的技术支持。目前,云计算已在各类学习系统中得到应用[1-3]。本文采用Hadoop并行编程模型,搭建了实验性的云计算平台大学计算基础课程学习系统,解决了大量数据的传输问题。该系统具有分布式计算,管理不同系统资源及存储大量数据等特点,为实现一个同时满足学生和教师的学习系统提供了新的设计思路。

1 云计算的基本原理

云计算(Cloud Computing)[4]是一种新型的基于互联网的计算模式。其核心思想是通过计算机网络将庞大的存储和计算处理程序分布到大量非本地或远程服务器的分布式计算机中,并为用户提供服务。按最通俗地理解云计算就是把计算资源都放到互联网上,然后通过网络以按需,易扩展的方式获得资源。提供资源的网络被称为“云”,其可以无限扩展,随时获取,按需使用,按使用付费。

Hadoop[5]为分布式系统基础架构,是一个更容易开发和运行处理大规模数据的软件平台,具有扩容(Scalable)、成本低(Economical)、高效率(Efficient)和可靠性(Reliable)等特点。 Hadoop实现了一个分布式文件系统HDFS(Hadoop Distributed File System)。HDFS提供了分布式存储底层支持,具有高容错性特点。Hadoop还实现了MapReduce分布式计算模型。MapReduce将应用程序的工作分解成很多工作小块,将它们放置在服务器群的计算节点中,在节点上直接处理数据。本文利用Hadoop开发实验性的云计算平台大学计算基础课程学习系统。

2 搭建云计算平台的大学计算机基础课程学习系统

本系统根据本校大学计算基础课程的实际教学情况,采用6台计算机来搭建大学计算机基础课程系统的云计算平台。在Hadoop系统中,需要1台机为Master,其余5台机器作为Slave。Master用来配置NameNode并负责JobTracker工作。该工作主要负责整个分布式数据的管理和分解任务,并调度和跟踪各个任务的执行。Slave配置DataNode并负责完成TaskTracker工作。该工作主要根据本地数据,存储分布式数据,具体完成Map任务和Reduce任务。Hadoop集群的构建具体实现步骤描述如下:

(1)由于Hadoop要求所有机器上hadoop安装目录结构要相同,并且具有一个相同的用户名的帐户。本系统的帐户设置为dxjsj,主目录是/home/dxjsj。

(2)将hadoop0.12.0压缩包解压至HadoopInstall文件夹中。所有的配置文件都在/hadoop/conf/目录中,所有执行程序都在/hadoop/bin目录中。将 /hadoop/conf/目录中的hadoop_site.xml,slaves,hadoop_env.sh三个文件拷贝到hadoop-config/目录中。

(3)配置6台机器的IP。

对于Master机器,其机器名和IP分别dxjsj-1:192.168.8.61。其余的5台Slave机的机器名和IP依次设置为:dxjsj-2:192.168.8.62 ……, dxjsj-6:192.168.8.66。为了确保6台机器之间能相互正确解析,可通过ping主机名来实现,通过修改/etc/hosts文件打开达到Ping通。

(4)建立Master到每一台Slave的SSH受信证书。

Hadoop启动以后,Namenode是通过安全协议SSH(Secure Shell)来启动和停止各个节点上的各种守护进程的,因此在本系统中需要配置SSH使用无密码公钥认证的方式。具体操作为在Master和所有Slave机器上执行ssh-keygentrsa命令后,在/root/.ssh/目录下将产生一个名为id_rsa. pub的证书文件,采用scp命令将其复制到每个Slave上。

(5)Hadoop安装完成之后,执行/hadoop/bin/hadoop namenode-format命令格式化namenode。

(6)正式启动hadoop。执行Master上的start-all. sh启动所有的Hadoop守护;执行stop-all.sh停止所有的Hadoop。

至此,基于云计算大学计算机基础课程学习系统中的云计算平台搭建完成。整个学习系统是由客户端、网络平台和云计算平台三部分构成:

1)客户端 本系统学生机作为客户端,安装windows XP操作系统。 整个学习系统为不同类别的用户提供不同的界面和功能。在客户端的学生使用的操作系统是windows XP,而云计算平台的系统是FC5。为此,本系统采用WebDAV(Web-based Distributed Authoring and Versioning)协议访问软件包,来解决客户端和云计算两个不同平台之间的数据交换。

2)网络平台 网络平台是整个系统的基础。该平台的作用是识别用户终端不同需求,通过接口在该系统的云计算平台层上调用相关服务。其主要功能模块介绍如下。

①管理模块:该模块主要对用户基本信息进行登记和管理。用户通过唯一的帐号进行注册。

②学习模块:学习模块是最主要的模块。在该模块中,学生可进行自主地学习。包括课程内容的学习,辅导和测试,以及教师对学生学习的掌握情况等内容。

③交流模块:提供教师与学生、学生与学生、教师同行之间提供一对一,一对多,多对多的实时交互,可以发表个人日志,留言等。

④存储模块:在存储模块中主要是实现虚拟硬盘的功能。用户可下载学习资料进行学习,并上传学习资源供他人共享。

3)云计算平台 该平台是本系统的核心部分。用户终端根据网络平台上各功能模块需要的服务,通过接口,建立起与系统中云计算平台的连接。连接成功后,所有的任务都由云计算平台处理通过Hapood分布式系统,采用任务拆分的方式完成,再将处理完毕后的数据通过接口传递给用户。在云计算平台中,可实现数据存储、分布式计算和数据管理等功能。

3 实验仿真

本实验使用6台计算机采用Hadoop0.12.0分布式系统Hadoop搭建云计算平台, Java版本为jdk6.0。用户端为150台机器,用于学生学习,操作系统为Windows XP。当传输的文件的比较小时,如小于1M,则单机服务器能够承受,但当学生传送的文件较大时,且在规定的时间段内上传文件至服务器时,则服务器的负载将大大加重,收集时间呈指数级增加,最终导致服务器崩溃。使用云计算平台收集学生上交的各类文档资料时,多台服务器同时协同工作,应用程序的工作分解成很多小的工作小块,并将它们放置在服务器群的计算节点中同时进行,系统运行稳定。

4 结 语

将云计算技术运用到各种网络学习系统建设中,是对高校教学模式改革一种新的探索。本文采用Hadoop并行编程模型,搭建了实验性的云计算平台的大学计算基础课程学习系统,解决大量数据传输导致服务器负载过重问题。随着云计算技术的日渐成熟,其必将在各类学习系统中得到广泛的应用。

参考文献:

[1] 饶少阳.向云计算靠扰[J].信息网络,2008,(8):5-9.

[2] 张智威.信息以人为本——云计算时代的社交网络平台和技术[EB/OL].,2011-07-11.

[3] 俞华锋.基于云计算的三维虚拟学习环境的设计与应用[J].计算机仿真,2009,27(9):315-318.

[4] 陈涛.云计算理论及技术研究[J].重庆交通大学学报,2009,(4):104-106.

[5] Hadoop[DB/OL]..