ApsaraDB RDS for MySQL のサーバーレスインスタンスには、固定仕様がありません。コンピューティングリソースは、ワークロードに合わせて指定した範囲内でオートスケールし、ストレージリソースはデータ量の増加に応じて自動的に拡張されます。これにより、リソースの無駄をなくし、データベースの運用保守コストを削減します。これらのインスタンスは、自動起動/停止にも対応しています。停止中のインスタンスでは、コンピューティング料金は発生せず、ストレージコストのみが課金されます。
概要
サーバーレスの RDS for MySQL インスタンスには固定仕様がありません。通常のインスタンスと比べた主な利点は、オートスケーリングと自動起動/停止です。インスタンスのパフォーマンスはワークロードに応じて自動的にスケールし、非アクティブ時は一時停止します。これにより、データベースはピーク時の需要に対応し、リソース使用率を最大化して、コストを削減できます。
オートスケーリング
サーバーレスインスタンスのオートスケーリングとは、コンピューティングリソースがワークロードに応じて自動的にスケールすること、およびストレージリソースがデータの増加に伴い自動的に拡張されることを指します:
コンピューティングリソース
サーバーレスインスタンスでは、コンピューティングリソースを RCU (RDS Capacity Unit) で測定します。1 RCU は、約 1 vCPU と 2 GB のメモリに相当します。オートスケーリングの上限値と下限値を設定できます。インスタンスのパフォーマンスは、指定した RCU の範囲内でワークロードに合わせて自動的に調整されます。オートスケーリングの利点は、変動の大きいワークロードで特に顕著です:
-
通常のインスタンス (固定仕様): オフピーク時の遊休リソースと、ピーク時のリソース不足の間でトレードオフが発生します。
-
サーバーレスインスタンス (固定仕様なし): インスタンスのパフォーマンスはワークロードに動的に追従します。ピーク時は安定性を確保するためにスケールアップし、オフピーク時はコストを抑えるためにスケールダウンすることで、全体のリソース使用率を最大化します。

ストレージリソース
-
自動拡張: ストレージ容量は、必要に応じて自動的に拡張されます。
-
手動縮小: インスタンスの安定性とデータセキュリティを確保するため、ストレージの自動縮小はサポートされていません。ただし、ストレージ容量は手動で縮小できます。
自動起動/停止
断続的に使用するデータベースでは、コストを削減するために、自動起動/停止機能 (デフォルトでは無効) を有効化できます。有効化すると、接続がない場合はインスタンスが自動的に一時停止し、接続リクエストを受信すると起動します。自動起動/停止のルールは次のとおりです:
-
自動一時停止: インスタンスは、非アクティブ状態 (接続なし) が 10 分間続くと自動的に一時停止します。
-
自動起動: インスタンスは、接続リクエストを受信すると自動的に起動します。起動プロセスは、インスタンス内のデータベースおよびテーブルの状態に応じて、約 6~40 秒かかります。起動中はインスタンスを利用できません。
-
インスタンスの一時停止中は、ストレージリソースに対してのみ課金され、コンピューティングリソースには課金されません。
ユースケース
-
断続的またはスパイク状の使用パターン。
-
テスト環境など、使用頻度の低いデータベース。
-
オンラインコースや学生ラボなどの、断続的なスケジュールされたタスク。
-
IoT やエッジコンピューティングなど、予測不可能なワークロード。
制限事項
-
リージョンの制限: サーバーレスインスタンスは、以下のリージョンでのみサポートされています。
中国 (杭州)、中国 (上海)、中国 (青島)、中国 (北京)、中国 (張家口)、中国 (フフホト)、中国 (ウランチャブ)、中国 (深セン)、中国 (河源)、中国 (広州)、中国 (成都)、香港 (中国)、シンガポール、米国 (バージニア)、米国 (シリコンバレー)、ドイツ (フランクフルト)、英国 (ロンドン)、タイ (バンコク)、韓国 (ソウル)、フィリピン (マニラ)、日本 (東京)、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)
-
エディションの制限: サーバーレスインスタンスは、Basic Edition と High-availability Edition のみをサポートします。インスタンスを Basic Edition から High-availability Edition にアップグレードすると、フェールオーバーがトリガーされ、接続が短時間中断されます。アプリケーションに自動再接続メカニズムが実装されていることを確認してください。
-
ストレージタイプの制限: サーバーレスインスタンスは、PL1 ESSD のみをサポートします。
-
RCU の制限: RCU 容量は、0.5 RCU から 32 RCU まで、0.5 RCU 単位で設定できます。
-
ストレージ容量の制限: 最小ストレージ容量は 20 GB です。最大ストレージ容量は 32 TB です。
-
ストレージのスケールダウンの制限: ストレージ容量は手動でのみスケールダウンできます。スケールダウン後の最小容量は、
min{現在のデータ量 * 1.3, 現在のデータ量 + 400 GB}です。新しい容量は、インスタンスタイプの最小ストレージ容量を下回ることはできません。 -
インスタンスの起動/停止の制限: 自動起動/停止機能を有効にすると、インスタンスは自動的に一時停止および起動されます。また、インスタンスを手動で起動することもできます。手動での一時停止はできません。
課金
サーバーレスインスタンスは時間単位で課金されます。課金の詳細は、費用とコストページで確認できます。
費用の内訳
-
合計コストの計算式:
Total cost for a Serverless instance = Cost per node × Number of nodes -
ノード数:Basic Edition インスタンスは 1 ノードです。High-availability Edition インスタンスは 2 ノードです。
-
ノードあたりのコスト:コンピューティングリソースとストレージリソースのコストが含まれます:
コンピューティングリソースのコスト
-
課金計算式:
Hourly computing resource cost = Computing resource unit price × Hourly RCU usage -
1 時間あたりの RCU 使用量:1 時間における 1 秒あたりの RCU 使用量の平均値です。
-
コンピューティングリソースの単価:料金はリージョンによって異なります。たとえば Singapore リージョンでは、単価は
USD 0.07455/RCU/hourです。その他のリージョンの料金については、「ApsaraDB RDS の購入ページ」をご参照ください。
ストレージリソースのコスト
-
課金計算式:
Hourly storage resource cost = Storage resource unit price × Storage capacity -
ストレージ容量:インスタンスのストレージ容量は、インスタンス詳細ページの 基本情報 > [Instance Resources] > 保管スペース で確認できます。
-
ストレージリソースの単価:料金はリージョンによって異なります。たとえば Singapore リージョンでは、単価は
USD 0.0004/GB/hourです。その他のリージョンの料金については、「ApsaraDB RDS の購入ページ」をご参照ください。
-
インスタンスの状態が課金に与える影響
自動起動/停止機能は、インスタンスの状態を変更することで課金に影響します。この機能を有効にすると、インスタンスは次の状態を循環し、状態ごとに課金の扱いが異なります:
-
インスタンスは通常状態で起動します:[実行中]。
-
10 分間接続がない場合、インスタンスは自動的に一時停止を開始します:[一時停止中]。
-
インスタンスは完全に一時停止します:[一時停止しました]。
-
データベースリクエストを受信すると、インスタンスは自動的に起動を開始します:[開始]。
-
インスタンスは[実行中]状態に戻ります。
|
インスタンスの状態 |
コンピューティングリソース (RCU) |
ストレージリソース |
|
[一時停止中] |
課金対象 |
課金対象 |
|
[一時停止しました] |
課金対象外 |
課金対象 |
|
[開始] |
課金対象外 |
課金対象 |
|
[実行中] |
課金対象 |
課金対象 |
課金の例
背景:Singaporeリージョンで Basic Edition (シングルノード) のサーバーレスインスタンスを購入します。コンピューティングリソースのスケーリング範囲は 0.5~8 RCU に設定し、ストレージ容量は 20 GB に設定します。24 時間のうち、インスタンスはピーク時の 1 時間に 8 RCU を使用し、残りの 23 時間は 1 RCU を使用します。
単価:次の表に、Singaporeリージョンにおけるコンピューティングリソースとストレージリソースの単価を示します。
|
課金項目 |
リージョン |
標準単価 |
|
RCU |
Singapore |
USD 0.07455/RCU/hour |
|
Storage |
USD 0.0004/GB/hour |
コンピューティングリソースとストレージリソースのコスト (1日):
-
RCU のコスト: (0.07455 × 8 × 1) + (0.07455 × 1 × 23) = USD 2.31105
-
ストレージのコスト: 0.0004 × 20 × 24 = USD 0.192
合計コスト: USD 2.31105 + USD 0.192 = USD 2.50305。
サーバーレスインスタンスの作成
既存の従量課金インスタンスをサーバーレスインスタンスに変換できます。サブスクリプションインスタンスをお持ちの場合は、まずそれを従量課金インスタンスに変換する必要があります。または、次の手順に従って新しいサーバーレスインスタンスを作成します。
-
RDS インスタンス購入ページに移動し、課金方法 を サーバーレスに設定します。
-
基本インスタンス情報の設定
-
地理 では、インスタンスの目的のリージョンを選択します。 リージョンは作成後に変更できません。
-
ECS インスタンスから接続する場合:ECS インスタンスと同じリージョンを選択し、内部ネットワークで接続できるようにします。
-
他のデバイスから接続する場合:デバイスに最も近いリージョンを選択すると、ネットワーク レイテンシーを削減できます。その後、パブリックネットワーク経由で接続できます。
-
-
エンジン には MySQL を選択します。メジャーバージョン 8.0 と 5.7 のみがサポートされています。
-
-
インスタンスアーキテクチャとストレージの設定
-
エディションには、次のいずれかを選択します。
-
[Basic Edition]:コスト効率の高いシングルノード デプロイメントであり、開発、テスト、または可用性要件が低いシナリオに適しています。
-
[High-availability Edition]:自動フェイルオーバーを備えたプライマリ/セカンダリのデュアルノード デプロイメントで、本番環境に適しています。
-
-
ストレージタイプ には、[PL1 ESSD] を選択します。
-
-
自動スケーリングの設定
-
リソースのスケーリング範囲 (RCU) には、自動スケーリングの範囲を設定します。
-
柔軟な戦略 には、ポリシーを選択します。 サーバーレスインスタンスの RCU スケーリングは、通常、サービスに影響を与えることなく即座に有効になります。 ただし、万が一システムがインスタンスをスムーズにスケーリングできない場合は、以下のいずれかのポリシーを選択できます。
-
[強制実行]:RCU スケーリングを強制して、データベースのパフォーマンスを確保します。これにより、インスタンスの切り替えが発生する場合があります。クライアントアプリケーションが自動的に再接続できることを確認してください。
-
[強制実行しない]:RCU スケーリング操作を延期し、既存の接続とリクエストを維持します。
-
-
自動スタートストップ を有効にすると、インスタンスがアイドル状態のときに自動的に一時停止され、リクエストに応じて再起動されるようになります。インスタンスが一時停止している間は、ストレージ料金のみが請求されます。
-
-
ネットワークとゾーンの設定
-
[VPC] には、内部ネットワークで接続できるように、ECS インスタンスと同じ VPC を選択します。
-
ホワイトリストに追加 するかどうかを指定します。この機能を有効にすると、同じ VPC 内の ECS インスタンスがこのインスタンスに直接アクセスできるようになります。
-
プライマリゾーンとネットワーク で、プライマリゾーンを選択します。 同じリージョン内のゾーン間に大きな違いはありません。 デプロイ方法 を選択した場合は、マルチゾーン配置またはシングルゾーン配置のいずれかである デプロイ方法 に基づいて、セカンダリゾーンとネットワークも設定する必要があります。
-
-
設定するストレージ容量: 最小増分値は 5 GB です。
-
(任意) その他の設定。特定の要件がない限り、デフォルト値のままにしてください。
-
設定と注文の確認
同じ設定のサーバーレスインスタンスを複数作成するには、ページの右上隅で数量を指定します。一度に最大 20 個のインスタンスを購入できます。設定が正しいことを確認したら、注文 をクリックします。
-
インスタンスの表示
支払い完了後、[コンソールに戻る] をクリックするか、インスタンスページに移動できます。ページの上部でリージョンを選択すると、購入したインスタンスが表示されます。インスタンスの作成には約 10 分かかります。インスタンスのステータスが 実行中 に変わると、インスタンスは正常に作成されています。
説明支払いが完了してからコンソールにインスタンスが表示されるまでに、若干の遅延が生じることがあります。支払い後にインスタンスが表示されない場合は、しばらく待ってからコンソールを更新してください。
RCU の使用量とストレージ容量の監視
自動スケーリング設定の調整が必要かどうかを判断するには、過去 30 日間の RCU の使用量とストレージ容量の変更を確認します。
-
インスタンスページに移動し、ページの上部でリージョンを選択して、ターゲットインスタンスの ID をクリックします。
-
ナビゲーションウィンドウで、モニターとアラーム をクリックします。
-
標準モニタリング タブで、右上隅にある 旧バージョンに戻る をクリックします。
-
リソースモニター タブで、データベース容量 (RCU) と ディスクスペース の履歴を確認します。
オートスケーリング構成の調整
RCU スケーリング範囲とポリシーの調整
-
[インスタンス] ページに移動し、ページ上部でインスタンスのリージョンを選択してから、対象のインスタンス ID をクリックします。
-
設定情報 セクションで、弾性設定の調整 をクリックします。
-
表示されるパネルで、オートスケーリングを構成します。
-
RCU スケーリング範囲: ワークロードの変化に応じて、需要を満たすように最小 RCU 値と最大 RCU 値を調整できます。
-
スケーリングポリシー: サーバーレスインスタンスの RCU オートスケーリングは、通常、サービスに影響を与えることなく即座に有効になります。ただし、システムがスムーズにスケールできないまれなケースでは、以下のいずれかのポリシーを選択できます。
-
強制実行: データベースのパフォーマンスを確保するために RCU オートスケーリングを強制します。これにより、インスタンススイッチオーバーが発生する場合があります。クライアントアプリケーションに再接続メカニズムが実装されていることを確認してください。
-
強制実行しない: 既存の接続とリクエストを維持するため、RCU オートスケーリング操作を延期します。
-
-
-
OK をクリックします。
ストレージ容量の手動調整
サーバーレスインスタンスは、必要に応じてストレージ容量を自動的に拡張します。ただし、インスタンスの安定性とデータセキュリティを確保するため、ストレージ容量は自動的に縮小されません。ストレージ容量を手動で調整するには、以下の手順に従ってください。
-
[インスタンス] ページに移動し、ページ上部でインスタンスのリージョンを選択してから、対象のインスタンス ID をクリックします。
-
インスタンスの 基本情報 ページにある インスタンスリソース セクションで、保管スペース の横にある 変更 をクリックします。
-
表示されたパネルで、ストレージ容量を増減させ、OK をクリックします。表示されたダイアログボックスで、OK をクリックします。
データレプリケーションが必要なため、ストレージ容量の縮小は拡張よりも時間がかかります。拡張または縮小中、インスタンスの状態は設定変更中になります。操作が完了すると、インスタンスの状態は実行中に変わります。
インスタンスの起動と停止
自動起動/停止
自動起動/停止機能を有効にすると、インスタンスは 10 分間非アクティブな状態が続くと一時停止し、データベースリクエストを受信すると自動的に起動します。インスタンスが一時停止している間は、コンピューティングリソースには課金されず、ストレージリソースにのみ課金されます。
-
RDS インスタンスリストに移動し、ページの上部でリージョンを選択して、対象インスタンスの ID をクリックします。
-
設定情報 セクションで、エラスティック設定の調整 をクリックします。
-
上級設定をクリックし、自動起動・停止 ドロップダウンリストから 有効にする または 閉じる を選択して、ページの下部にある[OK] をクリックします。
自動起動には、インスタンス内のデータベースとテーブルの状態に応じて、約 6〜40 秒かかります。起動中、インスタンスは利用できません。
手動起動
実行中のサーバーレスインスタンスは、自動起動/停止機能によってのみ一時停止でき、手動で一時停止することはできません。ただし、一時停止中のインスタンスは手動で起動できます。
-
[インスタンス] ページ:
RDS インスタンスリストに移動し、ページ上部でリージョンを選択します。 対象のインスタンスの操作 列で、さらに表示する をクリックし、ドロップダウンリストからインスタンスの起動 を選択します。
-
[インスタンス詳細] ページ:
RDS インスタンスリストに移動し、ページ上部でリージョンを選択し、対象インスタンスの ID をクリックします。基本情報 ページで、ステータス セクションにある インスタンスの起動 をクリックします。
起動/停止履歴
RDS コンソールに移動し、左側のナビゲーションペインでタスクリスト をクリックすると、インスタンスの起動および停止レコード (自動・手動) を表示できます。
Basic Edition から High-availability Edition へのアップグレード
Basic Edition のサーバーレスインスタンスを High-availability Edition にアップグレードすると、災害復旧が強化され、追加機能も利用できます。
-
インスタンスページに移動し、ページ上部でリージョンを選択してから、ターゲットインスタンス ID をクリックします。
-
設定情報 セクションで、弾性設定の調整 をクリックします。
-
表示されるパネルで、エディションに高可用性エディションを選択し、OK をクリックします。
-
表示されたダイアログボックスでアップグレードの詳細を確認し、OK をクリックします。インスタンスのステータスは、アップグレード中は 設定変更中 となり、完了すると 実行中 に変わります。
コンソールでのアップグレードに失敗した場合は、ModifyDBInstanceSpec API を呼び出して仕様を変更できます。リクエストでは、Category パラメーターを serverless_ha に設定します。
RCU のスケジュール調整
RCU のオートスケーリングは、通常、数秒以内に完了します。ただし、クロスホストスケーリングにより、まれに 3~5分かかる場合があります。特定の期間中に厳格な安定性要件がある場合は、サーバーレスインスタンスの RCU 増加をスケジュールできます。詳細な手順については、「定期タスクを設定してサーバーレス RDS インスタンスの RCU 数を調整する」をご参照ください。
よくある質問
-
Q1: サーバーレスインスタンスが自動的に一時停止しなかったのはなぜですか?現在の接続を確認するにはどうすればよいですか?
-
自動起動/停止機能はデフォルトで無効になっており、手動で有効にする必要があります。
-
機能が有効になっている場合は、インスタンスの接続数を確認してください。
-
接続数を表示するには、インスタンスの詳細ページに移動し、左側メニューで モニターとアラーム をクリックして、[セッション] メトリックを確認してください。
-
特定の接続を識別するには、
SHOW PROCESSLISTコマンドを実行してください。
-
-
インスタンスに、すべての IP アドレス (例:0.0.0.0/0) に開放されたホワイトリストを持つパブリックエンドポイントがある場合、継続的な外部スキャンを受信し、自動一時停止が妨げられる可能性があります。パブリックエンドポイントを解放するか、ホワイトリストを信頼できる IP アドレスに制限することを推奨します。
-
-
Q2: RCU スケーリングにはどのくらいの時間がかかりますか?また、何がトリガーになりますか?
-
期間: RCU スケーリングは通常、数秒で完了します。まれなケースでは、クロスホスト移行が必要な処理に 3〜5 分かかることがあります。High-availability Edition のインスタンスはセカンダリノードを持つため、この遅延が発生する可能性は低くなります。
-
トリガー条件:
-
スケールアップは、CPU 使用率またはメモリ使用率のいずれかがスケールアップのしきい値に達したときに発生します。
-
スケールダウンは、CPU 使用率とメモリ使用率の両方がスケールダウンのしきい値まで低下したときに発生します。
-
-
しきい値:
-
CPU 使用率のデフォルトのスケールアップしきい値は 60% で、デフォルトのスケールダウンしきい値は 40% です。これらの値は、可用性を確保するために調整される場合があります。
-
メモリ使用率のデフォルトのスケールアップしきい値は 90% で、デフォルトのスケールダウンしきい値は 80% です。これらの値は、可用性を確保するために調整される場合があります。
-
-
-
Q3: RCU スケーリング範囲はどのように選択すればよいですか?
次のいずれかの方法を使用できます:
-
負荷テストを実行して、最小および最大のワークロードに必要な RCU または CPU コアの数を決定してください。
-
アプリケーションで必要な CPU コアに基づいて範囲を推定してください。1 RCU は、約 1 vCPU と 2 GB のメモリに相当します。
-
-
Q4: アイドル状態のサーバーレスインスタンスの料金はどうなりますか?
-
自動起動/停止が有効な場合: インスタンスは 10 分間非アクティブ状態が続くと自動的に一時停止します。一時停止中は、コンピューティングコストは課金されず、ストレージコストのみが課金されます。
-
自動起動/停止が無効な場合: インスタンスは実行中のままであり、ストレージコストとコンピューティングコストの両方が発生します。通常、インスタンスがアイドル状態の場合、コンピューティングコストは設定した最小 RCU 設定に基づきます。
-
-
Q5: High-availability Edition のインスタンスは、単一のアベイラビリティーゾーンにデプロイされますか、それとも複数のアベイラビリティーゾーンにまたがってデプロイされますか?
High-availability Edition のインスタンスは、単一のアベイラビリティーゾーンにデプロイするか、複数のアベイラビリティーゾーンにまたがってデプロイするかを選択できます。