什么是 Data Replication?

独自坐在办公室使用笔记本电脑工作的女士

什么是数据复制?

数据复制是在不同位置创建和维护相同数据的多个副本的过程,作为确保整个组织的数据可用性、可靠性和弹性的一种方式。

通过将数据从源位置复制到一个或多个目标位置,副本有助于某一组织的全球用户轻松访问所需数据,而不会遭遇延迟问题。

当同一数据的多个副本存在于不同位置时,即使其中一个副本因灾难、中断或任何其他原因而无法访问,也可将其他副本用作备份。此冗余机制有助于组织最大限度地减少停机时间和数据丢失,并提高业务连续性。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

数据复制的工作原理

数据复制既可通过存储区域网络、局域网或本地广域网来实现,也可复制到云端。复制操作可同步或异步进行,具体则取决于写入操作的管理方式。复制操作可同步或异步进行,具体则取决于写入操作的管理方式。

  • 同步数据复制意味着数据会不断被同时复制到主服务器和所有副本服务器中。

  • 异步数据复制是指先将数据复制到主服务器,然后再分批复制到副本服务器。

虽然同步复制可确保数据不丢失,但异步复制所需的带宽却少得多,同时成本也更低。

Mixture of Experts | 12 月 12 日,第 85 集

解码 AI:每周新闻摘要

加入我们世界级的专家小组——工程师、研究人员、产品负责人等将为您甄别 AI 领域的真知灼见,带来最新的 AI 资讯与深度解析。

数据复制的优点

通过采用有效的数据复制策略,组织可通过以下方式获益:

增强可扩展性

数据复制可用作扩展策略的一部分,以适应增加的流量与工作负载需求。复制操作可通过在多个节点上分散数据来实现可扩展性,从而有助于实现更高的处理能力和更出色的服务器性能。

加快灾难恢复速度

在不同位置维护数据副本有助于在发生停电、网络安全攻击或自然灾害时最大限度地减少数据丢失和停机时间。从远程副本恢复的能力有助于确保系统的稳健性以及组织的可靠性和安全性。

降低延迟

全球分布式数据库意味着它必须以更短的传输距离触及最终用户。此特性可降低延迟并提高速度和服务器性能,而这对于游戏或推荐系统再或设计工具等资源密集型系统中基于实时的工作负载尤为重要。

提高容错能力

复制可通过提供冗余性来增强容错能力。如果数据的一个副本出现损坏或因故障而丢失,系统则可回到其他副本之一。此特性有助于防止数据丢失并确保不间断操作。

优化性能

通过将数据访问请求分配到多个服务器或地点,数据复制可减轻单个服务器的压力,从而优化服务器性能。此负载均衡有助于管理大量请求,并确保提升用户体验的响应速度。

数据复制的类型

根据数据复制流程的方法、目的和特点,数据复制可分为多种类型。数据复制的三种主要类型分别为:事务复制、快照复制和合并复制。

事务复制包括从主服务器(发布者)复制整个数据库,然后将其发送到辅助服务器(订阅者)。所有数据变更均会持续不断地更新。由于数据会实时进行复制并按其出现的顺序从主数据库发送到辅助服务器,因此可确保事务一致性。此类数据库复制通常会用于服务器到服务器环境。

借助快照复制,数据库快照会从主服务器分发到辅助服务器。数据不会持续更新,而是按创建快照时所存在的数据进行发送。当数据变更数量不多或首次启动发布者与订阅者之间的同步时,建议使用此类数据库复制。虽然快照复制不会监控数据变更,因此无助于数据备份,但它有助于在发生意外删除时进行恢复。

合并复制涉及将两个数据库合并为一个数据库。因此,对数据的任何更改均可从发布者更新到订阅者。这是一种复杂的数据库复制类型,因为双方(主服务器和辅助服务器)均可对这些数据进行更改。此类复制仅建议在服务器到客户端环境中使用。

数据复制方案

复制方案是指执行数据复制所需的操作和任务。三种主要的数据复制方案分别为:完全复制、部分复制和不复制。

借助完全复制可将主数据库完整复制到分布式系统中的每个站点。此全局分布方案可提供高数据库冗余性、降低延迟并加快查询执行速度。完全复制的缺点在于难以实现并发,且更新流程较慢。

部分复制方案中,数据库的某些部分会在部分或全部站点之间进行复制,且通常为最近更新的数据。部分复制可用于确定哪些数据十分重要且应被复制,以及根据现场需要来分配资源。

无复制是指将所有数据仅存储在一个站点上的方案。此举可轻松恢复数据并实现并发。无复制的缺点在于会对可用性产生负面影响,且会减慢查询执行速度。

数据复制技术

数据复制技术是指用于将数据从主要源复制到一个或多个目标系统或位置的方法和机制。使用最广泛使用的数据复制技术为:全表复制、基于键的复制和基于日志的复制。

借助全表复制,所有数据均会从数据源复制到目标位置,其中包括所有新数据和现有数据。如果您会定期删除记录,或是其他技术在技术上无法实现,则建议使用此方法。由于数据集的大小,全表复制确实需要更多的处理与网络资源,且成本更高。

基于键的增量复制中,仅会复制自上次更新以来所添加的新数据。由于复制的行数较少,因此该技术的效率较高。基于键的增量复制存在一个缺点:它不支持复制先前已硬删除的更新中的数据。

基于日志的复制可通过监控数据库日志记录(日志文件或变更日志)来捕获对数据源中数据所做的更改。然后,这些更改会复制到目标系统,且仅应用于受支持的数据库源。当源数据库结构为静态结构时,建议使用基于日志的复制,否则它可能会变为一个非常耗费资源的流程。

数据复制用例

数据复制是一种通用技术,它适用于各种行业和场景,以便提高数据可用性、容错能力和性能。数据复制的部分最常见用例包括:

  • 提高可用性并改善故障转移:数据复制通常会用于维护关键数据的冗余副本。如果出现硬件或系统故障,应用程序可切换到某一副本,从而最大限度地减少停机时间和数据丢失。

  • 增强灾难恢复 (DR) 态势:通过将数据复制到不同位置,组织可确保在发生自然灾害、火灾或其他影响主数据中心的灾难性事件期间能使数据得以保留。

  • 通过负载均衡提高性能:在多个数据库副本之间分配读取请求有助于均衡主系统的负载,从而确保在高峰使用期间获得最佳性能。

  • 减少全球员工队伍的延迟:在多个大洲拥有多个分支机构的企业可以将数据复制到距离每个用户更近的数据中心。这可以减少延迟并改善用户体验。

  • 改进商业智能和机器学习:通过同步基于云的商业智能报告并支持将数据从各种数据源迁移到数据存储(包括数据仓库或数据湖),数据复制可支持高级分析。

  • 改善针对医疗保健数据的访问:通过复制电子健康记录 (EHR) 和患者数据,可为医疗保健专业人员提供针对关键患者信息的快速数据访问,同时保持数据冗余性。

  • 游戏和在线多人游戏:在游戏服务器之间复制游戏数据和状态信息有助于为多人在线游戏提供支持,同时确保实现同步和一致的玩家体验。

数据复制风险

实施数据复制策略时,日益复杂的数据系统以及系统内各服务器之间不断变长的物理距离会带来若干风险,其中包括:

数据不一致

数据复制工具必须确保数据在所有副本中保持一致。复制延迟、网络问题或并发更新冲突可能会导致数据架构与数据分析异常问题,例如空计数、类型变更和偏差。

数据丢失

虽然数据复制通常会用于数据备份和灾难恢复,但并非所有复制策略均提供实时数据保护。如果在故障期间数据变更与相关复制之间存在延迟,则可能会导致数据丢失。

延迟

通过网络来复制数据会产生延迟并消耗带宽。较高的网络延迟或有限的带宽可能会导致复制延迟,从而影响数据更新的及时性。

数据安全问题

将数据复制到多个位置可能会引发安全风险。组织须确保所用全部数据复制工具均可在所有目标位置内的复制期间和静止时充分保护数据。

合规复杂性

在受监管行业中开展运营的组织须确保数据复制实践符合特定于行业的法规和数据隐私法,而这可能会增大复制策略的复杂性。

数据复制管理

通过实施数据管理系统来监督和监控数据复制流程,组织可大幅降低相关风险。基于“软件即服务 (SaaS)”的数据可观察性平台便属于此类系统,它可帮助确保:

  • 将数据成功复制到其他实例,包括云实例
  • 复制与迁移管道能正常运行
  • 系统会立即针对管道中断或数据量异常而发出警报
  • 按时交付数据
  • 交付的数据不但可靠还值得信赖,从而可用于分析

通过监控复制流程中涉及的数据管道,DataOps 工程师可确保通过管道传播的所有数据均准确、完整且可靠。此举可确保利益相关者可靠地使用复制到每个实例的数据。在监控方面,有效的 SaaS 可观察性平台应具备以下特点:

  • 细粒度—具体指出问题所在
  • 持续性—跟踪错误的发生脉络,以便了解其起因
  • 自动化—减少人工错误并允许使用阈值
  • 无处不在—提供端到端的管道覆盖
  • 及时性—支持在错误产生影响之前及时将其捕获

通过跟踪管道,可系统地排除故障,从而及时发现并修复所有错误。此举可确保用户在其分析中不断受益于更新、可靠且健康的数据。可跟踪的各类元数据包括任务持续时间、任务状态、数据更新时间等。出现异常时,跟踪(和警报)功能有助于 DataOps 工程师确保数据健康。

数据管道异常的警报功能是实现可观察性闭环的重要步骤。通过警报功能,DataOps 工程师可在任意数据健康问题影响跨各个实例的数据复制之前将其修复。在现有数据系统中,数据工程师可针对以下情况触发警报:

  • 错过数据交付
  • 出现意外架构变更
  • 未达到 SLA
  • 列级统计中出现的异常情况,例如空值和分布
  • 数据量和大小不规则
  • 管道故障、效率低下问题和错误

通过主动设置警报并通过仪表板和其他首选工具(Slack、PagerDuty 等)对其进行监控,组织可真正最大限度地发挥数据复制的优点并确保业务连续性。

相关解决方案
IBM StreamSets

通过直观的图形界面创建和管理智能流数据管道,促进跨混合和多云环境的无缝数据集成。

深入了解流媒体集
IBM Databand

发现 IBM Databand,用于数据管道的可观测性软件。该软件会自动收集元数据来构建历史基线、检测异常并创建工作流程,以修复数据质量问题。

深入了解 Databand
数据集成解决方案

利用 IBM 数据集成解决方案,创建弹性、高性能和成本优化的数据管道,以满足您的生成式 AI 计划、实时分析、仓库现代化和运营需求。

探索数据集成解决方案
采取后续步骤

了解 IBM DataStage,这是一款 ETL(提取、转换、加载)工具,为设计、开发和部署数据管道提供可视化界面。它可作为 IBM Cloud 上的托管 SaaS、自托管以及 IBM Cloud Pak for Data 的附加组件提供。

探索 DataStage 深入了解分析服务