すべてのプロダクト
Search
ドキュメントセンター

PolarDB:よくある質問

最終更新日:Jun 27, 2024

このトピックでは、PolarDBが提供するPolarProxyに関するよくある質問 (FAQ) に対する回答を提供します。

読み書き分離

  • レコードを挿入した直後にレコードを取得できないのはなぜですか?

    読み取り /書き込み分割アーキテクチャでは、データがプライマリノードと読み取り専用ノードの間で複製されているときに遅延が発生します。 PolarDBはセッションの一貫性をサポートしており、セッション内で更新をクエリできるようにします。 レプリケーションの完了後、挿入されたレコードを取得できます。 詳細については、一貫性レベルの「セッションの整合性」セクションをご参照ください。

  • PolarDBに書き込まれた直後にデータを読み取ることはできますか?

    いいえ、データがPolarDBに書き込まれた直後にデータを読み取ることはできません。 PolarDBクラスターのプライマリノードと読み取り専用ノードの負荷が重くない場合でも、読み書き分離が有効になっているエンドポイントを使用してデータを読み取ると、数ミリ秒の遅延が発生します。 この遅延を解消するには、プライマリエンドポイントを使用してPolarDBクラスターに接続します。 このようにして、読み取りおよび書き込み要求がプライマリノードに送信されます。 プライマリエンドポイントの表示方法の詳細については、「エンドポイントとポートの表示」をご参照ください。

  • プライマリノードの負荷が高いのに、読み取り専用ノードに低い負荷が存在するのはなぜですか。

    デフォルトでは、トランザクションのリクエストはプライマリノードにのみルーティングされます。 プライマリノードと読み取り専用ノード間で負荷を分散するには、次のソリューションを使用できます。

    • Sysbenchを使用してストレステストを実行する場合、Sysbenchのバージョンが0.5の場合はコードで -- oltp-skip-trx=onを、Sysbenchのバージョンが1.0の場合は -- skip-trx=onを指定します。 この方法では、BEGINおよびCOMMITステートメントを実行する必要はありません。

    • トランザクションの数が多いとプライマリノードに大きな負荷がかかる場合は、トランザクション分割機能を有効にしてプライマリノードの負荷を軽減できます。 詳細については、「トランザクション分割」をご参照ください。

  • 特定のノードが他のノードよりも多くのリクエストを受け取るのはなぜですか?

    要求は、負荷に基づいて各ノードに分配される。 より軽い負荷が存在するノードは、より多くの要求を受け取る。

  • 新しい読み取り専用ノードは自動的に読み取り要求を受信しますか?

    これは、読み取り専用ノードを追加した後に読み書き分離をサポートするセッションが作成されるかどうかによって異なります。 はいの場合、リクエストは自動的に読み取り専用ノードに転送されます。 いいえの場合、読み取り要求は読み取り専用ノードに転送されません。 この場合、接続を閉じてから、クラスターに再接続できます。 このようにして、接続を介して送信された読み取り要求は読み取り専用ノードに転送されます。 たとえば、アプリケーションを再起動して新しい接続を確立できます。

クラスターエンドポイント

  • クラスターに作成できるシングルノードクラスターエンドポイントの最大数はいくつですか。

    クラスターに最大3つのカスタムクラスターエンドポイントを作成できます。 カスタムクラスタエンドポイントは、単一ノードクラスタエンドポイントにすることができます。 シングルノードのクラスターエンドポイントを作成する方法の詳細については、「カスタムクラスターエンドポイントの作成と変更」をご参照ください。

    警告

    読み取り専用ノードのシングルノードクラスターエンドポイントを作成し、読み取り専用ノードが期待どおりに実行されない場合、シングルノードクラスターエンドポイントは最大1時間使用できない可能性があります。 運用環境では、シングルノードのクラスターエンドポイントを作成しないことを推奨します。

  • 読み取り専用ノード用に単一ノードのクラスターエンドポイントが作成されている場合、フェールオーバー後に読み取り専用ノードを新しいプライマリノードとして使用できますか?

    シングルノードクラスターエンドポイントが作成される読み取り専用ノードは、フェールオーバー後に新しいプライマリノードとして自動的に使用することはできません。 ただし、読み取り専用ノードを新しいプライマリノードとして手動で昇格させることはできます。 詳細については、「自動フェールオーバーと手動フェールオーバー」をご参照ください。

  • クラスターに作成できるクラスターエンドポイントの最大数はいくつですか。

    クラスターには、最大4つのクラスターエンドポイントを含めることができます。 1つのクラスターエンドポイントはデフォルトのクラスターエンドポイントで、他のエンドポイントはカスタムクラスターエンドポイントです。

  • クラスターエンドポイントを変更できますか。

    はい。デフォルトのクラスターエンドポイントとカスタムクラスターエンドポイントを変更できます。 詳細については、「カスタムクラスターエンドポイントの変更」をご参照ください。

  • クラスターエンドポイントを削除できますか。

    はい、削除できるのはカスタムクラスターエンドポイントのみです。 デフォルトのクラスターエンドポイントは削除できません。 詳細については、「カスタムクラスターエンドポイントの削除」をご参照ください。