このドキュメントでは、グローバルデータベースネットワーク (GDN) に関するよくある質問 (FAQ) に回答します。
GDN のプライマリクラスターとセカンダリクラスター間のデータルーティングのロジックは何ですか?
GDN 内のクラスターへの読み取りおよび書き込みリクエストのルーティングは、各クラスターのデータベースプロキシ構成によって決定されます。アプリケーションのコードを変更する必要はありません。適切なクラスターのエンドポイントに接続するだけで、リクエストは次のロジックに基づいて自動的にルーティングされます。
INSERT、UPDATE、DELETE文などの書き込みリクエスト、SET文などの他のブロードキャスト構文、およびトランザクション内のすべてのリクエストは、処理のためにプライマリクラスターのプライマリノードに自動的に転送されます。読み取りリクエストは、デフォルトで最も近いアクセスのためにローカルのセカンダリクラスターの読み取り専用ノードにルーティングされます。セッションの一貫性が有効になっている場合、データ整合性を確保するために、一部の読み取りリクエストがプライマリクラスターのプライマリノードにルーティングされることもあります。
GDN はグローバルドメイン名も提供します。この機能は、最も近いアクセスを可能にするだけでなく、プライマリクラスターのスイッチオーバー後もドメイン名が変わらないことを保証します。
[読み書きモード] が [読み書き (自動読み書き分離)] に設定されているクラスターエンドポイントまたはカスタムエンドポイントのみが、GDN の読み書き分離サービスをサポートします。
[プライマリエンドポイント] および [読み書きモード] が [読み取り専用] に設定されているカスタムエンドポイントは、GDN の読み書き分離サービスをサポートしません。
プライマリクラスターとセカンダリクラスター間のレプリケーションの遅延がビジネスに与える潜在的な影響を軽減するために、セカンダリクラスターでカスタムクラスターエンドポイントを構成する際には、プライマリノードによる読み取りリクエストの許可 を [いいえ] に設定し、一貫性レベル を 最終的な整合性 (弱) に設定することをお勧めします。
ビジネスシナリオでセカンダリクラスターの遅延を許容できない場合は、プライマリクラスターのエンドポイントに直接接続してください。
GDN 内のクラスターのクロスリージョン遅延はどのくらいですか?
GDN は、クロスリージョンのデータ同期に非同期の物理レプリケーションを活用します。並列物理ログ再生などの技術により、プライマリクラスターとセカンダリクラスター間のレプリケーションの遅延を 2 秒以内に抑えることができます。この同期方法は、プライマリクラスターのパフォーマンスや安定性に影響を与えず、グローバルなデータの最終的な整合性を保証します。GDN 内の各クラスターは、読み取りおよび書き込みサービスを提供し、ジオディザスタリカバリをサポートします。
GDN のクロスリージョン遅延履歴を表示するにはどうすればよいですか?
この手順は更新されました。プライマリクラスターページではなく、GDN ページから遅延を表示できるようになりました。
PolarDB コンソールにログインします。左側のナビゲーションウィンドウで、[グローバルデータベースネットワーク (GDN)] をクリックします。
[グローバルデータベースネットワーク (GDN)] ページで、ターゲット GDN を見つけ、その [グローバルデータベースネットワーク ID] をクリックして詳細ページに移動します。
[トポロジー] セクションの [レプリケーション遅延の表示] ボタンをクリックします。
表示されるダイアログボックスで、指定した期間の遅延をフィルターして表示できます。

GDN のクロスリージョン遅延モニタリングを構成するにはどうすればよいですか?
PolarDB コンソールにログインします。左側のナビゲーションウィンドウで、[グローバルデータベースネットワーク (GDN)] をクリックします。
[グローバルデータベースネットワーク (GDN)] ページで、ターゲット GDN を見つけ、その [GDN ID] をクリックして GDN 詳細ページに移動します。
ターゲットのセカンダリクラスターをクリックします。左側のナビゲーションウィンドウで、[パフォーマンスモニタリング] を選択します。
[アラートルールの追加] をクリックします。
アラートルールの作成ページで、次のパラメーターを構成します。
[リソース範囲] を [インスタンス] に設定します。
監視したいセカンダリクラスターを [関連リソース] に追加します。
[ルール説明] セクションで、[ルールの追加] をクリックし、[シンプルメトリック] を選択します。

[メトリック] には、[クラスター ID] > [読み取り専用ノードのレプリケーション遅延] を選択します。
[チャートプレビュー] セクションで、セカンダリクラスターの [読み書きノード] のみを選択します。
必要に応じて [ルール名] と [しきい値とアラートレベル] を設定します。
[OK] をクリックして、ルール説明の構成を完了します。
必要に応じて他のパラメーターを設定します。
[確認] をクリックして、アラートルールの構成を完了します。
アラートルールの詳細については、「アラートルールを作成する」をご参照ください。
GDN のプライマリクラスターとセカンダリクラスター間の高い同期遅延を解決するにはどうすればよいですか?
セカンダリクラスターとプライマリクラスターの仕様が大きく異なる場合、プライマリクラスターへの高い書き込み負荷が、データ同期中にセカンダリクラスターで 1 秒あたりの I/O 操作 (IOPS) のボトルネックを引き起こす可能性があります。これにより、同期遅延が増加します。この問題を解決するには、セカンダリクラスターの仕様をプライマリクラスターに合わせてアップグレードします。
GDN のプライマリクラスターとセカンダリクラスターをスイッチオーバーするにはどうすればよいですか?
GDN クラスターのプライマリ/セカンダリのスイッチオーバーを実行する方法の詳細については、「セカンダリクラスターをプライマリクラスターに切り替える」または「SwitchOverGlobalDatabaseNetwork」 API をご参照ください。
プライマリ/セカンダリのスイッチオーバーでは、2 つのクラスターのエンドポイントは交換されません。アプリケーションを再構成する必要があります。元のプライマリクラスターにパブリックエンドポイントがある場合、新しいプライマリクラスターにもパブリックエンドポイントがあることを確認する必要があります。そうしないと、アプリケーションはデータベースにアクセスできません。詳細については、「エンドポイントとポートの表示」をご参照ください。
GDN でのプライマリ/セカンダリのスイッチオーバーは、通常 5 分未満で完了しますが、最大 10 分かかる場合があります。スイッチオーバー中、最大 160 秒の一時的な接続の中断が発生する可能性があります。オフピーク時にスイッチオーバーを実行し、アプリケーションに再接続メカニズムがあることを確認することをお勧めします。
GDN のプライマリクラスターとセカンダリクラスターの領域と表領域のフラグメントをクリアするにはどうすればよいですか?
GDN のプライマリクラスターとセカンダリクラスターの表領域フラグメントによって占有されている領域をクリアする方法の詳細については、「表領域フラグメントをリサイクルする」をご参照ください。
OPTIMIZEコマンドを実行して、プライマリクラスターの領域を解放できます。セカンダリクラスターの領域は同期的にクリアされます。セカンダリクラスターでコマンドを再度実行する必要はありません。OPTIMIZEコマンドを実行するには、プライマリクラスターとセカンダリクラスターのパラメーター設定でバイナリログを有効にする必要があります。バイナリログを有効にすると、クラスターが自動的に再起動します。この操作はオフピーク時に実行することをお勧めします。詳細については、「バイナリログを有効にする」をご参照ください。OPTIMIZE TABLE文を実行すると、テーブルはロックされます。この文はオフピーク時に実行することをお勧めします。DMS でOPTIMIZE TABLE文を実行するために必要な時間は見積もることができません。ロックレス変更タスクの進捗をクエリできます。詳細については、「ロックレス変更の進捗を表示する」をご参照ください。
GDN セカンダリクラスターを追加するにはどうすればよいですか?
GDN にセカンダリクラスターを追加する方法の詳細については、「セカンダリクラスターを追加する」をご参照ください。
クラスターは 1 つの GDN にのみ属することができます。
セカンダリクラスターとして新しいクラスターのみを作成できます。既存のクラスターをセカンダリクラスターとして追加することはできません。
プライマリクラスターとセカンダリクラスターは、同じデータベースエンジンバージョン (MySQL 8.0、MySQL 5.7、または MySQL 5.6) を使用する必要があります。
サーバーレスクラスターではない GDN 内のセカンダリクラスターの場合、各計算ノードには少なくとも 4 つの CPU コアが必要です。
デフォルトでは、GDN 内の各クラスターには 2 つのノードが含まれています。最大 16 ノードまで追加できます。
セカンダリクラスターの作成に必要な時間は、プライマリクラスターのデータ量によって異なります。初期データコピープロセスは遅くなる可能性があるため、しばらくお待ちください。
セカンダリクラスターにデータベースアカウントを作成することはできません。プライマリクラスターにアカウントを作成する必要があります。システムはアカウントをセカンダリクラスターに自動的に同期します。
セカンダリクラスターを作成しても、プライマリクラスターへのパフォーマンスへの影響は最小限です。
GDN は、複数のセカンダリクラスターを同時に作成することをサポートしていません。現在のセカンダリクラスターが作成された後にのみ、新しいセカンダリクラスターを作成できます。
Milvus バージョンアップグレード機能を使用すると、プライマリクラスターの前にセカンダリクラスターをアップグレードできます。
GDN を削除するにはどうすればよいですか?
GDN を削除する方法の詳細については、「グローバルデータベースネットワークを削除する」をご参照ください。
GDN は、プライマリクラスターのみが含まれている場合にのみ削除できます。
GDN は削除後に復元できません。注意して進めてください。
GDN が削除されると、それに接続されているアプリケーションはデータベースにアクセスできなくなります。アプリケーションの接続コードを速やかに更新してください。
GDN のプライマリクラスターをリリースすると、GDN は自動的に削除されます。GDN を個別に削除する必要はありません。
GDN の運用上の制限は何ですか?
グローバルデータベースネットワーク (GDN) のクラスターは、インメモリ列インデックス (IMCI) 機能をサポートしています。 ただし、読み取り専用列ストアノードを追加する前に、
loose_polar_enable_imci_with_standbyクラスターパラメーターを有効にする必要があります。 クラスターのバージョンは、次のいずれかの要件も満たす必要があります。MySQL 8.0.1、リビジョンバージョン 8.0.1.1.48 以降。
MySQL 8.0.2、リビジョンバージョン 8.0.2.2.27 以降。
GDN 内のクラスターは、サーバーレスクラスターまたはサーバーレス機能が有効になっている定義済みの仕様を持つクラスターにすることができます。ただし、プライマリクラスターのマイナーエンジンバージョンが次のバージョンより前の場合、GDN 内のすべてのクラスターには少なくとも 1 つの読み取り専用ノードが必要です。
MySQL 8.0.1、マイナーエンジンバージョンが 8.0.1.1.42 より前。
MySQL 8.0.2、マイナーエンジンバージョンが 8.0.2.2.23 より前。
GDN 内のクラスターは、データベース・テーブルの復元機能をサポートしていません。
失われたデータを回復するには、まず新しいクラスターへのポイントインタイムリカバリを実行し、その後データを GDN のプライマリクラスターに移行します。
GDN は特定のデータベースの同期をサポートしていません。クラスターレベルでのみ同期を構成できます。
GDN の VPC を変更できますか?
VPC と vSwitch を切り替えることができます。グローバルドメイン名の作成機能を使用した場合、新しい VPC と GDN 内の他のクラスターをホストする VPC との間の接続を再確立する必要があります。
GDN のプライマリクラスターとセカンダリクラスターのバイナリログのロジックは何ですか?
コンソールを使用するか、loose_polar_log_bin パラメーターを変更して、プライマリクラスターとセカンダリクラスターのバイナリログを有効にすることができます。
バイナリログを有効にすると、クラスターが自動的に再起動します。この操作はオフピーク時に実行することをお勧めします。
プライマリクラスターでバイナリログを有効にすると、バイナリログはプライマリクラスターの内部ノード間でのみ同期されます。プライマリクラスターのバイナリログはセカンダリクラスターには同期されません。
セカンダリクラスターでバイナリログを有効にすると、設定は構成ファイルに記録されるだけです。バイナリログはセカンダリクラスター内では同期されず、プライマリクラスターからも同期されません。
クラスターがプライマリクラスターに切り替わった後、書き込まれたバイナリログはこのクラスターのバイナリログファイルにのみ追加されます。複数回のスイッチオーバーの後、2 つのクラスターからの結合されたバイナリログは完全なバイナリログを提供できます。ただし、各クラスターのバイナリログを個別に表示すると、そのクラスターがプライマリクラスターであったときに生成されたログのみが表示され、完全なバイナリログは表示されません。
PolarDB: GDN 作成時に指定した DBClusterID が存在しない場合はどうすればよいですか?
次の確認と操作を実行できます。
クラスター ID を確認して、クラスターが存在することを確認します。PolarDB コンソールでクラスター ID の正確性と有効性を確認できます。
クラスター ID が正しく、クラスターが存在するにもかかわらずエラーが続く場合、クラスター構成がグローバルデータベースネットワーク (GDN) の要件を満たしていない可能性があります。詳細については、「グローバルデータベースネットワーク (GDN) の適用範囲」をご参照ください。
クラスターが期待どおりに実行されているかどうかを確認し、メンテナンスやアップグレードの操作が進行中でないことを確認します。
クラスターに、GDN の作成をサポートするのに十分なリソース (CPU、メモリ、ストレージ容量など) があるかどうかを確認します。
多くのリージョンに独立したデータがある場合、GDN を使用できますか?
複数のリージョンに独立したデータクラスターをデプロイしており、グローバルデータベースネットワーク (GDN) 機能を使用したい場合は、これらの個別のクラスターから統一されたソースクラスターにデータをインポートする必要があります。その後、この統一されたソースクラスターに基づいて GDN プライマリクラスターを作成し、他のリージョンからセカンダリクラスターを追加できます。