BigLake metastore 提供跨区域复制和灾难恢复功能,以提高目录的可用性和弹性。
此功能可确保持续访问,防范区域性服务中断,防止数据丢失,并为使用 Iceberg REST Catalog 的 Apache Iceberg 表启用故障切换,从而提高目录的可用性和弹性。
工作原理
BigLake Metastore 会自动为目录元数据选择主区域和次区域。主区域处理所有表提交元数据,然后将其复制到次区域以进行备份。
您可以随时(尤其是在发生灾难时)使用故障切换操作来切换目录的主要区域和次要区域。此操作会切换目录以及其中包含的所有命名空间和表的主账号。
跨区域复制
跨区域复制涉及两个主要组件:数据复制和元存储区复制。灾难恢复功能以跨区域复制为基础,可实现故障切换。
数据复制:当您使用双区域或多区域存储桶时,Cloud Storage 会自动在多个区域中复制目录数据。如果发生区域性中断,您的数据仍可访问,且无需更改存储路径。
Metastore 复制:对于 Iceberg REST 目录,当您使用双区域(或自定义双区域)存储桶时,BigLake metastore 会自动复制您的 metastore。当您创建目录时,元数据存储区复制即会开始。 BigLake 元存储区会从 Cloud Storage 配置中定义的区域中选择一个主要区域和一个次要区域。主区域会提供所有表提交元数据,并将其复制到次区域以进行备份。
灾难恢复与故障切换
借助灾难恢复功能,您可以切换目录的主要区域和次要区域。故障切换操作会切换目录及其所有命名空间和表的主区域。故障切换有两种模式:软故障切换和硬故障切换。
软故障切换:软故障切换可防止数据丢失。在此模式下,只有在从之前的主区域同步所有先前数据后,新的主区域才会开始接受写入操作。使用软故障切换进行灾难恢复测试或其他计划的情景。
硬故障切换:硬故障切换优先考虑可用性而非数据一致性,旨在恢复服务。在此模式下,主区域始终会接管并接受写入流量,无论主区域的当前状态如何。例如,使用硬故障切换时,即使之前的主区域无法访问,新的主区域也可以接管。
限制
此功能目前为预览版,REPLICATION_TIMESTAMP 仅跟踪目录元数据,而不跟踪 Cloud Storage 文件。如需了解数据丢失的下限,请参阅 Cloud Storage 数据可用性和持久性文档。