このトピックでは、クラスタエンドポイントを構成することにより、PolarDB クラスタの PolarProxy を構成する方法について説明します。
前提条件
PolarDB for MySQL クラスタは クラスタ版 です。クラスタ版の詳細については、「エディション」をご参照ください。
注意事項
PolarDB for MySQL 8.0 クラスタの PolarProxy を構成する場合にのみ、パラレルクエリ機能を有効化し、並列処理の次数を指定できます。
手順
[PolarDB コンソール] にログインします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。左上隅で、クラスタがデプロイされているリージョンを選択します。クラスタを見つけて、その ID をクリックします。
クラスタの 概要 ページの [データベース接続] セクションで、PolarProxy を構成するクラスタエンドポイントを見つけ、エンドポイント名の右側にある [構成] をクリックします。
表示されたダイアログボックスで、ビジネス要件に基づいてクラスタエンドポイントの構成を変更します。次の表に、構成可能なパラメータを示します。
表 1. パラメータ
パラメータ
説明
ネットワーク情報
デフォルトでは、PolarDB は各クラスタエンドポイントにプライベートエンドポイントを提供します。プライベートエンドポイントを変更したり、パブリックエンドポイントを申請したりできます。詳細については、「クラスタのエンドポイントを管理する」をご参照ください。
クラスター設定
読み書きモード
クラスタエンドポイントの読み取り/書き込みモード。ビジネス要件に基づいて、読み取り専用 または [読み取り/書き込み(自動読み取り/書き込み分割)] を選択できます。
説明カスタムクラスタエンドポイントの読み取り/書き込みモードは、作成後に変更できます。カスタムクラスタエンドポイントの読み取り/書き込みモードを変更した後、新しいモードは新しい接続に対してのみ有効になります。元のモードは、既存の接続に対して引き続き有効です。
エンドポイント名
カスタムクラスタエンドポイントの名前。
ノード設定
選択されていないノード と 選択ノード
左側の 選択されていないノード リストから、クラスタエンドポイントに関連付けるノードを選択します。[使用可能なノード] リストには、プライマリノードとすべての読み取り専用ノードが含まれています。次に、
アイコンをクリックして、選択したノードを右側の 選択ノード リストに追加します。
説明選択するノードのタイプは、エンドポイントの読み取り/書き込みモードには影響しません。
[読み取り/書き込み] パラメータを [読み取り/書き込み(自動読み取り/書き込み分割)] に設定した場合、書き込みリクエストは、プライマリノードが 選択ノード リストに追加されているかどうかに関係なく、プライマリノードのみに送信されます。
wp-config.php パラメータを 読み取り専用 に設定した場合、すべての読み取りリクエストは、ロードバランシングモードで読み取り専用ノードに転送されます。プライマリノードが 選択ノード リストに追加されている場合でも、読み取りリクエストはプライマリノードに転送されません。
新しいノードを自動的に関連付ける
新しいノードをクラスタエンドポイントに自動的に関連付けるかどうかを指定します。
SLB 設定
負荷バランスポリシー
読み取り専用ノード間で読み取りリクエストをロードバランシングするためのポリシー。ビジネス要件に基づいて、接続数に基づく負荷分散 と アクティブなリクエストベースのロードバランシング を選択できます。ロードバランシングポリシーの詳細については、「ロードバランシングポリシー」をご参照ください。
プライマリノードによる読み取りリクエストの許可
このパラメータを [いいえ] に設定すると、読み取りリクエストは読み取り専用ノードのみに送信され、プライマリノードの負荷が軽減されます。
このパラメータを [はい] に設定すると、読み取りリクエストはプライマリノードと読み取り専用ノードに送信されます。
詳細については、「プライマリノードが読み取りリクエストを受け入れる」をご参照ください。
説明ヒント:このパラメータは、 パラメータを [読み取り/書き込み(自動読み取り/書き込み分割)] に設定した場合にのみ使用できます。
トランザクション分離
トランザクション分割機能を有効にするかどうかを指定します。詳細については、「トランザクション分割」をご参照ください。
説明ヒント:このパラメータは、 パラメータを [読み取り/書き込み(自動読み取り/書き込み分割)] に設定した場合にのみ使用できます。
オンデマンド接続
オンデマンド接続を有効にするかどうかを指定します。詳細については、「オンデマンド接続」をご参照ください。
説明このパラメータは、[ロードバランシングポリシー] パラメータを アクティブなリクエストベースのロードバランシング に設定した場合にのみ使用できます。
整合性設定
一貫性レベル
読み取り/書き込み パラメーターを [読み取り/書き込み(自動読み取り/書き込み分割)] に設定すると、次の整合性レベルを使用できます。最終的な整合性 (弱)、セッション整合性 (中)、および グローバル整合性 (強)。詳細については、「整合性レベル」をご参照ください。
読み取り / 書き込み パラメータを 読み取り専用 に設定した場合、整合性レベルはデフォルトで 最終的な整合性 (弱) であり、変更できません。
重要整合性レベルの変更は、すべての接続にすぐに反映されます。
グローバル整合性(パフォーマンス専有型モード)は、有効化されると、クラスタのすべてのエンドポイントに適用されます。このモードを無効にすると、すべてのエンドポイントの整合性レベルは、モードが有効になる前の値に戻ります。
グローバル一貫性タイムアウト
PolarProxy が読み取りリクエストを受信した後、すべての読み取り専用ノードがプライマリノードの最新の LSN に更新されるのを PolarProxy が待機する最大時間。有効値:0 ~ 60,000。デフォルト値:20。単位:ミリ秒。
説明このパラメータは、一貫性レベル パラメータを [グローバル整合性(強)] に、[グローバル整合性モード] パラメータを [従来型モード] に設定した場合にのみ使用できます。
グローバル一貫性タイムアウトポリシー
指定されたタイムアウト期間内に PolarDB 読み取り専用ノード間でグローバル整合性が達成されない場合に適用するデフォルトポリシー。有効値:
プライマリノードにリクエストを送信 (デフォルト)
SQL 例外:レプリケーション完了タイムアウトを待ち、再試行してください。
説明このパラメータは、一貫性レベル パラメータを [グローバル整合性(強)] に、[グローバル整合性モード] パラメータを [従来型モード] に設定した場合にのみ使用できます。
グローバル整合性読み取りタイムアウト(パフォーマンス専有型モード)
PolarProxy が読み取りリクエストを受信した後、すべての読み取り専用ノードが最新のセッション LSN と同期するのを PolarProxy が待機する最大時間。値の範囲:1 ~ 1,000,000。デフォルト値:100。単位:ミリ秒。
重要グローバル整合性(パフォーマンス専有型モード)は、有効化されると、クラスタのすべてのエンドポイントに適用されます。クラスタの 1 つのエンドポイントに対してこのモードを有効にすると、クラスタの他のすべてのエンドポイントに対してもこのモードが有効になります。
このパラメータは、一貫性レベル パラメータを [グローバル整合性(強)] に、[グローバル整合性モード] パラメータを [パフォーマンス専有型モード] に設定した場合にのみ使用できます。
グローバル整合性読み取りタイムアウトポリシー(高パフォーマンスモード)
指定されたタイムアウト期間内に PolarDB 読み取り専用ノード間でグローバル整合性が達成されない場合に適用するデフォルトポリシー。有効な値:
[プライマリノードにリクエストを送信(デフォルト)]
[タイムアウトによるエラーメッセージを返す]
クエリでグローバル整合性読み取りがタイムアウトした場合、クエリの整合性レベルを非整合性読み取りにダウングレードします。クライアントにはエラーメッセージは返されません。
説明このパラメーターは、一貫性レベル パラメーターを [グローバル整合性(強)] に設定し、[グローバル整合性モード] パラメーターを [高パフォーマンスモード] に設定した場合にのみ使用できます。
セッション整合性タイムアウト
PolarProxy がセッションで読み取りリクエストを受信した後、セッション内の読み取り専用ノードが最新のセッション LSN と同期するのを PolarProxy が待機する最大時間。有効値:0 ~ 60,000。デフォルト値:0。単位:ミリ秒。
重要このパラメータは、[整合性レベル] パラメータを [セッション整合性(中)] に設定した場合にのみ使用できます。
グローバル整合性(パフォーマンス専有型モード)は、有効化されると、クラスタのすべてのエンドポイントに適用されます。このモードを無効にすると、すべてのエンドポイントの整合性レベルは、モードが有効になる前の値に戻ります。
セッション整合性タイムアウト ポリシー
指定された期間内に PolarDB 読み取り専用ノード間でセッションの一貫性を実現できなかった場合に適用するデフォルトポリシー。有効な値:
[プライマリノードにリクエストを送信 (デフォルト)]
[SQL 例外: レプリケーション完了タイムアウトを待機しています。再試行してください。]
説明このパラメーターは、[整合性レベル] パラメーターを [セッション整合性 (中)] に設定した場合にのみ使用できます。
接続プールの設定
接続プール
有効値:オフ、[セッションレベル]、および [トランザクションレベル]。デフォルト値:オフ。接続プールの詳細については、「接続プール」をご参照ください。
説明このパラメーターは、[読み取り / 書き込み(自動読み取り / 書き込み分割)] に 読み取り / 書き込み パラメーターを設定した場合にのみ使用できます。
変更は、新しい接続に対してのみ有効になります。変更を検証するには、アプリケーションを再起動するか、データベースへの接続を再確立する必要があります。
HTAP 最適化
並行クエリ
パラレルクエリ機能を有効にするかどうかを指定し、並列処理の次数を指定します。
Elastic Parallel Query(ePQ)機能は、クラスター内のマルチコア CPU とアイドル状態の計算資源を効果的に使用して、複雑なクエリを高速化できます。詳細については、「ePQ の概要」をご参照ください。
説明2023 年 4 月 1 日以降、クラスターが次の条件を満たしている場合、ePQ 機能はクラスターで自動的に有効になります。デフォルトの並列処理の次数は 2 です。
新しいクラスターの場合、CPU コアの数は 8 以上です。
既存のクラスターの場合、カスタムクラスターエンドポイントが作成され、CPU コアの数は 8 以上です。
トランザクションと分析処理の分離
行ストアノードと列ストアノード間でリクエストの自動分散を有効にするかどうかを指定します。詳細については、「行ストアノードと列ストアノード間でのリクエストの自動分散」をご参照ください。
説明このパラメーターは、次の要件が満たされている場合にのみ使用できます。クラスターがリビジョンバージョン 8.0.1.1.22 以降の PolarDB for MySQL 8.0.1 を実行している。クラスターエンドポイントは [読み取り/書き込み(自動読み取り/書き込み分割)] モードになっている。選択ノード リストの ノード設定 セクションに、少なくとも 1 つの読み取り専用列ストアノードが含まれている。
カラムストアノードは OLTP リクエストを処理します
カラムストアノードがオンライントランザクション処理 (OLTP) リクエストを処理できるようにするかどうかを指定します。
カラムストアノードが OLTP リクエストを処理できるように設定されている場合、ノードはオンライン分析処理 (OLAP) リクエストと OLTP リクエストの両方を受信します。 PolarProxy は、アクティブなリクエストの数に基づいて、OLTP 読み取りリクエストをカラムストアノードにルーティングします。 これにより、カラムストアノードの負荷が増加する可能性があります。
説明このパラメーターは、トランザクションと分析処理の分離 を有効にした場合にのみ使用できます。
セキュリティ保護
過負荷保護
過負荷保護機能を有効にするかどうかを指定します。詳細については、「過負荷保護」をご参照ください。
OK をクリックします。
関連 API 操作
操作 | 説明 |
PolarDB クラスタのクラスターエンドポイントを照会します。 | |
PolarDB クラスタエンドポイントの構成を変更します。 | |
PolarDB クラスタのカスタムクラスターエンドポイントを削除します。 |