数据库技术实践教学体系改革新

时间:2024-02-15 点赞:50080 浏览:101025 作者原创标记本站原创

此文是一篇数据库论文范文,数据库方面论文范文参考文献,与数据库技术实践教学体系改革新相关本科毕业论文范文。适合不知如何写数据库及操作系统及实验教学方面的论文格式专业大学硕士和本科毕业论文以及数据库类开题报告范文和职称论文的作为写作参考文献资料下载。

摘 要 :阐述选择开源数据库作为实验核心平台环境的理由,提出使用开源数据库技术构建实验环境的整体解决方案.通过数据库服务环境改造、应用案例建设及系列实践项目设计,带动实践体系的整体改革.

关 键 词 :数据库原理;MySQL;开源技术;实践教学体系

作为信息系统的基础,数据库技术在计算机应用与开发中处于举足轻重的地位.近年来,国内高校大部分数据库原理相关课程均采用微软的MS SQL Server(简称SQL Server)作为实践平台,究其原因与Windows环境的普及、配套工具界面友好等因素有关.

国内高校使用SQL Server产品作为教学对象并未得到微软公司的正式许可,无形中给学生灌输了随意侵犯知识产权的印象.在使用SQLServer实验环境时,许多学生均停留在个人数据库使用阶段.统计结果表明,90%以上的学生对于客户/服务器机制、数据库登录、数据库用户和权限角色等概念含糊不清.学习者过度依赖于图形化操作界面,致使其对数据库系统原理认识停留在浅层,在后续的毕业设计等作品中表现得比较明显.

1.数据库产品选型说明

市场上数据库管理系统产品(以下简称数据库产品)很多,但是占据市场主导地位的却不多.在为数据库原理课程选择配套的实践平台时,我们通常考虑如下几个因素:技术综合性、产品流行度、技术开放性及技术标准等.

根据调查,目前国内产业界流行的3种关系数据库产品分别为:Oracle、MySQL和MS(Microsoft)SQL Server.下面对这几款数据库产品特点作一个大概说明.


1.1 MS SQL Server数据库

SQL Server数据库产品和Windows操作系统紧密集成,其配套访问和管理工具易于使用.在国内教学和做小型原型软件开发中,SQL Server得到了广泛的应用.

和Windows系列产品类似,SQL Server产品用户界面友好而技术透明度不足,体系结构技术不够开放,不利于深入探究;其次,SQL Server只适合于Windows操作系统环境.

总的来说,SQL Server最新版本具有集数据管理、数据集成和数据分析等功能为一体,其易用性、低购置成本和扎实的Windows市场根基使其成为数据管理产品有力的竞争者.

1.2 MySQL数据库

MySQL数据产品起源于报表展示工具,尔后逐渐介入数据管理领域.MySQL为一款开源的关系数据库管理产品,且具有轻量级、开放和弹性构造等特点.

作为Interact环境中应用最广泛的数据库系统,MySQL产品经历了实际应用考验,已成为许多应用系统首选的数据库引擎.近年来国内软件及其应用行业,对MySQL数据库产品的人才需求日益旺盛,一些门户招聘站点中的数据表明,其职位数量超过SQL Server.

目前提供有社区和企业版两种发行版本,大致区别如下.

企业版只包含稳定的功能部分,社区版包含MySQL最新拓展的新功能.可以说,社区版是企业版的测试版,显然,社区版的功能相比企业版也有丰富;支持的服务仅针对企业版,使用社区版过程中出现任何问题,MySQL概不负责.两种版本相互映衬,而社区版的测试特点对于学习和探究者更具参考价值.

1.3 Oracle数据库

Oracle是世界上最重要的大型数据库管理系统产品,具有体系庞大、功能齐全、安全可靠等特点.Oracle数据库配套职业教育完善,职业认证体系齐全,其认证(OCP为主)是业界最有价值的一类职业证书.虽为商业的数据库产品,但从Oracle现有技术资料和相关书籍可以看出,其技术体系开放,技术细节相对透明,且适用所有主流的操作系统平台.在企业级和许多重要的应用领域,Oracle数据库目前为首选的数据管理引擎.

Oracle数据库软件整体构造复杂,不太容易入门,因此让很多人畏惧.国内外许多院校在数据库原理课程之后,往往选用Oracle作为高级数据库或者大型数据库系统基础等课程的学习对象.

Oracle数据库在大型和重要应用场合优势比较明显,总体成本相对高,这些因素也凸显其职业价值.

1.4 MySOL数据库产品技术特点

综合各种因素,选择MySQL数据库产品的社区版作为数据库原理的教学实践对象,除了版权因素外,还考虑了MySQL的一些技术特点:

1)提供sql语言标准的支持.

目前MySQL的版本(5.x)支持大部分SQL99的核心技术标准,包括对子查询、视图、实体完整性以及存储程序和触发器的支持.

符合教科书(标准)中提及的数据库、模式、关系典型的3层数据库组织架构,系统下database和schema是同一含义.提供sql:2003标准的schema information,使得基于MySQL的应用系统能够实现深层系统管理要求.

2)开放的技术设计.

由于MySQL数据库开放了源码,学习和研究者可以通过改造产品部分组件,以实现与数据库相关技术和算法的探究.

MySQL数据库管理系统内置了不同种类的数据存储引擎,如简单非事务的MyISAM到具有行级锁的InnoDB引擎以及内存堆表引擎HEAP;提供不同事务级别的协议,可以充分研究并发访问模式的差异,以及支持分布式架构的联邦式引擎(Federated),即可以通过代理技术,将远程MySQL服务器的存储透明地挂接在本地服务器,实现数据库的分布式处理和集成.除此,MySQL提供最具特色的插件式存储引擎技术,通过存储引擎的抽象接口层,应用开发者可以按需自行开发存储机制,以更好满足实际所需[2].

开放的数据导入导出机制,方便数据的透明迁移;内置的文本格式存储引擎,支持文本格式文件作为表的物理存储机制,将一些一定格式化的文本文件(CSV引擎)作为数据存储,为各种形式的数据源提供便捷的集成途径. 3)丰富的应用系统.

从国内外著名论坛到世界上最大的网络百科全书Wikipedia,由于开源社区的默认支持,MySQL成为Web上最为普及的数据管理引擎.

4)提供简易的分布式、安全控制等.

提供基于日志传输的复制技术,实现在线备份功能,构建具有容灾能力的系统.借助Federated存储引擎技术,能方便地实现多数据库的联邦或者集成.

MySQL默认安装不允许基于网络方式访问数据库服务,可以通过设定bind-address选项限制特定网络地址访问许可;数据库中合法的用户包含了用户名和许可网络地址两个部分,即每个访问的用户身份,不仅仅是用户标识,而且也包含了其访问所在的客户机网络地址信息(如ip),体现了一种安全的设计思想.

通过NDB引擎的衔接,MySQL实现高性能及高可用性的集群架构,在一定程度上胜任企业级的应用.

5)访问和管理工具.

MySQL本身提供快捷的工具,如mysql、mysqldump等,且这些工具支持开放的格式,以支撑不同系统之间的数据交换.

许多第三方的工具使MySQL的访问管理更为便捷,如Nieat for MySQL及著名的B/S模式管理工具PhpMyadmin等,它们为系统学习、管理和开发提供充分的支持.MySQL的企业版本支持高性能计算,能胜任一些大型高要求的应用场合,为原型开发软件的迁移提供升级的备选,但MySQL企业版本功能也有一定的限制,适用于中小规模级应用场合.

2.改革措施

本实践教学体系的改造在调查教育部高等学校计算机科学与技术指导委员会编制的系列材料基础上,特别参照了高等学校计算机科学与技术专业的实践教学体系与规范.结合多年来在MySQL数据库方面相关技术应用和开发经验,以及评估开源技术和商业技术的一些利弊问题,指导改革方案的设计与制定.

在一系列工作的基础上,笔者给出了从系统服务平台的构建、课程配套实验项目的设计、系统管理措施到基于MySQL数据库应用案例的建设等解决方案,形成了一个面向实践的课程综合教学体系.

2.1 MySQL中心服务平台

在一个Linux+MySQL的数据库服务环境中,为参加实验的所有学生建立一定访问权限的用户,各自配备对应的模式(schema,即数据库database)既能有一个永久的可持续的独立实验环境,同时也提供公共数据资源的访问权限,实现教师对于实验过程及其结果的监控和评价.

下面给出创建批量用户、模式(数据库)及其权限分配的SQL脚本的产生参考程序(php脚本为例).核心程序代码如下:

while($row等于mysql_fetch_array($result))

{

$tdb等于’s’.$row[’sno’】;//作为用户模式(数据库)名称,也作为用户名称

$cdb等于$cdb,“create schema $tdb”.“;\n”;

$cuserl等于“grant all on $tdb.*to $tdb@‘%’identified by ‘$tdb’”;

$cuser2等于“grant select on wikidb.* to $tdb@‘%’identified by‘$tdb’”;

$cuser3等于“grant select on stu.*to Stdb@‘%’identified by‘$tdb’”;

$cuser等于$cuserl.“;\n”.$cuser2.“;\n”.$cuser3;

}

echo $cdb;//generate sqlscript of all create schema for all students

echo $cuser;//generate sqlscript of all access priv.on schemas for all Students

上述脚本构建的多数据库及绑定的用户样本如图1所示.

实验环境提供两种数据库访问模式,分为基于网络访问的服务器和桌面机本地服务.

在桌面机的Linux下安装本地的MySQL服务器软件,提供系统管理相关的实验服务.

构建中心服务器的实验环境,提供SQL语言类和安全控制等方面实验,且让学生体验或者熟悉客户/服务器模式架构.在服务器端架设PhpmyAdmin软件,作为多用户集中访问MySQL服务器的便捷手段,可以让每名学生对数据库架构有更为直观的理解.

2.2 实验教学项目设计

教学的案例数据选择从学校的“教学服务系统”导出一定规模的数据,通过处理和简化,构建一个结构相对简单的数据库案例(stu),样本数据的导人作为实验项目.

同时选择一个基于Mediawiki技术构造的数据案例(wikidb),作为进一步探索数据管理的实践对象.教学过程还包括针对实验过程监控和评价设计,这些内容最终落实到相关的实验指导书中.

1)数据导入导出.

设计基于文本(数据文本格式)的导入服务,将准备好的案例数据通过该模式导入,掌握好外部批量数据导入技术,为应用数据的衔接奠定基础;将具有一定规模的应用数据从系统中抽取变为普通的格式化文本文件.Web应用的迅猛发展推动了大量有价值文本数据的涌现,让学生掌握如何处理外部的文本数据有实际的意义.

2)用户数据库备份.

利用mysqldump命令工具进行备份,学生可以查看备份文件,加深对SQL语言的体会和理解.同时也为自身的数据库实验结果作迁移,以实现实验的延续性要求. 3)SQL查询语言的训练.

在实际应用上,数据库查询语言是最为重要的数据库技能.针对上述准备的数据库案例数据,设计系列查询技术的题目,要求和教学业务统计紧密相关,其中也涉及个人身份信息的查询和统计要求.

通过视图的方式存放在数据库之中,设计开发SQL语句在线判题的判断算法,将提交的语句和参考SQL语句进行比较而实现客观的判断.如图2所示.

4)基于UySOL应用开发初步.

开设了一个综合的实验,给予WAMP本地开发测试环境,让学生对于综合的Web技术路线有一个初步的了解.

2.3 课外实践探索

1)向学生开放实验.

向部分对MySQL技术有兴趣的学生开放实验,探索MySQL架构和高级应用技术,包括基于源代码编译和配置的研究,探索对数据库源代码结构,根据自己需要和操作系统情况编译MySQL源代码;学习基于主从架构的MySQL复制技术,探索基于此架构运用到MySQL应用系统;基于联邦存储引擎探索多个MySQL应用系统的联邦化,以实现多数据库的全局化管理与集成.

2)学生科研项目.

性能测试及优化探索:TPCC标准的了解和测试方案的设计,探索事务模型和测试数据产生,并发测试访问模型的研究、软件开发及应用.

3)毕业设计.

利用特殊的引擎进行深入的探索,基于MySQL数据引擎作为共享机制的分布式Web数据采集系统.基于MySQL数据库开展大规模中文文本的处理技术研究,取得了一定的成果.

2.4 配套案例系统的应用建设

近年来借助计算机实验中心的资源,积极构造和开发基于开源软件的教学服务环境,通过这些应用案例提供相关课程的实践体验.如:Drupal平台建设实验教学中心的门户、基于Moodle辅助课程教学、基于Djangle的程序自动判题系统以及基于Mediawiki建设的计算机科学综合知识库等.

上述案例系统采用MySQL作为数据管理引擎,系统概要如下.

1)温州大学千锤百炼判题系统.

基于Djangle架构开发的,支持10多门较大规模的课程实验、考试和程序竞赛为一体的在线判题系统.经过多年的运作、开发,系统逐渐得到完善,同时积累了丰富的数据题库和判题过程数据,系统集数据管理、逻辑备份和在线备份为一体.

2)Moodle教学平台.

作为国际上用户数目最多的系统平台,它默认方式采用Php+MySQL技术路线.部分教师采用了本系统作为其课程伴随网站,迄今有几十门课程建立了课程资源,同时部分课程建设积累了丰富的题库资源,为常规的练习和考试提供支撑,积累了丰富的教学资源和学习过程数据.

3)实验教学中心门户.

实验中心的门户站点采用Drupal开源架构作为内容管理平台,后台采用了MySQL作为数据管理引擎.

4)计算机知识百科.

采用Mediawiki+MySQL技术架构作为支撑学科知识库建设的重要支撑平台,为教学提供重要的辅助作用,积累大量和专业背景相关的文本素材,为当今热门的文本处理和搜索引擎技术提供研究案例.

3.效果和展望

经历了本项目过程的学生对于操作系统的理解、Web系统的认识以及SOL语言运用有比较全面的提升.在开放实验项目和毕业设计中,部分学生对于信息系统类毕业设计题目的把握相比前几届有显著进步,尤其对数据库并发访问等方面有更深入的探索,取得比较优秀的实践成果,包括取得一项软件登记证书、一个多数据库在线备份技术方案以及一个用于后续课程教学的SQL判题平台等.

目前学生习惯于图形交互的操作方式,对于命令行仍旧不太熟悉.从后续的其他课程教学中反馈的信息表明,如果课程学习中采用SOLServer作为实践环境,对于命令及SQL语句的开发能力会有消极的影响;其次,许多学生在习惯于Windows系统环境后,对于操作系统体系结构的理解往往停留在浅层,这就势必造成和将来就业时所需要的一些系统管理技术相脱节.由于课程架构设计的持续影响,这种改革效果只能得到初步展示,毕竟不是操作系统本身的课程,本项目只能作为一种辅助的促进手段.

相关论文

计算机科学与技术专业实践教学体系

本文是一篇计算机论文范文,关于计算机专升本毕业论文开题报告,关于计算机科学与技术专业实践教学体系相关电大毕业论文范文。适合计算机及实。

高职生物技术应用专业实践教学体系

本文是一篇实践教学论文范文,关于实践教学本科论文开题报告,关于高职生物技术应用专业实践教学体系相关毕业论文提纲范文。适合实践教学及生。

船舶电气工程技术专业实践教学体系

本文是一篇实践教学论文范文,实践教学方面毕业论文格式,关于船舶电气工程技术专业实践教学体系相关硕士论文范文。适合实践教学及船舶电气及。