ノード仕様をアップグレードまたはダウングレードするか、コンピューティングノードを追加または削除することで、AnalyticDB for PostgreSQL インスタンスをスケーリングします。
スケーリングのサポートは、AnalyticDB for PostgreSQL の [インスタンスリソースタイプ] によって異なります。
|
操作 |
サーバーレスモード |
エラスティックストレージモード |
|
ノード仕様のアップグレード |
サポート対象外 |
サポート |
|
ノード仕様のダウングレード |
サポート対象外 |
サポート |
|
コンピューティングノードの追加 |
サポート |
サポート |
|
コンピューティングノードの削除 |
サポート |
サポート |
注意事項
-
エラスティックストレージモードのインスタンスでコンピューティングノードを削除するには、マイナーエンジンバージョンが V6.3.10.5 (V6.0) 以降または V7.0.1.2 (V7.0) 以降である必要があります。詳細については、「インスタンスのマイナーエンジンバージョンの表示」をご参照ください。
-
エラスティックストレージモードのインスタンスでコンピューティングノードを追加する場合、マイナーエンジンバージョンが V6.6.2.0 (V6.0) または V7.0.5.0 (V7.0) 以降であれば、読み取りおよび書き込み操作がサポートされます。これより前のバージョンでは、読み取り操作のみがサポートされます。コンピューティングノードを削除する際、データ再分散中のテーブルは読み取り専用になります。
-
エラスティックストレージモードのインスタンスからコンピューティングノードを削除する場合は、残りのストレージ容量がデータ量に対して十分であることを確認してください。
-
サーバーレスモードのインスタンスでコンピューティングノードをスケーリングすると、実行中の SQL クエリが中断されます。中断されたクエリは再開できません。
スケーリング方法の選択
-
ノード仕様のアップグレードまたはダウングレードは、ノード数を変更せずに既存のノードの CPU、メモリ、およびディスクリソースを変更します。データ移行は不要です。
-
コンピューティングノードの追加または削除は、ノード数を変更することで合計リソースを調整します。これにはデータ再分散が必要であり、その時間はデータ量に応じて変動します。詳細については、「スケーリング時間」をご参照ください。
以下の原則に従ってスケーリング方法を選択します:
-
ノードのモニタリングデータを確認します。営業時間中に CPU と I/O の使用率が高い状態が続く場合は、コンピューティングノードを追加してください。CPU またはメモリが不足しているが I/O が低い場合は、代わりにノード仕様をアップグレードしてください。
-
ディスク使用率が高いがコンピューティングリソースが十分な場合は、仕様をアップグレードする際にノードのストレージ容量のみを増やしてください。これにより、ノード追加のコストを回避できます。
-
仕様をこれ以上ダウングレードできない場合は、コンピューティングノードを削除してください。
スケーリング時間
ノード仕様のアップグレードまたはダウングレードには約 10 分かかります。コンピューティングノードの追加または削除にかかる時間は、インスタンスのモードによって異なります:
-
エラスティックストレージモード
スケーリングには、テーブル、パーティション化されたテーブル、インデックス、圧縮設定、データ量、およびノード仕様の数に応じて、30 分から数十時間かかる場合があります。推定式は次のとおりです:
スケーリング時間 (分) = 合計データ量 (GB) / 1.25 / スケーリング後のノード数 + 予約時間。
予約時間は、リソースプロビジョニングのための固定時間で 30 分です。例:データサイズが 1 TB のインスタンスを 16 ノードにスケーリングする場合、約 1024 / 1.25 / 16 + 30 = 81 分かかります。
説明コンピューティングノードを追加する場合:
-
マイナーエンジンバージョンが V6.6.2.0 または V7.0.5.0 より前のインスタンスの場合、データ再分散中のテーブルが一時的に利用できなくなることがあります。その場合は、後で再試行してください。
-
マイナーエンジンバージョンが V6.6.2.0 以降、または V7.0.5.0 以降のインスタンスの場合、コンピューティングノードの追加時に読み取りおよび書き込み操作は中断されません。
-
-
サーバーレスモード
サーバーレスモードは、数分以内のオンラインでのエラスティックスケーリングをサポートします。データ移行は不要なため、スケーリング速度はデータサイズではなくリソースプロビジョニングに依存します。ラボテストの結果は以下のとおりです:
-
最大 16 ノードのインスタンスのスケーリングは、60 秒以内で完了します。
-
16 ノードを超えるインスタンスのスケーリングは、5 分以内で完了します。
-
操作手順
コンピューティングノードの追加
オンラインスケーリングでは、すべてのテーブルが読み取りおよび書き込み操作に利用可能な状態に保たれます。マイナーエンジンバージョンが V6.6.2.0 (V6.0) 以降および V7.0.5.0 (V7.0) 以降のエラスティックストレージモードのインスタンスは、コンピューティングノードの追加時のオンラインスケーリングをサポートします。主なポイントは次のとおりです:
-
スケーリング中、テーブルは 1 つずつ再分散されます。再分散されていないテーブルは影響を受けません。データ再分散中のテーブルでは、クエリと INSERT、COPY、DELETE、UPDATE がサポートされます。DDL と VACUUM はサポートされていません。データ再分散中のテーブルで DDL を実行すると、次のエラーが返されます:
TRUNCATE t1;
ERROR: Unsupport 'TRUNCATE TABLE' command during online expansion on 't1'
書き込みと更新が頻繁に行われると、スケーリングが長引く可能性があります。頻繁に書き込まれるテーブルには書き込みロックがかけられ、その操作に一時的に影響を与えることがあります。スケーリングの進捗状況はコンソールで監視してください。
以前のバージョンでは、コンピューティングノードの追加時にオンラインスケーリングはサポートされていません。読み取りおよび書き込み操作が中断される可能性があります。この操作はオフピーク時に実行してください。
- AnalyticDB for PostgreSQL コンソールにログインします。
- コンソールの左上で、リージョンを選択します。
-
対象のインスタンスを見つけます。操作 列で、 を選択します。
-
情報 ダイアログボックスで、この操作の影響を認識しており、構成変更操作を継続することに同意します。 を選択し、OK をクリックします。
説明この手順は、サーバーレスモードのインスタンスにのみ必要です。
-
設定の変更 ページで、[Number of nodes (segment)] に適切な値を選択し、サービス利用規約に同意して、今すぐ購入 をクリックします。
警告-
エラスティックストレージモードのインスタンス:旧バージョンでは、データ再分散中のテーブルは読み取り専用になります。一方、新しいバージョンではオンラインスケーリングがサポートされており、読み取りと書き込みの両方の操作が可能です。データ再分散の時間はテーブルサイズによって異なるため、この点を考慮して計画してください。
-
サーバーレスモードのインスタンス:スケーリングタスクが送信されると、実行中の SQL クエリは中断され、再開できません。
-
-
インスタンスリスト ページに戻ります。対象インスタンスのステータスが 実行中 に変わるまで待ちます。
-
次の SQL 文を実行して、ホットテーブルのデータをプレウォーミングし、データアクセスを高速化します。
SELECT count(*) FROM <hot_table>;説明-
データプレウォーミングは、サーバーレスモードのインスタンスにのみ必要です。
-
スケーリングには、リソースの初期化、メタデータの同期、データ分散を変更するためのロックの取得、ロックの解放、ローカルキャッシュの非同期リカバリの 5 つのステップが含まれます。スケーリング後、キャッシュヒット率が一時的に低下する可能性があります。データプレウォーミングは、その後のアクセスを高速化します。
-
コンピューティングノードの削除
エラスティックストレージモードのインスタンスからコンピューティングノードを削除する場合は、残りの容量がデータ量に対して十分であることを確認してください。スケールイン期間中は書き込み操作を減らすことを推奨します。
- AnalyticDB for PostgreSQL コンソールにログインします。
- コンソールの左上で、リージョンを選択します。
-
対象のインスタンスを見つけます。操作 列で、 を選択します。
-
情報 ダイアログボックスで、この操作の影響を認識しており、構成変更操作を継続することに同意します。 を選択し、OK をクリックします。
-
設定の変更 ページで、[Number of nodes (segment)] に適切な値を選択し、サービス利用規約に同意して、今すぐ購入 をクリックします。
警告-
エラスティックストレージモードのインスタンス:データ再分散中のテーブルは読み取り専用になります。データ再分散の時間はテーブルサイズによって異なるため、この点を考慮して計画してください。
-
サーバーレスモードのインスタンス:スケーリングタスクが送信されると、実行中の SQL クエリは中断され、再開できません。
-
-
インスタンスリスト ページに戻ります。対象インスタンスのステータスが 実行中 に変わるまで待ちます。
-
次の SQL 文を実行して、ホットテーブルのデータをプレウォーミングし、データアクセスを高速化します。
SELECT count(*) FROM <hot_table>;説明-
データプレウォーミングは、サーバーレスモードのインスタンスにのみ必要です。
-
スケーリングには、リソースの初期化、メタデータの同期、データ分散を変更するためのロックの取得、ロックの解放、ローカルキャッシュの非同期リカバリの 5 つのステップが含まれます。スケーリング後、キャッシュヒット率が一時的に低下する可能性があります。データプレウォーミングは、その後のアクセスを高速化します。
-
ノード仕様のアップグレード
- AnalyticDB for PostgreSQL コンソールにログインします。
- コンソールの左上で、リージョンを選択します。
-
対象のインスタンスを見つけます。操作 列で、 を選択します。
-
設定の変更 ページで、次の構成を変更します。
パラメーター
説明
[インスタンスリソースタイプ]
現在のインスタンスリソースタイプ。変更はできません。
[ノード仕様 (セグメント)]
アップグレード先のノード仕様を選択します。
[ノードストレージ容量 (セグメント)]
コンピューティングノードあたりのターゲットストレージ容量を選択します。
警告-
ノード仕様のスケーリング中、データベースは読み取り専用になります。この点を考慮して計画してください。
-
ノードのストレージ容量のみを変更する場合、読み取りおよび書き込み操作は中断されません。
-
-
サービス利用規約に同意し、今すぐ購入 をクリックします。
-
インスタンスリスト ページに戻ります。対象インスタンスのステータスが 実行中 に変わるまで待ちます。
ノード仕様のダウングレード
- AnalyticDB for PostgreSQL コンソールにログインします。
- コンソールの左上で、リージョンを選択します。
-
対象のインスタンスを見つけます。操作 列で、 を選択します。
-
設定の変更 ページで、次の構成を変更します。
パラメーター
説明
[インスタンスリソースタイプ]
現在のインスタンスリソースタイプ。変更はできません。
[ノード仕様 (セグメント)]
ダウングレード先のノード仕様を選択します。
[ノードストレージ容量 (セグメント)]
ノードストレージ容量の削減はサポートされていません。
説明エラスティックストレージモードの Basic Edition インスタンスでは利用できません。
警告-
ノード仕様のスケーリング中、データベースは読み取り専用になります。この点を考慮して計画してください。
ノードのストレージ容量のみを変更する場合、読み取りおよび書き込み操作は継続されます。
-
-
サービス利用規約に同意し、今すぐ購入 をクリックします。
-
インスタンスリスト ページに戻ります。対象インスタンスのステータスが 実行中 に変わるまで待ちます。