文献综述题目Web数据库技术及其发展趋势学生姓名专业班级学号院(系)指导教师(职称)完成时间2011年6月5日Web数据库技术及其发展趋势1Web概述1.1Web及其工作模式Web即万维网,就是通过使用通讯设备和线路,将处在不同地理位置、操作上相对独立的多个计算机连接起来,再配置一定的系统软件和应用软件,在这些计算机上实现软硬件的资源共享和信息传递,由此而构成的计算机网络。
互联网是由全球众多的计算机局域网互相连接组成的一个超大规模的网络系统,在这个系统中运行着多种应用系统,如上网使用的网页浏览系统——WWW、上传与下载用的文件传输系统——FTP、收发电子邮件所使用的电子邮件系统——E-Mail等。
互联网中运行的每一种应用系统都是由互联网中相应的服务器系统、客户机系统构成,也就是说互联网从物理连接来看是由众多的计算机组成,而从逻辑上看是由多个功能子网组成。
1.2Web中存储信息的方式传统网站存储信息的方式是采用基于文件的,即每个Web文档存储在一个单独的文件中。
目前流行的Web存储信息的方式则是基于数据库的,即允许Web直接访问数据库,从而管理动态Web内容。
1.3基于HTML文件的Web服务器在基于HTML文件的Web服务器中文本和其他多媒体信息都是以文件的形式来进行存储和管理,客户端直接下载HTML文件。
1.4基于数据库的Web服务器在基于数据库的Web服务器文本和其他多媒体信息保存在数据库中,客户端请求服务器执行一个CGI程序或Script语言码。
2Web数据库概述2.1Web数据库的概念数据库是指按照一定的结构和规则组织起来的相关数据的集合,是存放数据的“仓库”,据此将网络数据库定义为以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。
数据库技术是计算机处理与存储数据的最有效、最成功的技术,而计算机网络的特点是资源共享,因此数据与资源共享这两种技术的结合即成为今天广泛应用的Web数据库(也叫网络数据库)。
一个Web数据库就是用户利用浏览器作为输入接口,输入所需要的数据,浏览器将这些数据传送给网站,而网站再对这些数据进行处理,例如,将数据存入后台数据库,或者对后台数据库进行查询操作等,最后网站将操作结果传回给浏览器,通过浏览器将结果告知用户。
网站上的后台数据库就是Web数据库。
通常,Web数据库的环境由硬件元素和软件元素组成。
硬件元素包括Web 服务器、客户机、数据库服务器、网络。
软件元素包括客户端必须有能够解释执行HTML代码的浏览器(如IE,Netscape等);在Web服务器中,必须具有能执行可以自动生成HTML代码的程序的功能,如ASP,CGI等;具有能自动完成数据操作指令的数据库系统,如Access,SQL Server等。
2.2Web数据库系统的基本模型早期Internet数据库系统是将Web服务器和数据库混在一起的,实现的功能比较简单、响应速度慢。
而在多层结构的Web数据库系统模型将Web服务器和数据库部分分开,并加入了中间件。
中间件是位于操作系统和分布应用之间的具有标准协议和程序接口的通用服务,管理计算资源和网络通信。
中间件的例子包括目录服务、消息传递机制、对象请求代理、远程过程调用(RPC)服务和数据库网关。
两者的结构如图3:客户端浏览器Web服务器、数据库早期Internet数据库多层结构的Web数据库系统模客户端浏览器Web服务器ODBC、JDBC等中间件数据库服务器图2-1Web服务器结构这样采用多层结构的Web数据库系统模型使得功能更加强大、响应速度快,除此之外,与两层设计比较还有以下优点:(1)瘦客户降低了对硬件设备的需求。
(2)由于业务逻辑从许多终端用户移到了单一的应用服务器上,这使得应用程序的维护可以集中进行,这消除了传统两层客户—服务器模型中重点关注的软件分布问题。
(3)模块化特性使得更容易修改或替换其中一层而不影响其他层。
(4)核心业务逻辑和数据库功能的分离使得负载平衡更容易进行。
(5)三层体系结构更容易映射到Web环境,Web浏览器可作为瘦客户,Web 服务器可以作为应用服务器。
2.3Web—DBMS方案的优缺点与Web相比,传统的DBMS显得规模较小且严谨有余而灵活不足。
应用系统总是对某个具体使用者,与Web的数据交换依赖于附加的软件(如CGI公共网关接口),而不是DBMS内核功能。
Web和DB的结合融合能达到它们共同的优势。
试设想,当人们以Web浏览全球性数据库的时候,可以明用善解人意的浏览器,暗用迅速高效的DBMS,该是多么友好的人机界面。
目前关于数据库与Web技术融合的方案众多。
从用户的观点看,主要有下列几类及组合方案:用浏览器访问网上数据库、数据库与Web直接接轨、Web 有偿数据服务、Web数据仓库。
虽然Web—DBMS方案能够带来诸多的优点,但同样仍然存在着一些缺点,如安全性问题、可靠性问题等,如表1:表2-1Web—DBMS方案优缺点优点缺点使用DBMS带来的优点缺乏可靠性简单性安全性问题平台无关性费用昂贵图形用户界面可伸缩性差标准化HTML的功能有限跨平台支持无状态透明的网络访问带宽可伸缩的配置性能不足新技术开发工具不完善3几种常用Web数据库的比较当前比较流行的Web数据库主要有:SQL Server、MySQL和Oracle。
这3种数据库适应性强,性能优异,容易使用,在国内得到了广泛的应用。
3.1SQL ServerSQL Server是微软公司从Sysbase获得基本部件的使用许可后开发出的一种关系型数据库。
目前最新的版本是SQL Server2008。
由于均出自微软之手,使得SQL Server和Windows、IIS等产品有着天然的联系。
事实上以Windows为核心的几乎所有微软的软件产品都采用了一致的开发策略,包括界面技术、面向对象技术、组件技术等,这样在微软的软件中很多都可以相互调用,而且配合得非常密切。
因此如果用户使用的是Windows操作系统,那么IIS、SQL Server就应该是最佳的选择。
3.2MySQLMySQL是当今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.3OracleOracle是Oracle公司开发出的一种面向网络计算机并支持对象关系模型的数据库产品。
它是以高级结构化查询语言为基础的大型关系数据库,是目前最流行的客户/服务器体系机构的数据库之一。
它之所以备受用户喜爱是因为它具有以下突出的特点:(1)支持大型数据库、多用户和高性能的事务处理。
Oracle支持最大数据库,其大小可达到几百千兆,可充分利用硬件设备;支持大量用户同时对数据库执行各种数据操作,并使数据征用最小,保证数据一致性;系统维护具有很高的性能,Oracle每天可连续24小时工作,正常的系统操作(后备或个别系统故障)不会中断数据库的应用;可在数据库级或子数据库级上控制数据的可用性。
(2)Oracle遵守数据库存取语言、操作系统、用户接口、和网络通讯协议的工业标准,所以它是一个开放系统,保护了用户的投资。
美国标准化和技术研究所(NIST)对Oracle Server进行过检验,完全与ANSI/ISO SQL89标准相兼容。
(3)实施安全性控制和完整性控制。
Oracle为限制系统对各监控数据库存取提供可靠的安全性,并为可接受的数据指定标准,保证数据的完整性。
(4)支持分布式数据库和分布式处理。
Oracle为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。
通过网络连接环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。
分布式系统像集中式数据库一样具有透明性和数据一致性。
上面介绍的3种数据库产品是目前最常用的3种关系数据库系统,它们虽然在体系结构和操作方法上有许多相似的地方,但是在应用环境上还是各有侧重的。
一个应用系统在选用数据库时,性能和价格时首先要考虑的两个因素,表2列出了这3种数据库在性能和价格上的对比情况,在使用时不同的系统应针对实际情况采用合适的方案。
表3-1常用的三种数据库对比数据库系统MySQL SQL Server Oracle数据库费用全免费费用按连接计算,费用较高按计算机主频计算,费用较高操作系统及费用Linux免费NT,价格较高Linux全免费;windows NT、Solaris价格较高速度较快快最快容量较大较大大备份、恢复较好好最好4主流的Web数据库技术4.1PHP(Personal Home Page)PHP是一种跨平台的服务器端的嵌入式脚本语言。
它具有良好的扩展性,并具有安全性好、代码执行快等特点。
PHP是受共享Internet开放源代码的影响,由Rasmus开发,如Linux发展一样受到很多杰出人士的改进和不断发展,性能越来越强大。
PHP的易扩展性和良好的稳定性在Linux系统上表现的更为突出,可以在Linux平台上与Apache Web服务器组成最佳组合。
优点是:简单易学、跨平台、有良好数据库交换能力的开发语言;与Apache 及其扩展库紧密结合;良好的安全性。
缺点是:安装配置复杂;缺少企业级的支持;作为自由软件,缺乏正规的商业支持;无法实现商品化的商业开发4.2ASP/ADOASP(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)。