PolarDB-X のバックアップと復元機能および課金について説明します。
バックアップ機能
バックアップの種類
PolarDB-X のバックアップは、データバックアップとログバックアップで構成されます。
-
データバックアップ:物理バックアップによってバックアップセットを作成します。バックアップセットが作成された時点にデータを復元できます。
-
ログバックアップ:増分バックアップとも呼ばれます。データの変更を記録するバイナリログ (Binlog) をバックアップします。
ログバックアップを有効にすると、データバックアップとログバックアップを組み合わせることで、保持期間内に秒単位で任意の時点にデータを復元できます。たとえば、2021 年 1 月 1 日 00:00:01 にデータバックアップが作成され、その後のログバックアップが利用可能な場合、その時点以降の任意の時点に復元できます。
バックアップ方法
PolarDB-X は、自動バックアップと手動バックアップをサポートしています。
-
自動バックアップ:自動的にトリガーされる定期的なデータバックアップです。
-
自動バックアップポリシーはデフォルトで有効になっており、無効化できません。データバックアップとログバックアップの両方を含みます。
-
デフォルトでは、データバックアップは毎週月曜日と木曜日に 2 回実行されます。ログバックアップは継続的に実行されます。自動バックアップの時間枠と頻度を設定できます。
-
-
手動バックアップ:コンソールからのみ手動データバックアップをトリガーできます。
-
自動バックアップの最小頻度は週 1 回です。
-
別の手動バックアップを開始する前に、現在の手動バックアップが完了するまでお待ちください。
バックアップストレージの場所
-
データバックアップ:Alibaba Cloud バックアップストレージに保存されます。インスタンスストレージを消費しません。デフォルトで 30 日間保持されます。
-
ログバックアップ:一時的にインスタンスストレージに保存されます。7 時間 (デフォルト) 経過後、またはログがインスタンスストレージの 30% に達すると、Alibaba Cloud バックアップストレージにアップロードされ、デフォルトで 7 日間保持されます。
ストレージ消費を管理するために、ローカルログ保持ポリシーを設定してください。 バックアップ操作をご参照ください。
バックアップの影響
PolarDB-X は、ストレージノード (DN) のセカンダリノードでバックアップを実行します。セカンダリノードはサービストラフィックを処理しないため、バックアップはプライマリノードの CPU を消費せず、インスタンスのパフォーマンスに影響を与えません。
まれにセカンダリノードが利用できない場合、バックアップはプライマリノードで実行されます。
復元機能
復元方法
PolarDB-X は、バックアップセットによる復元とポイントインタイムリストアの 2 つのデータ復元方法をサポートしています。
-
バックアップセットによる復元:データバックアップからバックアップセットの作成時点にデータを復元します。
-
ポイントインタイムリストア:データバックアップとログバックアップを組み合わせて、保持期間内の任意の時点 (秒単位で正確) にデータを復元します。たとえば、2021 年 1 月 1 日 00:00:01 にデータバックアップが作成され、その後のログバックアップが利用可能な場合、その時点以降の任意の時点に復元できます。
復元先
PolarDB-X は、新しいインスタンスにのみデータを復元します。復元後、DTS などのツールを使用して、データを元のインスタンスに移行してください。
-
新しいインスタンスは、元のインスタンスのホワイトリスト、バックアップ、およびパラメータ設定を継承します。
-
新しいインスタンスのデータは、バックアップファイルまたは指定された復元時点のデータと一致します。
-
新しいインスタンスには、バックアップまたは復元時点に存在していたアカウント情報が含まれます。
-
新しいインスタンスは、元のインスタンスと同じトポロジーで、ノード数も同じです。
グローバル整合性
PolarDB-X は分散データベースであり、データは複数のストレージノード (DN) に分散して保存されます。復元中、システムは並行して実行される分散トランザクションにもかかわらず、すべてのノード間でデータ整合性を確保する必要があります。次の図は、資金振替を例にグローバル整合性を示しています。
PolarDB-X は、2 つのストレージノードに分散されたユーザーアカウント残高テーブルを保存しており、合計残高は 200 米ドルです。分散トランザクションは、アカウント間で継続的に資金を振替します。
2021 年 7 月 25 日 16:14:20 に、アカウント B がアカウント A に 30 米ドルを振替し、アカウント D がアカウント C に 20 米ドルを振替しました。グローバル整合性を確保するため、復元されたデータは、両方の振替が完了する前または後のどちらかの状態を反映する必要があります。合計残高は 200 米ドルのままである必要があります (復元 2)。合計が 250 米ドルである中間状態 (復元 1) は、グローバル不整合を示しています。