【概述】
对于数据库系统的体系结构,其分为内部体系结构、外部体系结构两个角度
从数据库管理系统角度来看,通常采用外模式、模式、内模式三级模式结构,这是数据库系统的内体系结构,又被称为数据库系统的模式结构
从数据库最终用户角度来看,数据库系统结构分为单用户结构、主从式结构、分布式结构、C/S 结构、B/S 结构,这是数据库系统的外体系结构
本篇仅介绍数据库系统的外体系结构,关于数据库系统的内体系结构:点击这里
【单用户结构】
单用户结构是最早的数据库系统,也是最简单的数据库系统,整个数据库系统(数据、DBMS、应用程序)集中存放在一台计算机上,为一个用户独占,不同机器间不能共享数据
例如:一个企业的各个部门都使用本部门的机器来管理本部门的数据,各个部门的机器是独立的,由于不同部门之间不能共享数据,因此企业内部存在大量的冗余数据,每个部门必须重复存放每一名职工的一些基本信息
【主从式结构】
主从式结构是一个主机带多个终端的多用户结构,数据库系统(数据、DBMS、应用程序)集中存放在主机上,所有处理任务都由主机来完成,各个用户通过主机的终端并发存取数据库,共享数据资源
该结构易于管理、控制与维护,但当终端用户数目增加到一定程度后,主机的任务会过分繁重,从而使系统性能下降,此外系统的可靠性依赖主机,当主机出现故障时,整个系统都不能使用
【分布式结构】
采取分布式结构的数据库中的数据在逻辑上是一个整体,但物理上分布在不同结点,网络中的每个结点都可以独立处理本地数据库中的数据,执行局部应用,同时也可以同时处理多个异地数据库中的数据,执行全局应用
最典型的例子就是各大银行的数据库,以中国银行为例,其在全国各地有多个营业网点,每个网点都可以进行个人存取款的服务,在开户局取钱时,本地机就可以处理,不需要去总机那里调用个人信息,这是局部应用;如果是在上海开户建卡,在北京出差时要取钱,那么本地机是不能自己处理的,它必须去总行那里得到你的帐户信息,然后才能完成异地取款的任务,这就是全局应用
分布式数据库是为了满足那些地理跨越范围比较大的业务的需要而产生的,例如像是微软、IBM 等跨国公司,他们的业务和生产线分布在多个国家,但是需要一个统一的数据库来存储他们的产品信息,物流信息,版本信息等,所以产生了分布式数据库
分布式结构适应了地理上分散的公司、团体和组织对于数据库应用的需求,但数据的分布存放给数据的处理、管理与维护带来困难,同时,当用户需要经常访问远程数据时,系统效率会明显地受到网络传输的制约
【 C/S 结构】
C/S 结构即客户/服务器结构,其将 DBMS 功能与应用分开,网络中某些结点上的计算机专门用于执行 DBMS 功能,称为数据库服务器,其他结点上的计算机安装 DBMS 的外围应用开发工具,称为客户机,最典型的例子就是票务系统
C/S 结构的数据库更加开放,客户与服务器一般都能在多种不同的硬件和软件平台上运行,可以使用不同厂商的数据库应用开发工具,易于扩展和共享
但 C/S 结构存在胖客户问题,即系统安装复杂、工作量大,且应用维护困难,难于保密,安全性差,相同的应用程序要重复安装在每一台客户机上,从系统总体来看,大大浪费了系统资源
C/S 结构与主从式结构和分布式结构相比,主从式的主机、分布式的每个结点机,既执行 DBMS 功能又执行应用程序,而 C/S 结构的服务器仅执行 DBMS 功能,客户机仅执行应用程序
C/S 结构分为集中式服务器结构、分布式服务器结构两类
集中式服务器结构由一台服务器、多台客户机构成
分布式服务器结构由多台服务器、多台客户机构成,其是 C/S 结构与分布式结构的结合
【 B/S 结构】
B/S 结构即浏览器/应用服务器/数据库结构,客户端采用浏览器,界面统一,易于用户掌握,减少了培训时间和费用,服务器端分为应用服务器、数据库服务器两个部分,减少了系统开发和维护代价,能够支持数万甚至更多的用户