1.3 分布式数据库系统的作用和特点
1.3.1 作用
分布式数据库系统是地理上(或物理上)分散而逻辑上集中的数据库系统,适用于分散型组织结构的任何信息系统,如:航空公司订票系统,陆、海、空协同指挥系统,网络化制造系统,银行通存通兑系统,以及物流配送系统等。这些系统都涉及分散在不同地理位置上数据的一致性、完整性及有效性,采用相互独立的集中式数据库系统难于实现。在此推动下,需要开发分布式数据库系统,有效地适应地理位置上分散的、网络环境下互连的、逻辑上统一的分布式数据管理需求。
1.3.2 特点
分布式数据库系统是在集中式数据库系统和计算机网络技术基础上发展起来的,同时提出了许多新观点、新方法和新的实现技术,有效地提高了系统的性能。因此,分布式数据库系统具有许多集中式数据库系统所不具备的优点。但由于分布式数据库系统的复杂性,有些技术的实现还不完善,如恢复开销庞大导致系统效率严重下降、难于达到完全透明等。其具体特点介绍如下。
1.分布式数据库系统的优势
分布式数据库系统由多个场地上的数据处理节点组成,允许存在一定的数据冗余,强调局部处理能力,主要具有如下优势。
●适合分布式数据管理,有效地提高系统性能。分布式数据库系统由网络中多个分布于不同场地上的数据处理节点组成,每个节点类似于一个集中式数据库系统,具有局部自治性和全局协调一致性的特点。可见,分布式数据库系统适合具有地理分布特性的企业或机构的数据管理任务。分布在不同区域、不同级别的各个部门可局部管理其自身的数据,既体现了其局部自治特性,也降低了通信代价,有效地提高了系统处理性能。同时,系统可充分利用分布的数据处理资源,并行、协调地对数据进行有效处理,达到提高系统总体处理能力、提高系统吞吐率和系统响应速度的目的。另外,由于可利用分布式数据库系统的局部特性,尽量减少本地数据在其他场地上的存储,因此可以大大减少网络上的信息传输量,这也可有效避免由于网上数据传输所带来的敏感数据泄漏等不安全因素的影响,提高数据的安全性。
●系统经济性和灵活性好。随着计算机处理能力的提高,支持分布式数据库系统的运行环境可以由各微机服务器群或高性能微机机群组成。同由一个大型计算机所支持的一个大型的集中式数据库相比,前者具有更高的性价比和更好的实施灵活性。因为大型的集中式数据库系统通过远程终端实现远程处理,不具有分布式数据库系统所具有的本地处理能力。并且,分布式数据库系统可利用现有的设备和系统,省时、省力、投资少,具有可扩展性。例如,将局域网环境下已有的集中式数据库系统作为一个新的场地,按需加入或按需撤出。可见,分布式数据库系统建设成本低、灵活性强、可伸缩性好。
●系统的可用性和可靠性高。分布式数据库系统中的资源和数据分布在地理位置不同的场地上,为系统所有用户共享,并允许存储数据副本,数据具有一定冗余度。当在个别场地或个别通信链路发生故障时,不会导致整个系统崩溃。系统的局部故障也不会引起全局失控,系统的容错能力强、可用性和可靠性高。
2.分布式数据库系统存在的问题
分布式数据库系统能够统一地管理和协调各个局部场地上的数据处理,保证全局数据的一致性、完备性和安全性。但由于系统本身庞大,面临的分布式应用复杂多样,因此存在如下主要问题。
●系统设计复杂。分布式数据库的分片设计、分配设计依赖于系统的应用需求,并且影响系统的性能、响应速度及可用性等。分布式数据库的查询处理和优化、事务管理、故障恢复和并发控制以及元数据管理等,都需要分布处理。因此,与集中式系统相比,分布式系统的设计更加复杂。
●系统处理和维护复杂。分布式系统具有分布结构和分布处理的特性,当涉及分布场地上的数据时,需要统一实时处理数据,并要保证数据的一致性。同时,需要全局统一实现分布式调度和并发执行,以及故障发生后的分布式恢复。可见,分布式数据库系统的处理和维护远比集中式数据库系统复杂。
●数据的安全性和保密性较难控制。在分布式数据库系统中,不同场地的局部数据库系统具有一定程度的场地自治性,因而,不同场地的管理员可以采用不同的安全措施,这就难以保证全局数据的安全性。另外,分布式数据库系统需要通过通信网络传输控制消息和数据,必须保证消息和数据在网络通信过程中的安全性。