分布式数据库系统(DDBS)
-
分布式数据库系统(DDBS) (Distributed Database System)的概念及其特点: 分布式数据库系统是一种数据库系统,它将数据分散存储在多个地理上分散的节点上,通过一个全局数据库管理系统(DBMS)来协调这些节点,实现数据的统一管理和使用。完全分布式数据库系统是指满足分布性、逻辑相关性、场地透明性和场地自治性的数据库系统。它的特点包括:
- 数据的集中控制性: 虽然数据分布在不同的站点,但可以通过全局DBMS实现数据的一致性和完整性。
- 数据独立性: 局部数据的存储和结构变化不会影响全局数据库的正常运行。
- 数据冗余可控性: 允许数据在多个节点间复制,但需要有效管理数据冗余,防止数据不一致。
- 场地自治性: 各个站点可以在一定程度上独立地运行,包括存储和处理数据。
- 存取的有效性: 通过优化网络通信和查询处理,提高数据访问的效率。
-
分布式数据库的结构模式: 分布式数据库通常被抽象为四层的结构模式,具体包括物理层、逻辑层、概念层和应用层。
- 物理层: 描述数据在各个站点的实际存储方式和存储位置。
- 逻辑层: 描述数据如何被组织和存储,包括分片和复制机制。
- 概念层: 为用户提供一个统一的数据视图,屏蔽底层的分布细节。
- 应用层: 包含用户接口和应用程序,负责向用户提供数据访问服务。
-
分片模式:
- 水平分片: 也称为行分片,是指将表中的记录根据某种规则(如用户ID、日期等)分配到不同的节点上。这种分片方式可以有效分散单个节点的负载,提高系统的扩展性和性能。
- 垂直分片: 也称为列分片,是指将表中的列根据其重要性和访问频率分配到不同的节点上。这种分片方式可以帮助优化数据访问效率,尤其是在某些列的访问频率远高于其他列的情况下。
-
分布透明性: 分布透明性是指用户或应用程序不需要关心数据是如何分布的,包括数据被分片到哪些节点、节点的具体位置以及局部使用的数据模型等。这种透明性提高了系统的灵活性和易用性,使得分布式数据库系统能够像单机数据库系统一样被用户和应用程序使用。
- 分片透明性: 指用户或应用程序不需要知道逻辑上访问的表具体是如何分块存储的;是分布透明性的最高层次
- 位置透明性: 用户需要知道数据被分割为哪些片段,但无需知道这些片段存储在哪些具体节点上。指用户无须知道数据存放的物理位置;
- 逻辑透明,局部数据模型透明性: 用户需要知道数据被分割成哪些片段以及这些片段存储在哪些节点上,但无需知道每个节点上使用的是哪种数据模型(如关系型数据库、对象数据库等)。
- 复制透明性: 复制透明性是指在分布式数据库中,即使数据存在多个副本,用户或应用程序也不需要关心数据是从哪个副本获取的。这种透明性有助于提高数据的可用性和可靠性,特别是在某些节点出现故障的情况下,可以从其他节点的副本中获取数据。