在20世纪80年代后期,客户机/服务器(client/server,简称C/S)结构取代了原来的主机系统,由于该结构获取信息简单、方便而被企业信息系统广泛采用,大大促进了数据库产业的发展。进入90年代,随着因特网、内联网及Web技术在全球的普及,为数据库技术的发展提供了新的契机,出现了Web数据库。
(一) 客户/服务器系统的数据库技术
客户/服务器系统(C/S)的处理方式取决于前端与后端所运行的平台,及前后端间处理的分布程度,有完全分布式服务器、完全客户服务器、专用客户/服务器等多种方式。客户/服务器系统的主要优点是:DBMS的速度不受工作站速度的制约,有效地延长PC机的寿命,减少工作站的网络上的负载,使用户不再被局限于某一种类型的系统或平台上,另一个优点是数据的完整性维护。客户/服务器数据库的缺点是:增加了维护数据库服务器的管理和支持人员的开销;增加了硬件的开销;同时存在着复杂性问题。
在C/S结构的数据库系统的实现中采用了许多新的软件技术,包括数据库服务器优化的各种技术、客户端应用开发工具的工作模型和实现技术、数据库互联技术、分布数据库管理技术等。其中,开放的数据库访问接口、存储过程和分布数据管理技术是在实际开发过程中最常用的技术。
1. 开放的数据库访问接口
在一个包括多个服务器和大量用户的客户/服务器结构数据库系统中,来自不同厂商的客户软件以及用户开发的客户应用要访问不同的服务器中的数据,要对这些数据进行透明的访问需要开放的访问接口,其中ODBC和JDBC是使用最广泛的接口之一。
(1) ODBC(open database connectivity,开放数据库互联)。是一种用于访问数据库的统一界面标准,由微软公司1991年推出。ODBC技术提供了基于SQL语言访问异构SQL数据库的公共界面,一个应用能通过一组公共代码访问不同的数据库。使得开发人员构造一个C/S应用时不用针对某一个特殊的DBMS。
(2)JDBC(Java database connectivity,Java数据库连接)。是Java公司开发的Java应用程序对数据库访问的API标准,所有支持ODBC的数据库不作任何修改就能够与JDBC协同工作。
在C/S结构的数据库系统中,ODBC和JDBC标准使不同的数据源可以提供统一的数据访问界面,客户端应用通过ODBC接口可以实现对于不同数据源的访问。(www.xing528.com)
2. 存储过程
存储过程是用SQL语句和数据库编程语言编写的,用来完成一定的数据访问功能或服务过程,预先进行编译和优化后存储在服务器中,客户程序可以通过远程调用的模式调用它们。由于存储过程是以编译和优化后的形式存储的,在被调用时可直接运行,速度快。存储过程不是存储在客户端,而是存储在服务器中,在网络上传输的只是一个远程过程调用和最终的执行结果,而不是一系列的SQL语句和它们的执行结果,大大减少了网络上的传输量,提高了系统的性能。存储过程可以同时被网络上的多个用户共享使用,而且可存放在磁盘缓冲区,当某个存储过程已在磁盘缓冲区中时,别的用户不必再从磁盘中输入而直接使用。存储过程可使非计算机专业人员对数据库服务器上的数据访问变得更加方便,同时简化了安全性控制,如把一组操作定义为一个存储过程,然后将调用存储过程的权限授给特定的用户,这样就可以不必对每一条命令的执行进行授权。
3. 分布式数据管理
为了减少网络通信的开销,在包括多个数据库服务器的C/S结构数据库系统中,可以将某一服务器上的某些表中的数据复制和分布到其他远程数据库服务器节点上,这样就可以引用复制的数据和本地表在本地完成分布式查询操作,当一个远程数据库发生故障时,某些查询可以通过本地复制完成。
(二) Web数据库
随着因特网应用的不断普及,越来越多的企业加入因特网,因特网上可用的数据源的数量在迅速增长。人们试图将WWW上的数据源集成为一个完整的Web数据库,使其数据资源得到充分的利用。Web数据库是Web和数据库技术相结合的产物,前端有界面友好的Web浏览器,后台是成熟的数据库技术作支撑,这无疑会给企业带来一个良好的应用环境。
Web上数据的特点是数据量大、类型多、缺乏组织与管理,而且信息量增长速度快, Web上的数据主要由静态HTML表达,表现能力强,链接跳转灵活。当前的数据库管理系统已发展到相当成熟的阶段,能高效、高质、安全地管理数据,数据库可以通过数据提炼和重组,进一步加工成数据仓库。
Web数据库应用系统由Web服务器、服务器组件、数据库服务器和浏览器四部分组成,其中,Web服务器是主要角色,用来管理和控制其中的网站和组件;服务器组件是可以重复调用的软件块,应用系统通过预先定义好的界面来调用执行组件;数据库服务器提供网络用的数据服务;浏览器能帮助用户浏览或获取所需资源。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。