数据库管理系统中的数据复制

数据复制 是在多个站点或节点中存储数据的过程。这对我来说很有用 提高数据的可用性 。它只是将数据从一台服务器复制到另一台服务器,以便所有用户可以共享相同的数据,而不存在任何不一致性。结果是 分布式数据库 用户可以在不干扰他人工作的情况下访问与其任务相关的数据。

null

数据复制包括不断重复事务,因此 复制处于持续更新状态 并与源同步。然而,在数据复制中,数据在不同的位置可用,但特定的关系必须只驻留在一个位置。

可以进行完全复制,整个数据库存储在每个站点上。也可以是部分复制,其中一些经常使用的数据库片段被复制,而其他片段则不被复制。

数据复制的类型——

  1. 事务复制– 在事务复制中,用户接收数据库的完整初始副本,然后在数据更改时接收更新。数据从发布服务器实时复制到接收数据库(订阅服务器),复制顺序与发布服务器相同,因此在这种复制中, 事务一致性是有保证的。 事务性复制通常用于服务器到服务器环境。它不只是复制数据更改,而是一致且准确地复制每个更改。
  2. 快照复制– 快照复制按特定时刻的显示方式分发数据,而不监视数据的更新。整个快照将生成并发送给用户。 通常在不经常使用快照复制数据更改时 。它比事务性稍慢,因为每次尝试都会将多条记录从一端移动到另一端。快照复制是在发布服务器和订阅服务器之间执行初始同步的好方法。
  3. 合并复制- 来自两个或多个数据库的数据合并到一个数据库中。合并复制是最复杂的复制类型,因为它允许发布服务器和订阅服务器分别对数据库进行更改。合并复制通常用于服务器到客户端环境。它允许将更改从一个发布服务器发送到多个订阅服务器。

复制方案-

1.完全复制- 最极端的情况是在分布式系统中的每个站点复制整个数据库。这将提高系统的可用性,因为只要至少有一个站点处于运行状态,系统就可以继续运行。

图片[1]-数据库管理系统中的数据复制-yiteyi-C++库

完全复制的优势——

  • 数据的高可用性。
  • 提高了检索全局查询的性能,因为结果可以从任何本地站点本地获取。
  • 更快地执行查询。

完全复制的缺点——

  • 在完全复制中很难实现并发性。
  • 慢速更新过程作为一次更新必须在不同的数据库中执行,以保持副本的一致性。

      2.无复制—— 复制的另一种情况涉及不进行复制——也就是说,每个片段只存储在一个站点上。

      图片[2]-数据库管理系统中的数据复制-yiteyi-C++库

      无复制的优势——

      • 数据很容易恢复。
      • 无需复制即可实现并发性。

      没有复制的缺点——

      • 由于多个用户正在访问同一台服务器,这可能会降低查询的执行速度。
      • 由于没有复制,数据不容易获取。

      3.部分复制- 在这种类型的复制中,数据库的某些片段可能会被复制,而其他片段可能不会。片段的副本数量可能从一个到分布式系统中的站点总数不等。片段复制的描述有时被称为复制模式。

      图片[3]-数据库管理系统中的数据复制-yiteyi-C++库

      部分复制的优点——

      • 片段的拷贝数取决于数据的重要性。

      数据复制的优势—— 数据复制通常是为了:

      • 为所有数据库节点提供一致的数据拷贝。
      • 增加数据的可用性。
      • 通过数据复制提高了数据的可靠性。
      • 数据复制支持多个用户并提供高性能。
      • 为了消除任何数据冗余,将合并数据库,并用过时或不完整的数据更新从属数据库。
      • 由于复制副本是创建的,所以有可能在事务执行的地方发现数据,从而减少数据移动。
      • 以更快地执行查询。

      数据复制的缺点——

      • 需要更多存储空间,因为在不同站点存储相同数据的副本会消耗更多空间。
      • 当需要更新所有不同站点上的副本时,数据复制的成本会变得很高。
      • 维护所有不同站点的数据一致性涉及复杂的措施。
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享