分布式数据库的主要特点
(1)、数据独立性与位置透明性。数据独立性是数据库方法追求的主要目标之一,分布透明性指用户不必关心数据的逻辑分区,不必关心数据物理位置分布的细节,也不必关心重复副本(冗余数据)的一致性问题,同时也不必关心局部场地上数据库支持哪种数据模型.分布透明性的优点是很明显的.有了分布透明性,用户的应用程序书写起来就如同数据没有分布一样.当数据从一个场地移到另一个场地时不必改写应用程序.当增加某些数据的重复副本时也不必改写应用程序.数据分布的信息由系统存储在数据字典中.用户对非本地数据的访问请求由系统根据数据字典予以解释、转换、传送.
(2)、集中和节点自治相结合。数据库是用户共享的资源.在集中式数据库中,为了保证数据库的安全性和完整性,对共享数据库的控制是集中的,并设有DBA负责监督和维护系统的正常运行.在分布式数据库中,数据的共享有两个层次:一是局部共享,即在局部数据库中存储局部场地上各用户的共享数据.这些数据是本场地用户常用的.二是全局共享,即在分布式数据库的各个场地也存储可供网中其它场地的用户共享的数据,支持系统中的全局应用.因此,相应的控制结构也具有两个层次:集中和自治.分布式数据库系统常常采用集中和自治相结合的控制结构,各局部的DBMS可以独立地管理局部数据库,具有自治的功能.同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。当然,不同的系统集中和自治的程度不尽相同.有些系统高度自治,连全局应用事务的协调也由局部DBMS、局部DBA共同承担而不要集中控制,不设全局DBA,有些系统则集中控制程度较高,场地自治功能较弱。
(3)、支持全局数据库的一致性和和可恢复性。分布式数据库中各局部数据库应满足集中式数据库的一致性、可串行性和可恢复性。除此以外还应保证数据库的全局一致性、并行操作的可串行性和系统的全局可恢复性。这是因为全局应用要涉及两个以上结点的数据.因此在分布式数据库系统中一个业务可能由不同场地上的 多个操作组成.例如, 银行转帐业务包括两个结点上的更新操作。这样,当其中某一个结点出现故障操作失败后如何使全局业务滚回呢?如何使另一个结点撤销已执行的操作(若操作已完成或完成一部分)或者不必再执行业务的其它操作(若操作尚没执行)?这些技术要比集中式数据库复杂和困难得多,分布式数据库系统必须解决这些问题.
(4)、复制透明性。用户不用关心数据库在网络中各个节点的复制情况,被复制的数据的更新都由系统自动完成。在分布式数据库系统中,可以把一个场地的数据复制到其他场地存放,应用程序可以使用复制到本地的数据在本地完成分布式操作,避免通过网络传输数据,提高了系统的运行和查询效率。但是对于复制数据的更新操作,就要涉及到对所有复制数据的更新。
(5)、易于扩展性。在大多数网络环境中,单个数据库服务器最终会不满足使用。如果服务器软件支持透明的水平扩展,那么就可以增加多个服务器来进一步分布数据和分担处理任务。
分布式数据库的优点
(1)具有灵活的体系结构 。
(2)适应分布式的管理和控制机构。
(3)经济性能优越 。
(4)系统的可靠性高、可用性好 。
(5)局部应用的响应速度快。
(6)可扩展性好,易于集成现有系统。
分布式数据库的缺点
(1)系统开销大,主要花在通信部分。
(2)复杂的存取结构,原来在集中式系统中有效存取数据的技术,在分成式系统中都不再适用。
(3)数据的安全生和保密性较难处理。