1.4.3 数据库系统的外部体系结构
从数据库最终用户的角度看,数据库系统的外部体系结构分为单用户结构、主从式结构、客户机/服务器结构、浏览器/服务器等。
(1)单用户结构
整个数据库系统(应用程序、DBMS、数据)装在一台计算机上,为一个用户独占,不同机器之间不能共享数据。早期的最简单的数据库系统便是如此。
(2)主从式结构
主从式结构是一台主机带多个终端的多用户结构,数据库系统(包括应用程序、DBMS、数据)都集中存放在主机上,所有处理任务都由主机来完成,各个用户通过主机的终端并发地存取数据库,共享数据资源。
其优点是易于管理、控制与维护。缺点是当终端用户个数增加到一定程度后,主机的负载会过于繁重,成为瓶颈,从而使系统性能下降;同时,系统的可靠性依赖于主机,当主机出现故障时,整个系统都无法使用。
(3)客户机/服务器结构
客户机/服务器(C/SClient/Server)结构如图1-13所示。其工作模式是应用程序安装在客户机上,当需要对数据进行操作时,就向数据库服务器发送一个请求;数据库服务器接收到请求后执行相应的数据库操作,并将结果返回给客户机上的应用程序。这种结构的优点是显著减少了数据传输量、速度快、功能完备。缺点是维护和升级不方便,数据安全性差。
图1-13 客户机/服务器结构
(4)浏览器/服务器结构
浏览器/服务器(B/SBrowser/Server)结构如图1-14所示。客户机借助Web浏览器处理客户端请求,显示用户界面及服务器端的运行结果。Web服务器是连接前端客户机与后台数据库服务器的桥梁,负责接收远程或本地的数据查询请求,然后运行服务器脚本,借助中间件把数据发送到数据库服务器上以获取相关数据,最后把数据传回客户的浏览器。数据库服务器负责管理数据库、处理数据更新及完成查询请求、运行存储过程等。
浏览器/服务器结构对表示层、功能层和数据层进行了明确的分割,并在逻辑上使其独立,因此维护和升级方便,数据安全性好。缺点是数据查询响应速度不如客户机/服务器结构。
图1-14 浏览器/服务器结构