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

ApsaraDB RDS:フラグメントの自動回収

最終更新日:Aug 27, 2026

データベーステーブル内のデータを削除または更新すると、ディスク上のデータストレージが不連続になることがあります。この断片化はディスク領域を浪費し、パフォーマンスを低下させます。Database Autonomy Service (DAS) は、フラグメントの自動回収機能をサポートしています。インスタンスのメンテナンスウィンドウ中に、DAS はプライマリインスタンスで自動的に Optimize Table または Alter Table コマンドを実行して、テーブルスペースのフラグメントを回収し、ストレージを最適化します。

前提条件

  • インスタンスが RDS High-availability Edition、RDS Enterprise Edition、または RDS Cluster Edition であること。

  • インスタンスが 14 日以上前に作成されていること。

  • インスタンスに 4 つ以上の CPU コアがあること。

  • 物理テーブルが InnoDB ストレージエンジンを使用していること。

背景情報

テーブルスペースの断片化の一般的な原因:

  • 行が削除され、元の領域が再利用できなくなる。

  • 特に可変長フィールドで行を更新すると、再利用できない領域が残ることがある。

  • 行の挿入によってページ分割が発生し、ページフィルファクターが低下する。

最適化前のチェック項目

DAS は、断片化した表領域から領域を回収するために、プライマリインスタンス上で OPTIMIZE TABLE または ALTER TABLE コマンドを実行します。断片化したスペースの自動再利用 操作を開始する前に、DAS は以下のチェックを実施します。断片化したスペースの自動再利用 操作は、すべてのチェックに合格した後にのみ実行されます。

  • 以下のいずれかのチェックに失敗した場合、DAS はそのテーブルに対する 断片化したスペースの自動再利用 操作を直ちに停止します。

    • インスタンスの空き領域が、対象テーブルが占有する物理空間の少なくとも 3 倍あること。

      説明

      たとえば、対象テーブルが 30 GB の物理空間を占有している場合、インスタンスには少なくとも 90 GB の空き領域が必要です。

    • テーブルに FULLTEXT インデックスが存在しないこと。

  • 以下のいずれかのチェックに失敗した場合、DAS は 1 ~ 5 分待機して再試行します。現在のメンテナンスウィンドウ内でチェックが合格しない場合は、次のメンテナンスウィンドウで再試行します。断片化したスペースの自動再利用 操作は、すべてのチェックに合格した後にのみ開始されます。

    • インスタンスでバックアップタスクが実行されていないこと。

    • スキーマ変更操作が進行中でないこと。

    • インスタンスの CPU 使用率が特定のしきい値を下回っていること。DAS は 断片化したスペースの自動再利用 に必要な時間を推定し、前日および前週の同一時間帯の CPU 使用率が 70 % を下回っていたことを検証します。また、操作直前の CPU 使用率が 80 % を下回っていることも検証します。

      説明

      たとえば、90 GB の物理空間を占有するテーブルが 12 月 10 日 03:00 に回収スケジュールされており、操作に 30 分かかると予想される場合、DAS は以下を検証します。

      • 12 月 9 日 03:00 ~ 03:30 の CPU 使用率が 70 % を下回っていたこと。

      • 12 月 3 日 03:00 ~ 03:30 の CPU 使用率が 70 % を下回っていたこと。

      • 12月10日の03:00における CPU 使用率は 80% を下回っています。

    • 対象のテーブルで実行中のクエリには、3 秒以上実行されているものはありません。

    • 保留中のトランザクション(コミットされずに 15 秒以上ロックを保持しているトランザクション)が存在しないこと。

    • インスタンスのアクティブセッション数が 64 未満であること。

説明

チェックに合格しない場合、断片化したスペースの自動再利用 タスクは実行されません。手動で OPTIMIZE TABLE コマンドを実行して、断片化した表領域から領域を回収できます。詳細については、「OPTIMIZE TABLE コマンドを使用して MySQL インスタンスの表領域を解放する」をご参照ください。

DAS O&M サービスの有効化

[断片化したスペースの自動再利用] 機能を使用する前に、対象インスタンスの DAS の O&M (運用保守) サービスを有効にする必要があります。サービスがすでに有効になっている場合は、このセクションをスキップしてください。

  1. DAS コンソールにログインします。

  2. 左側メニューで、リソース管理 > > > インスタンス をクリックします。

  3. インスタンス ページで、対象のインスタンスを見つけ、操作とメンテナンスサービス 列の 開通する をクリックします。

  4. 表示されるパネルで、期間 を選択し、開通する をクリックして、インスタンスの DAS の O&M サービスを有効にします。

フラグメントの自動回収の設定

  1. RDSインスタンスにアクセスし、上部のリージョンを選択し、対象のRDSインスタンスのIDをクリックします。
  2. 左側メニューで、自律型サービス > 診断 > 自律型センター を選択します。自律型センター ページで、自律機能設定 をクリックします。

  3. 自律機能管理 > Autonomous Function Settings タブで、自律型機能のスイッチをオンにします。次に、最適化とスロットリング タブで、断片化したスペースの自動再利用 を選択します。

  4. 断片化したスペースの自動再利用 を有効にした後、次のパラメーターを設定し、OK をクリックします。

    重要

    データベースインスタンスの領域ステータスが指定されたしきい値に達すると、DAS はインスタンスの O&Mウィンドウ 中にフラグメントの自動回収を実行します。

    パラメーター

    説明

    テーブルスペース >

    フラグメントの自動回収をトリガーする単一の物理テーブルの最小サイズ。有効値:5 GB〜100 GB。デフォルト値:10 GB。

    テーブルサイズが大きいと、回収プロセスが長引く可能性があります。ビジネス要件に基づいて値を選択してください。

    説明

    インスタンス上のすべてのテーブルが 5 GB 未満または 100 GB を超える場合、システムはフラグメントの回収を実行しません。

    断片化率 (%) >

    フラグメントの自動回収をトリガーする単一の物理テーブルの最小断片化率。有効値:10%〜99%。デフォルト値:20%。

    断片化率が高いと、領域最適化の頻度が低下します。ビジネス要件に基づいて値を選択してください。

    説明

    インスタンス上のすべてのテーブルの断片化率が 10% 未満の場合、システムはフラグメントの回収を実行しません。

    説明

    たとえば、テーブルスペース > を 5 GB に、テーブルスペース > を 10% に設定した場合、サイズが 5 GB〜100 GB で断片化率が 10% 以上のすべてのテーブルで、フラグメントの自動回収がトリガーされます。

  5. (オプション) アラートテンプレート を設定してアラートを受信し、インスタンスの 断片化したスペースの自動再利用 のステータスを監視します。

    システムはアラートテンプレートを推奨し、対応する自律イベントのアラートルールを追加します。プロンプトに従って設定を完了できます。

    説明
    • インスタンスにアラートテンプレートをすでに設定している場合は、プロンプトに従って、対応する自律イベントのアラートルールをテンプレートに追加します。

    • アラートテンプレートとアラートルールを手動で設定する場合は、「アラートテンプレートの設定」と「アラートルールの設定」をご参照ください。

    1. アラート通知用の アラート連絡先グループ を選択します。

      • 連絡先を追加 をクリックして、新しいアラート連絡先を追加します。

      • 連絡先グループの追加 をクリックして、新しい連絡先グループを追加します。

      • 連絡先の横にある 変更 または 削除 をクリックして、連絡先の情報を変更または削除します。

      詳細については、「アラート連絡先の管理」をご参照ください。

    2. [関連付けリソース] を確認します。

    3. 構成のコミット をクリックし、表示されるダイアログボックスでアラート設定を確認します。