通过跨区域复制 Lakehouse 运行时目录,您可以备份目录元数据,并保护工作负载免受区域级服务中断的影响。作为无边界 Lakehouse 的一部分,您可以使用灾难恢复功能对使用 Apache Iceberg REST 目录端点的表进行故障切换。
管理故障切换时,您可以选择软故障切换(用于计划内测试)或硬故障切换(用于恢复服务)。
工作原理
Lakehouse 运行时目录会自动为目录元数据选择主要区域和次要区域。主要区域会处理所有表提交元数据,然后将其复制到次要区域进行备份。
您可以随时(尤其是在发生灾难时)使用故障切换操作切换目录的主要区域和次要区域。此操作会切换目录以及所有包含的命名空间和表的主实例。
跨区域复制
跨区域复制涉及两个主要组件:数据复制和 Metastore 复制。灾难恢复功能基于跨区域复制构建,可实现故障切换。
数据复制:当您使用双区域或多区域存储桶时,Cloud Storage 会自动跨多个区域复制您的目录数据。如果发生区域性服务中断,您的数据仍可访问,且存储路径不会发生变化。
Metastore 复制:对于 Iceberg REST 目录端点,当您使用双区域(或自定义双区域)存储桶时,Lakehouse 运行时目录会自动复制您的 Metastore。Metastore 复制会在您创建目录时开始。Lakehouse 运行时目录会从 Cloud Storage 配置中定义的区域中选择主要区域和次要区域。主要区域提供所有表提交元数据,并将其复制到次要区域进行备份。
具有故障切换功能的灾难恢复
借助灾难恢复功能,您可以切换目录的主要区域和次要区域。故障切换操作会切换目录及其所有命名空间和表的主要区域。故障切换有两种模式:软故障切换和硬故障切换。
软故障切换:软故障切换可防止数据丢失。在此模式下,只有在所有先前数据都从先前的活跃区域同步后,新的活跃区域才会开始接受写入。对于灾难恢复测试或其他计划内场景,请使用软故障切换。
硬故障切换:硬故障切换优先考虑可用性而非数据一致性,旨在恢复服务。在此模式下,无论主要区域的当前状态如何,主要区域始终会接管并接受写入流量。例如,使用硬故障切换时,即使之前的区域无法访问,新的主要区域也可以接管。
限制
此功能处于预览版阶段时,REPLICATION_TIMESTAMP 仅跟踪目录元数据,而不跟踪 Cloud Storage 文件。如需将数据丢失率保持在下限,请参阅 Cloud Storage 数据可用性和耐用性文档。
后续步骤
- 将跨区域复制和灾难恢复与 Lakehouse 运行时目录端点搭配使用。