在线考试系统的设计与实现—文献综述
- 格式:doc
- 大小:59.00 KB
- 文档页数:20
文献综述
题目Web数据库技术及其发展趋势学生姓名
专业班级
学号
院(系)
指导教师(职称)
完成时间2011年6 月5 日
Web数据库技术及其发展趋势
1 Web概述
1.1 Web及其工作模式
Web即万维网,就是通过使用通讯设备和线路,将处在不同地理位置、操作上相对独立的多个计算机连接起来,再配置一定的系统软件和应用软件,在这些计算机上实现软硬件的资源共享和信息传递,由此而构成的计算机网络。
互联网是由全球众多的计算机局域网互相连接组成的一个超大规模的网络系统,在这个系统中运行着多种应用系统,如上网使用的网页浏览系统——WWW、上传与下载用的文件传输系统——FTP、收发电子邮件所使用的电子邮件系统——E-Mail等。
互联网中运行的每一种应用系统都是由互联网中相应的服务器系统、客户机系统构成,也就是说互联网从物理连接来看是由众多的计算机组成,而从逻辑上看是由多个功能子网组成。
1.2 Web中存储信息的方式
传统网站存储信息的方式是采用基于文件的,即每个Web文档存储在一个单独的文件中。
目前流行的Web存储信息的方式则是基于数据库的,即允许Web直接访问数据库,从而管理动态Web内容。
1.3 基于HTML文件的Web服务器
在基于HTML文件的Web服务器中文本和其他多媒体信息都是以文件的形
式来进行存储和管理,客户端直接下载HTML文件。
1.4 基于数据库的Web服务器
在基于数据库的Web服务器文本和其他多媒体信息保存在数据库中,客户端请求服务器执行一个CGI程序或Script语言码。
2 Web数据库概述
2.1 Web数据库的概念
数据库是指按照一定的结构和规则组织起来的相关数据的集合,是存放数据的“仓库”,据此将网络数据库定义为以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。
数据库技术是计算机处理与存储数据的最有效、最成功的技术,而计算机网络的特点是资源共享,因此数据与资源共享这两种技术的结合即成为今天广泛应用的Web数据库(也叫网络数据库)。
一个Web数据库就是用户利用浏览器作为输入接口,输入所需要的数据,浏览器将这些数据传送给网站,而网站再对这些数据进行处理,例如,将数据存入后台数据库,或者对后台数据库进行查询操作等,最后网站将操作结果传回给浏览器,通过浏览器将结果告知用户。
网站上的后台数据库就是Web数据库。
通常,Web数据库的环境由硬件元素和软件元素组成。
硬件元素包括Web 服务器、客户机、数据库服务器、网络。
软件元素包括客户端必须有能够解释执行HTML代码的浏览器(如IE,Netscape等);在Web服务器中,必须具有能执行可以自动生成HTML代码的程序的功能,如ASP,CGI等;具有能自动完成数据操作指令的数据库系统,如Access,SQL Server等。
2.2 Web数据库系统的基本模型
早期Internet数据库系统是将Web服务器和数据库混在一起的,实现的功能比较简单、响应速度慢。
而在多层结构的Web数据库系统模型将Web服务
器和数据库部分分开,并加入了中间件。
中间件是位于操作系统和分布应用之间的具有标准协议和程序接口的通用服务,管理计算资源和网络通信。
中间件的例子包括目录服务、消息传递机制、对象请求代理、远程过程调用(RPC) 服务和数据库网关。
两者的结构如图3:
图2-1Web服务器结构
这样采用多层结构的Web数据库系统模型使得功能更加强大、响应速度快,除此之外,与两层设计比较还有以下优点:
(1)瘦客户降低了对硬件设备的需求。
(2)由于业务逻辑从许多终端用户移到了单一的应用服务器上,这使得应用程序的维护可以集中进行,这消除了传统两层客户—服务器模型中重点关注的软件分布问题。
(3)模块化特性使得更容易修改或替换其中一层而不影响其他层。
(4)核心业务逻辑和数据库功能的分离使得负载平衡更容易进行。
(5)三层体系结构更容易映射到Web环境,Web浏览器可作为瘦客户,Web服务器可以作为应用服务器。
2.3 Web—DBMS方案的优缺点
与Web相比,传统的DBMS显得规模较小且严谨有余而灵活不足。
应用系统总是对某个具体使用者,与Web的数据交换依赖于附加的软件(如CGI公共网关接口),而不是DBMS内核功能。
Web和DB的结合融合能达到它们共同的优势。
试设想,当人们以Web浏览全球性数据库的时候,可以明用善解人意的浏览器,暗用迅速高效的DBMS,该是多么友好的人机界面。
目前关于数据库与Web技术融合的方案众多。
从用户的观点看,主要有下列几类及组合方案:用浏览器访问网上数据库、数据库与Web直接接轨、Web 有偿数据服务、Web数据仓库。
虽然Web—DBMS方案能够带来诸多的优点,但同样仍然存在着一些缺点,如安全性问题、可靠性问题等,如表1:
表2-1Web—DBMS方案优缺点
3 几种常用Web数据库的比较
当前比较流行的Web数据库主要有:SQL Server、MySQL和Oracle。
这3种数据库适应性强,性能优异,容易使用,在国内得到了广泛的应用。
3.1 SQL Server
SQL Server是微软公司从Sysbase获得基本部件的使用许可后开发出的一种关系型数据库。
目前最新的版本是SQL Server 2008。
由于均出自微软之手,
使得SQL Server和Windows、IIS等产品有着天然的联系。
事实上以Windows 为核心的几乎所有微软的软件产品都采用了一致的开发策略,包括界面技术、面向对象技术、组件技术等,这样在微软的软件中很多都可以相互调用,而且配合得非常密切。
因此如果用户使用的是Windows操作系统,那么IIS、SQL Server 就应该是最佳的选择。
3.2 MySQL
MySQL是当今Unix或Linux类服务器上广泛使用的Web数据库系统。
它于1996年诞生于瑞典的TcX公司,支持大部分的操作系统平台。
MySQL的设计思想快捷、高效、实用。
虽然它对ANSI SQL标准的支持并不完善,但支持所有常用的内容,完全可以胜任一般Web数据库的工作。
由于它不支持事务处理,MySQL的速度比一些商业数据库快2~3倍,并且MySQL还针对很多操作平台做了优化,完全支持多CPU系统的多线程方式。
在编程方面,MySQL也提供了C、C++、Java、Perl、Python和TCL等API接口,而且有MyODBC接口,任何可以使用ODBC接口的语言都可以使用它。
更重要的是,MySQL的源代码是公开的,可以免费使用,这就使得MySQL成为许多中小型网站、个人网站追捧的明星。
3.3 Oracle
Oracle是Oracle公司开发出的一种面向网络计算机并支持对象关系模型的数据库产品。
它是以高级结构化查询语言为基础的大型关系数据库,是目前最流行的客户/服务器体系机构的数据库之一。
它之所以备受用户喜爱是因为它具有
以下突出的特点:
(1)支持大型数据库、多用户和高性能的事务处理。
Oracle支持最大数据库,其大小可达到几百千兆,可充分利用硬件设备;支持大量用户同时对数据库执行各种数据操作,并使数据征用最小,保证数据一致性;系统维护具有很高的性能,Oracle每天可连续24小时工作,正常的系统操作(后备或个别系统故障)不会中断数据库的应用;可在数据库级或子数据库级上控制数据的可用性。
(2)Oracle 遵守数据库存取语言、操作系统、用户接口、和网络通讯协议的工业标准,所以它是一个开放系统,保护了用户的投资。
美国标准化和技术研究所(NIST)对Oracle Server进行过检验,完全与ANSI/ISO SQL89标准相兼容。
(3)实施安全性控制和完整性控制。
Oracle为限制系统对各监控数据库存取提供可靠的安全性,并为可接受的数据指定标准,保证数据的完整性。
(4)支持分布式数据库和分布式处理。
Oracle为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。
通过网络连接环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。
分布式系统像集中式数据库一样具有透明性和数据一致性。
上面介绍的3种数据库产品是目前最常用的3种关系数据库系统,它们虽然在体系结构和操作方法上有许多相似的地方,但是在应用环境上还是各有侧重的。
一个应用系统在选用数据库时,性能和价格时首先要考虑的两个因素,表2列出了这3种数据库在性能和价格上的对比情况,在使用时不同的系统应针对实
际情况采用合适的方案。
表3-1常用的三种数据库对比
4 主流的Web数据库技术
4.1 PHP(Personal Home Page)
PHP是一种跨平台的服务器端的嵌入式脚本语言。
它具有良好的扩展性,并具有安全性好、代码执行快等特点。
PHP是受共享Internet开放源代码的影响,由Rasmus开发,如Linux发展一样受到很多杰出人士的改进和不断发展,性能越来越强大。
PHP的易扩展性和良好的稳定性在Linux系统上表现的更为突出,可以在Linux平台上与Apache Web服务器组成最佳组合。
优点是:简单易学、跨平台、有良好数据库交换能力的开发语言;与Apache 及其扩展库紧密结合;良好的安全性。
缺点是:安装配置复杂;缺少企业级的支持;作为自由软件,缺乏正规的商业支持;无法实现商品化的商业开发
4.2 ASP/ADO
ASP(Active Server Page)是微软的一个Web Server端开发环境。
它完全摆脱了PHP等技术的局限性,并将IDC(Internet Data Center)的简单性和
ISAPI (Internet Server Application Programming Interface)的灵活性结合在一起,通过向静态HTML文件中添加脚本程序和Active组件,就可创建可靠的功能强大的Web应用系统,而且被嵌入的Script不需编译就可直接执行,服务器端的ASP还支持一套可以方便访问Web服务器上的数据库系统的对象模型ADO(ActiveX Data Object)。
通过ADO组件与Database打交道,可以实现与任何ODBC兼容数据库或OLE DB(Object Linking and Embedding)数据源的高性能的连接。
优点是:安装配置方便,开发简单易学;开发工具功能强大。
缺点是:ASP使用了组件因而将导致大量的安全问题;无法实现跨平台,只能应用于Windows NT/2000。
4.3 JSP
JSP(Java Server Pages)是由SUN公司倡导许多公司参与一起建立的一种基于Java的服务器端的动态网页技术标准。
它为创建显示动态生成内容的Web 页面提供了一个简洁而快速的方法。
JSP技术的设计目的是使得构建基于Web 的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器和开发工具共同工作,因此它完全解决了目前ASP、PHP的一个通病——脚本级执行。
同时它还能应用于不同的操作平台上,当用户通过浏览器从Web 服务器上请求JSP文件时,Web服务器首先响应该HTTP请求,并启动JSP解释器解释JSP文件中的JSP标记和小脚本,然后通过JDBC(Java Database Connection)存取、查询数据库中的数据,并将以HTML页面的形式发送回浏览器。
优点是:可移植性好,支持多种平台;强大的可伸缩性;多样化与强大的工具支持。
4.4纯HTML技术
纯HTML模型对于Web用户是一种最为普通的访问方式,同时提供了功能上最简单的客户方软件。
服务程序通过标准的HTML语言、JavaScript或者两者结合形成用户接口。
Web服务器实现在客户方和服务器之间的所有交互操作,而中间件可被用来提高处理效率。
服务器利用ASP和API等来生成基于数据库信息的HTML文件。
见图3:
图4-2纯HTML模型
中间件负责管理Web服务器和数据库之间的通信并提供应用程序服务,能够直接或调用外部程序、脚本代码来访问数据库,从而提供与数据库相互结合的动态HTML页面,将用户的查询结果格式化为HTML页面,通过Web服务器返回给用户。
最基本的中间件技术有通用网关接口(CGI)和应用程序编程接口(Art)。
微软开发的ActiveX Data Object(ADO ActiveX数据对象),它提供了高效率的ODBC数据库或者OLD——DB数据库来源的链接功能。
5 脚本程序与数据库的接口
在脚本程序中连接数据库一般都需要相应的接口来完成。
连接数据库的常用方法有:ODBC、DAO、RDO、ADO及JDBC等。
(1)ODBC(Open Database Connectivity,即开发式数据库连接)是微软开发的一套统一的程序接口。
通过这个接口可以存取不同厂商生产的数据库。
经过多年的改进,它已成为存取服务数据库的标准。
事实上,ODBC技术成了
后来DAO、RDO及ADO等数据库访问技术的基础。
(2)DAO:DAO(Data Access Objects,即服务器访问对象)是微软公司开发的一套主要应用程序及开发工具,用它可以访问数据库的标准对象,如Access、VB、Excel、Word等。
(3)RDO:RDO(Remote Data Objects,即远程数据库访问对象)是微软公司为增强DAO的功能而推出的新产品。
该产品强化了SQL Server的访问功能,提高了它的执行效率。
(4)ADO:ADO(ActivteX Data Objects,即ActivteX数据对象)是微软在Internet领域采取的新举措。
它本身并不是一项新技术,从对象结构的角度来看,它比DAO提供的对象更少;从存取SQL服务器的角度来看,它提供的功能也不如RDO。
但它汲取了DAO和RDO最精华的部分,成为一个更适合于Internet的小而精的对象群。
因此,ADO实际上是脚本程序连接数据库最好的选择。
(5)JDBC JDBC(Java DataBase Connectivity) 是Java的开发者——Sun的Javasoft公司制定的Java数据库连接技术的简称,是为各种常用数据库提供无缝联接的技术。
JDBC在Web和Internet应用程序中的作用和ODBC在Windows系列平台应用程序中的作用类似。
JDBC与ODBC很相似,也可以连接多种数据库。
如:xbase、Oracle、Sybase、Aceess以及Paradox等。
6 Web数据库技术的发展趋势
6.1 下一代的Web数据库技术
在这里数据库已经不能作为单纯的数据库系统看待。
它应该能与Web技术结合,满足基于Web的实际需求,同时也对Web技术提出要求,要求Web 技术能提供更丰富的接口和对象、更快捷的数据库连接、更快的访问和更好的处理能力。
下一代的Web与数据库连接的方式应该具有以下特点:
(1) 能快速构建一个动态站点,对用户和硬件的要求低、更大的封装性、对用户提供丰富的接口,生成动态页面更快、能提供映射功能,将动态页面映射成类静态页面,使页面的访问速度更高。
(2) 与数据库的连接更快速、高效,并能与现有的各种数据库实现连接访问,必须能提供高度的集成性,以最简单的方式实现Web与数据库的连接。
(3) 使用更简单、易学的语言,能让用户快捷完成代码的编写,界面与逻辑分离,编写调试简单,支持目前主流的各种网络编程语言。
集成开发环境提供大量工具箱和设计器,执行常见任务简单容易,具备可管理性、可缩放性和可用性、自定义性和扩展性。
(4) 提供更强大的组件重用性,使用户可以方便地移植现成的代码或组件。
能跨越多种平台,具有自由软件的特性,升级容易与迅速。
(5) 能内嵌多种防护技术以提供更强大的安全防护功能,保证系统的稳定性、安全性。
并有多层防护机制保证系统、数据库和用户操作的安全性。
(6) 能快速完成基于XML技术的动态网站设计与制作。
6.2 嵌入式数据库系统
微型信息设备连接到Web,每个微型信息设备都可能配置一个数据库系统,我们称这种数据库系统为嵌入式数据库系统。
在下一个十年中,将有数以万计的微型信息设备连接到Web。
嵌入式数据库系统应具有以下能力:
(1) 自调节和自适应能力。
数据库系统中没有数据库管理员,用户也具有很少的数据库知识。
因此,它不能具有需要用户来设置的系统参数,而且当应用环境发生改变时,系统必须能自我调整以适应新环境。
嵌入式数据库系统的自我调节功能是我们要研究的重要问题,关键是取消全部系统参数并使系统具有自调节和自适应能力。
(2) 快速准确地发现所要存取的Web数据库并与之相连接的能力。
这种Web信息源的发现过程要求数据库系统提供丰富的元数据。
需要有更新的方法来发现和连接Web数据库。
结束语
随着Internet/Intranet 的迅速发展,Web已经成为Internet网上最重要的信息共享手段,通过浏览器浏览Web页,我们可以很容易的获取存放在世界各地的资源信息,然而最初的网页多是静态网页,内容相对固定,缺乏交互,很难满足一些更高的需求(如:电子出版社、电子商务、电子银行等)。
如何才能使网页的内容动起来,以便增加更多的交互,满足更高的需求,这也正是Web数据库所要解决的问题。
Web数据库技术将Web与数据库相结合的技术,它充分融合了Web页面的灵活性、简洁性和数据库能够快捷存取、查询大量数据的特性,有着更广泛的发展趋势,值得我进行更进一步的研究。
参考文献
[1]王珊、萨师煊,数据库系统概论,高等教育出版社,2007-4.
[2]王珊、萨师煊,JSP网络编程,电子工业出版社,2006-8.
[3]高晗,Web数据库技术,水利水电出版社,2007-9.
[4]SOLID QUALITY LEARNING,SQL Server 2005实现与维护MCTS教程,清华大学出版社,2007-11.
[5]郑阿奇,MySQL实用教程,电子工业出版社,2009-3.
[6]林慧,ORACLE 10G入门与实践,中国铁道出版社,2005-11.
[7] 石军.,面向安全Web服务的电子商务订单系统的设计与实现,苏州大学,2005.
[8] 余伟文.,天南百货网上购物,暨南大学,2002.
[9] 毕建信.,基于MVC设计模式的Web应用研究与实现,武汉理工大学,2006.
[10] 吴晨,孙少波,叶菀.数据库项目案例导航,清华大学出版社,2004-11.
[11] 戴小波,方小铁,构建先进的电子商务平台,物流科技,2006-07.
[12] Bellinaso M,Gaster B,Hoffman K,冉晓译.高效掌握-C#编程篇,清华大学出版社,2002-06.
[13] 王保健,网站建设专家.清华大学出版社,2005-07.
[14] 尚俊杰,秦卫中.程序案例和教程,清华大学出版社,2005-10.
[15] 李正希,胡方霞,陈发吉,案例开发,中国水利水电出版社,2005-01.
[16] 卢莉,基于的电子商务网站构建技术,2006-01.。