サーバーレス 機能は、PolarDB クラスタに動的スケーリング機能を提供します。クラスタ内の各ノードは、業務に影響を与えることなく、ワークロードの急激な増加に対応するために数秒以内にスケールアップできます。ワークロードが減少すると、コストを節約するためにノードをスケールダウンできます。
サーバーレス 機能を使用すると、データベースの作成時および使用時にデータベースクラスタのリソース構成について心配する必要はありません。次のセクションでは、ビジネスの変動に伴う、一般的なクラスタと サーバーレス クラスタ のリソース使用量と仕様の変化を示します。
|
特徴
サーバーレス 機能は、CPU、メモリ、ストレージ、およびネットワーク リソースのリアルタイム スケーリングをサポートしています。また、ネットワーク リソースとストレージ リソースを分離することもでき、コンピューティング リソースとストレージ リソースの従量課金制をサポートしています。サーバーレス クラスタは、変動するワークロードに適応し、コストを削減し、効率を向上させるために、コンピューティング リソースとストレージ リソースを迅速かつ独立してスケーリングするのに役立ちます。
項目 | 説明 |
アーキテクチャ |
|
スケーリング方法 |
|
PolarDB Capacity Unit(PCU) | サーバーレス 機能は、秒単位の課金とリソースの弾力性の測定単位として PCU を使用します。1 PCU は約 1 CPU コアと 2 GB のメモリに相当します。ノードの PCU は、ワークロードに基づいて指定された範囲内で動的に調整されます。スケーリングの最小粒度は 0.5 PCU です。 |
アーキテクチャ
サーバーレス クラスタ | 定義済み仕様のサーバーレス クラスタ |
説明
|
説明
|
スケーリング
スケールアップとスケールアウトのトリガー条件
スケールアップ
PolarDB は、プライマリ ノードと読み取り専用ノードの CPU 使用率、メモリ使用量、およびその他のカーネル メトリックを監視します。監視サイクル中に、次のイベントのいずれかが発生すると、ノードの サーバーレス リソースのスケールアップがトリガーされます。
単一ノードの CPU 使用率がデフォルトのスケールアップしきい値 80% を超えている。
単一ノードのメモリ使用量が 90% を超えている。
読み取り専用ノードの仕様がプライマリ ノードの仕様の半分未満である。たとえば、読み取り専用ノードの仕様が 4 PCU で、プライマリ ノードの仕様が 10 PCU の場合、読み取り専用ノードの仕様は少なくとも 5 PCU にスケールアップされます。
スケールアウト
クラスタの読み取り専用ノードが最大仕様にスケールアップされ、スケールアップしきい値にまだ達している場合(たとえば、CPU 使用率がデフォルトのしきい値 80% または指定されたしきい値を超えている場合)、読み取り専用ノードのスケールアウトがトリガーされます。
スケールダウンのトリガー条件
単一ノードの CPU 使用率がデフォルトのスケールダウンしきい値 50% またはカスタムしきい値を下回り、メモリ使用量が 80% 未満の場合、ノードのスケールダウンがトリガーされます。
スケーリング範囲は、指定した読み取り専用ノードの最大数と最小数、およびノードあたりの最大 PCU 数と最小 PCU 数によって決まります。詳細については、「サーバーレス クラスタ リソースのスケーリング ポリシーを設定する」または「サーバーレス リソースのスケーリング ポリシーを設定する」をご参照ください。
スケーリングをトリガーするメトリックは、クラスタ パラメーター構成と サーバーレス 構成によって異なります。CPU スケーリングのしきい値を指定できますが、他のメトリックのしきい値を変更することはできません。
サーバーレス クラスタのワークロードが急激に増加すると、クラスタのノードは、一度に 1 ステップずつではなく、段階的にスケーリングされて、想定される仕様に近づきます。ノード スケーリングの最小ステップ サイズは 0.5 PCU です。現在のワークロードに迅速に適応するために、次のスケーリング ステップ サイズは、ノードあたりの現在の PCU 数に基づいて増加します。
PolarDB コンソールのパフォーマンス監視でアラート ルールを構成して、クラスタ ノードのスケールダウンがトリガーされたときに通知を受け取ることができます。詳細については、「アラート ルールを作成する」をご参照ください。
メリット
サーバーレス 機能は、ワークロードに基づいてクラスタ リソースを数秒で動的にスケーリングできます。サーバーレス機能には、次のメリットがあります。
高可用性
マルチノード アーキテクチャにより、サーバーレス クラスタ の高可用性が確保されます。サーバーレス クラスタ は、一般的なクラスタ と同じサービス レベル契約(SLA)を提供して、安定性を確保します。
高スケーラビリティ
幅広いスケーリング範囲
単一のクラスタは、ビジネスを中断することなく、0 ~ 1,000 CPU コアの間でスケーリングできます。
数秒でのスケーラビリティ
ワークロードの検出は 5 秒で完了し、ワークロードが増加すると、クラスタ リソースは 1 秒以内にスケールアップされます。ワークロードが減少すると、クラスタ リソースは階層的に自動的にスケールダウンされます。
ビジネスの中断なし
スケーリング プロセスはビジネスに影響を与えません。
強力なデータ整合性
グローバル整合性 (高性能モード)が提供されます。クラスターは強いデータ整合性をサポートしています。データは読み取り専用ノードに書き込まれた直後に読み取り可能でありながら、パフォーマンスは弱い整合性モードとほぼ同じです。
費用対効果
サーバーレス クラスタは、従量課金制で PCU 単位で課金されます。これにより、コストが最大 80% 削減されます。
ゼロ O&M
PolarDB サーバーレス チームは、システム アップグレード、システム デプロイメント、スケーリング、アラート処理などのすべての運用および保守作業を担当します。これらの操作はバックグラウンドで実行され、システムで実行されているサービスには影響しません。これにより、継続的なサービス提供が保証され、ビジネスの開発に集中できます。
シナリオ
サーバーレス クラスタ
ワークロードが劇的に変動するシナリオ
開発環境やテスト環境のデータベースなど、データベースへのアクセス頻度が少ないシナリオ
教育や学生実験など、断続的なスケジュールされたタスクが関係するシナリオ
IoT やエッジ コンピューティングなど、不整合で予測不可能なワークロードを処理するシナリオ
O&M コストを削減し、O&M 効率を向上させる必要があるシナリオ
定義済み仕様のサーバーレス クラスタ
ワークロードが劇的に変動するシナリオ
IoT やエッジ コンピューティングなど、不整合で予測不可能なワークロードを処理するシナリオ
O&M コストを削減し、O&M 効率を向上させる必要があるシナリオ
既存の PolarDB クラスタに基づいて変動要件を満たす必要があるシナリオ。
前提条件
サーバーレス クラスタ
PolarDB for MySQL 5.6 クラスタでは、サーバーレス機能は使用できません。
CPU アーキテクチャが YiTian ARM のクラスタでは、サーバーレス機能は使用できません。
定義済み仕様のクラスタのサーバーレス
定義済み仕様の既存のクラスタでサーバーレス機能を有効にするには、クラスタが次のバージョン要件を満たしていることを確認してください。
データベース エンジン バージョン:
リビジョン バージョンが 5.7.1.0.29 以降の PolarDB for MySQL 5.7。
リビジョン バージョンが 8.0.1.1.30.1 以降の PolarDB for MySQL 8.0.1。
リビジョン バージョンが 8.0.2.2.19 以降の PolarDB for MySQL 8.0.2。
PolarProxy バージョン:2.4.30 以降。
CPU アーキテクチャ:X86。CPU アーキテクチャが YiTian ARM のクラスタでは、サーバーレス機能は使用できません。
制限
サーバーレス クラスタ
次の機能はサポートされていません。
グローバル データベース ネットワーク(GDN)はサポートされていますが、次の制限があります。
GDN 内のすべてのサーバーレス クラスタで自動起動と停止を有効にすることはできません。
クラスタが次の要件を満たしている場合、GDN 内の各サーバーレス クラスタには少なくとも 1 つの読み取り専用ノードが必要です。
リビジョン バージョン 8.0.1.1.42 以降の PolarDB for MySQL 8.0.1。
リビジョン バージョン 8.0.2.2.23 以降の PolarDB for MySQL 8.0.2。
次の操作がサポートされています。読み取り専用ノードを追加または削除する、PolarDB クラスタを手動でアップグレードまたはダウングレードする、一時的なクラスタ アップグレードを実行する、サーバーレスをサポートしていないクラスタの自動スケーリングを実行する。
インメモリ列インデックス(IMCI)機能は、少なくとも 1 つの読み取り専用ノードを含むサーバーレス クラスタでサポートされています。読み取り専用の列ストア ノードをサーバーレス クラスタに追加するには、サーバーレス クラスタの最小読み取り専用ノード数パラメーターを 1 に設定する必要があります。
定義済み仕様のサーバーレス クラスタ
PolarProxy が構成されていない単一ノード クラスターでは、サーバーレス機能を有効にすることはできません。このようなクラスターでサーバーレス機能を有効にするには、クラスターに読み取り専用ノードを追加します。詳細については、「読み取り専用ノードを追加する」をご参照ください。バージョン要件を満たす新しい単一ノード クラスターでは、サーバーレス機能を有効にすることができます。
次の機能はサポートされていません。ストレージ容量の手動スケールアップ/スケールダウン (エンタープライズ版 向け)
X-Engine は、次のバージョンのクラスタでサポートされています。
PolarDB for MySQL 8.0.1 (リビジョンバージョン 8.0.1.1.41 以降)。
PolarDB for MySQL 8.0.2 (リビジョンバージョン 8.0.2.2.23 以降)。
Global Database Network (GDN) はサポートされていますが、以下の制限があります:
GDN 内のすべてのサーバーレス クラスターで自動起動と停止を有効にすることはできません。
GDN 内の各サーバーレス クラスターは、以下の要件を満たしている場合、少なくとも 1 つの読み取り専用ノードを持っている必要があります。
PolarDB for MySQL 8.0.1 リビジョン バージョン 8.0.1.1.42 以降。
PolarDB for MySQL 8.0.2 リビジョン バージョン 8.0.2.2.23 以降。
サーバーレスをサポートしていないクラスタの自動スケーリング。定義済み仕様のクラスタで サーバーレス 機能が有効になっている場合、この機能を有効にすることはできません。同様に、定義済み仕様のクラスタでこの機能を有効にした後、サーバーレス 機能を有効にすることはできません。
詳細については、「定義済み仕様の一般的なクラスタでサーバーレス機能を有効にする」をご参照ください。