この記事はLudovico CaldaraによるFaster Role Transitions in Oracle Data Guard 23aiを日本語に翻訳したものです。
2025年4月23日
数週間前、私はLinkedInにOracle Data Guard Switchover Changes in 23aiという動画を投稿しました。この動画では、Data Guard 19cのスイッチオーバー操作で実行される手順を説明しています。 その後、23aiの手順を説明するために、同じ動画を4倍速で繰り返し再生しています。予想外の面白い展開でしたが、特定の条件下では、このような高速なロール推移が計測できたことが伝われば幸いです。
ロール推移の高速化は、自動フェイルオーバー時のRTO低下や全体的なダウンタイムの減少を意味し、ビジネスに良い影響をもたらします。
以下のグラフは、当社の測定結果に基づき、Oracle Data Guard 23ai(23.8使用)のロール推移がOracle Data Guard 19c(19.18または19.22を使用)と比較して、いかに高速であるかを示すものです(詳細はこの記事の後半で説明)。

似たようなタイミングから4倍以上高速なものまであります。
具体的には何を計測していますか?
DGMGRLでSWITCHOVERやFAILOVERを入力してから、アラートログに出力されるサービス開始までの時間差を計測します。
そのために、次の表に示すように3つの異なる構成を使用します。
| Config | System |
PDBs |
Data Files |
Services |
Redo Rate |
| SMALL |
2-node Exadata RAC |
5 |
50 |
10 |
60 MB/s |
| MEDIUM |
4-node Exadata RAC |
12 |
500 |
12 |
100 MB/s |
| LARGE |
4-node Exadata RAC |
100 |
10000 |
1200 |
100 MB/s |
3つのケース全てにおいて、Swingbenchを使用してOLTPワークロードをシミュレートしています。
推移の高速化は、Oracle DatabaseとOracle Grid Infrastructure 23aiの最初の数回のリリース・アップデートで行われたいくつかのバグ修正とコード改良の結果です。
- 独立したタスクの並列化
- 不要なスリープ処理や繰り返しチェックの削除
- データベース・レベル(RAC, Multitenant, Recovery)での最適化
- クラスタウェア・レベルでの最適化
一部の最適化はOracle Database 19.27にバックポートされており、Oracle Grid Infrastructure 23aiと併用することで確認できます。
値はSWITCHOVERとFAILOVERですが、これらの変更は、REINSTATEやCONVERT TO SNAPSHOT|PHYSICAL STANDBYを含むすべてのロール推移に役立ちます。
影響はLiveLabsですでに感じられます。
私たちはCloudWorld 2024で新しいワークショップSet Up Unparalleled Data Protection with Oracle Active Data Guard 23aiを開始し、OCI Base Database Services 23.7を使用するよう最近更新しました(簡素化しました)。
実際に試してみると、非常に小さな構成であっても、23.3よりもスイッチオーバーが非常に高速になっていることがわかります。
Oracle Database 23.3では、21秒でスイッチオーバー

Oracle Database 23.7では、9秒未満でスイッチオーバー!

あなたのデータベースでの改善についてお聞きするのを楽しみにしています。