新业态新模式下数据库实验平台建设
2021-01-11张少娴陈云芳
张少娴, 陈云芳
(南京邮电大学 计算机学院,江苏 南京 210046 )
0 引言
MySQL作为一种常用的大型关系数据库管理系统,由于其开源、稳定、安全等特性,在企业管理软件、Web应用软件等各个方面受到用户的青睐。鉴于该产品应用的广泛性,我校开设了“大型数据库技术”这门课程作为计算机及相关专业的专业课,该课程是一门与实践紧密结合的课程,要求学生通过上机和综合实验,熟悉大型数据库管理系统产品MySQL,熟练掌握MySQL数据库基本操作、开发以及日常运维优化方法。在实际教学中一些问题不可避免地摆在我们面前:实验课时太少、课外实验缺乏监管和指导;从实验内容和实验方法的制定到实验结果的处理,学生都是被动的接受者,学生的实践需求较难反映给教师,学生和教师很难进行实时交流,出现学生迷惑实验初衷,教师也较难把握实验效果的两难境地,影响实验教学的质量。尤其2020 年新冠肺炎疫情这样的突发公共事件,更是给线下实验教学带来了巨大的冲击。为了突破传统线下实验教学受时间、场地、软硬设备和师资条件的制约,设计与开发基于云的线上实验环境就显得十分有意义。
1 云计算概述
云计算是分布式计算、网格计算、并行计算、虚拟化和网络存储等技术融合发展的结果,具有虚拟化资源、资源池式管理和弹性扩展提供服务的特点。在云中,所有的资源包括硬件、
软件、平台均是作为服务被传递的,所有云用户都可以通过网络从“云”所提供的资源中获得所需要的服务。在云用户端看来,“云” 中的资源是动态的、无限扩展的、虚拟化的,并且可以随时获取,按需使用。从这个角度来看,云计算具有节省成本、资源利用率高、扩展性强等优势,进而体现出云计算“一切皆服务”的基本理念[1]。
本在线实验平台的开发,最终选择了阿里云作为系统的云平台,相比较于传统的服务器商家,阿里云会严格执行服务器准入标准以及运维标准,以保证整个云计算的高可用性,数据的可靠性。并且阿里云每个地区提供不同的服务区,面对不同的地域和行业都可以在阿里云上找到对应的解决方法。
2 课程实验简介
俗话说“眼过千遍,不如手过一遍”,该门课程是一门实践性很强的课程,实验内容的设置最终要以学生掌握知识、并提高学习能力为目标[2],因此存在几个关键的问题:(1)实验任务的设计要有启发性和科学性,能启发学生进行逻辑推理,并能培养学生的动手能力和综合解决实际问题能力。(2)知识点的掌握。实验的目的就是让学生能够通过实验环节掌握知识点,并能运用相关知识点解决实际问题,这对于教师提出更高的要求,需要思考如何提出一个完善的实验方案才能够涉及相关的知识点,同时,该实验方案又能从多个角度培养学生思考问题、解决问题的能力以及培养学生创新思维和创新能力。
针对理论教学中的重要知识点,笔者精心地设计了实验课程方案,设计了如下的实验考核内容[3]。编写了详细的实验指导书,明确学生的上机目的和步骤。
实验一:MySQL数据库安装配置及基础使用(2学时)。
实验二:MySQL数据库的开发基础(2学时)。
实验三:MySQL的进阶开发技巧(4学时)。
实验四:MySQL管理维护(2学时)。
实验五:MySQL数据库建模(2学时)。
3 实验平台的建设
3.1 平台的主要功能
整个系统有3个模块:学生、老师以及管理员。学生功能区模块主要包括通知公告、在线实验、查询成绩、资料下载、交流区5个模块;老师功能区模块主要包括学生信息管理、实验管理、视频教学、发布公告、实验答疑、导出功能;管理员模块功能包括管理实验老师的相关信息、实验资源管理、发布和删除各种通知[4]。
学生模块主要功能有以下几项。
(1)通知公告:及时地获得老师发送的与本班级相关的实验公告。
(2)在线实验:学生通过老师分配的用户名和密码进入到已经配置好的phpMyAdmin图形化界面,建立以自己学号命名的数据库,根据教师提供的实验教程进行在线实验,完成实验操作后,在线提交实验报告,等待教师批改、查看。
(3)查询成绩:学生可查询每次实验的成绩以及教师的批改意见。
(4)资料下载:下载教师提供的各种实验配套资源,包括各种实验教程以及实验视频。
(5)交流区:学生对实验的疑惑或者建议,都可以通过这功能区反馈,并能查看到老师的回复。
老师模块主要功能有以下几项。
(1)学生信息管理:班级信息的增删改、班级成员的管理。
(2)实验管理:实验项目的增删改、布置实验(将某个实验作为某个班级的一个实验内容);老师可以根据班级和实验名搜索班级实验报告的提交进度;通过查看实验详情检查当前班级的学生的实验完成情况,查看实验详情还包括搜索、查看实验报告、批改实验报告三个基础功能。老师可查看本班所有学生的实验详情,也通过学生姓名进行搜索,搜索结果包括学生的学号、姓名、提交状态、实验批改状态以及评分、评语等基本信息,对未批改的实验报告进行审阅及评分。
(3)视频教学:老师可录制视频并上传至平台以供学生能够随时随地的进行学习,对于录制好的视频课程可及时地更新或者下架、删除等操作[5]。
(4)发布公告:发布实验任务、实验报告上交时间等公告信息。
(5)实验答疑:对学生提出的关于实验的疑惑进行回复。
(6)导出功能:可以按班级批量导出学生的实验报告。
3.2 平台的实现及部分运行效果图
该在线实验平台整体采用 B/S 架构,前端页面展示采用 JSP 技术,后台使用 Tornado框架以及SSH框架进行开发,数据存储采用 My SQL、Redis,数据库负载均衡采用MyCat,并以 Tomcat 作为服务器。在云服务器中安装配置了MySQL数据库,并安装了MySQL的图形化管理软件phpMyAdmin,通过使用phpMyAdmin完成在线实验。同时在代码开发过程中,对各个浏览器的兼容问题做出相应的样式解决和相关适配,对样式与JavaScript进行兼容调整,以保证在多种浏览器及高版本中准确执行,随时满足不同用户的要求。并且,加入了移动端的适配,部分手机也可以访问该网页。
在线实验的入口界面如图1所示。教师查看班级实验报告的提交进度页面如图2所示。按班级、实验名搜索实验详情页面如图3所示。
图1 在线实验的入口
图2 实验管理页面1
图3 实验管理页面2
4 结语
本文所展示的基于云的数据库在线实验平台使学生可以不受时空的限制,随时随地完成实验操作;平台上的各种学习资源都是实时更新的,学生可实时获取丰富的学习资源;老师可以针对每个实验进行统一的实验环境配置与管理,免去了学生自己配置环境的烦琐过程,从而使学生把所有精力投入知识点的学习;方便教师布置和批改实验报告,便于教师与学生之间的信息交流,从而高质量地完成实验教学工作,也为新冠肺炎疫情防控期间教学的顺利进行提供了大力的支持。
由于准备时间比较仓促,基于云的数据库在线实验平台还需要进一步地完善和改进功能,进一步提高学生自主获取知识和创新的能力。