Lakehouse ランタイム カタログのクロスリージョン レプリケーションと障害復旧により、リージョン障害から保護されます。 ボーダーレス Lakehouse の一部として、この機能により、フェイルオーバー Apache Iceberg REST カタログエンドポイントを使用するテーブルのフェイルオーバーが可能になります。
フェイルオーバーを管理する場合は、計画的なテストのためのソフト フェイルオーバーと、サービスを迅速に復元するためのハード フェイルオーバーを選択できます。
仕組み
Lakehouse ランタイム カタログは、カタログ メタデータのプライマリ リージョンとセカンダリ リージョンを自動的に選択します。プライマリ リージョンは、すべてのテーブル commit メタデータを処理し、バックアップのためにセカンダリ リージョンに複製します。
いつでも、特に障害発生時には、フェイルオーバー オペレーションを使用してカタログのプライマリ リージョンとセカンダリ リージョンを切り替えることができます。この操作により、カタログとそのすべての名前空間とテーブルのプライマリが切り替わります。
クロスリージョン レプリケーション
クロスリージョン レプリケーションには、データ レプリケーションとメタストア レプリケーションの 2 つの主要なコンポーネントがあります。障害復旧機能は、クロスリージョン レプリケーションに基づいてフェイルオーバーを可能にします。
データ レプリケーション: デュアルリージョン バケットまたはマルチリージョン バケットを使用すると、Cloud Storage はカタログデータを複数のリージョンに自動的に複製します。リージョンが停止した場合でも、ストレージ パスを変更することなくデータにアクセスできます。
メタストア レプリケーション: Iceberg REST カタログ エンドポイントの場合、 デュアルリージョン(またはカスタム デュアルリージョン)バケットを使用すると、 Lakehouse ランタイム カタログはメタストアを自動的に複製します。 メタストア レプリケーションは、カタログを作成すると開始されます。Lakehouse ランタイム カタログは、Cloud Storage 構成で定義されたリージョンからプライマリ リージョンとセカンダリ リージョンを選択します。 プライマリ リージョンは、すべてのテーブル commit メタデータを提供し、バックアップのためにセカンダリ リージョンに複製します。
フェイルオーバーによる障害復旧
障害復旧機能を使用すると、カタログのプライマリ リージョンとセカンダリ リージョンを切り替えることができます。フェイルオーバー オペレーションは、カタログとそのすべての名前空間とテーブルのプライマリ リージョンを切り替えます。フェイルオーバーには、ソフト フェイルオーバーとハード フェイルオーバーの 2 つのモードがあります。
ソフト フェイルオーバー: ソフト フェイルオーバーはデータ損失を防ぎます。このモードでは、以前のプライマリ リージョンからすべてのデータが同期された後にのみ、新しいプライマリ リージョンが書き込みを受け付けます。障害復旧テストやその他の計画されたシナリオには、ソフト フェイルオーバーを使用します。
ハード フェイルオーバー: ハード フェイルオーバーは、データの 整合性よりも可用性を優先し、サービスを復元するように設計されています。このモードでは、プライマリ リージョンの現在の状態に関係なく、プライマリ リージョンが常に引き継ぎ、書き込みトラフィックを受け入れます。たとえば、ハード フェイルオーバーを使用する場合、以前のプライマリに到達できない場合でも、新しいプライマリ リージョンが引き継ぐことができます。
制限事項
この機能はプレビュー版であるため、REPLICATION_TIMESTAMP は Cloud Storage ファイルではなく、カタログのメタデータのみを 追跡します。データ損失の下限を維持するには、Cloud Storage データの可用性と 耐久性のドキュメントをご覧ください。