Database Autonomy Service (DAS) は、ApsaraDB RDS for PostgreSQL インスタンスの最適なパフォーマンスを維持するために、低速 SQL クエリを自動的に診断し、インデックスを管理します。自動 SQL 最適化により、DAS は以下を実行できます:
-
SQL ステートメントの日次診断を実行し、低速 SQL クエリを特定します
-
パフォーマンスボトルネックに対処するためのインデックスを推奨します
-
(有効な場合) 推奨事項に基づいてインデックスを自動的に作成または削除します
前提条件
開始する前に、以下を確認してください:
-
RDS High-availability Edition の RDS インスタンス
-
インスタンスで[SQL エクスプローラーと監査]機能が有効になっていること。詳細については、「SQL エクスプローラーと監査機能の使用」をご参照ください。
SQL エクスプローラーと監査により、DAS は低速 SQL クエリと正常な SQL クエリを区別できます。 これがないと、自動 SQL 最適化が正常なクエリも最適化してしまい、インスタンス全体のパフォーマンスが低下する可能性があります。
自動 SQL 最적化の有効化
-
[インスタンス] ページに移動します。 上部メニューで、インスタンスのあるリージョンを選択し、インスタンス ID をクリックします。
-
次のいずれかの方法で [自律型機能管理] パネルを開きます:
-
左側メニューで、[自律サービス] > [診断] を選択します。 表示されたページで、[自律センター] タブをクリックします。 右上隅にある [自律サービス設定] をクリックします。
-
左側メニューで、[自律サービス] > [ダッシュボード] を選択します。 [パフォーマンストレンド] タブで、[自律サービス設定] をクリックします。
-
-
[自律機能設定] タブで、自律サービスのスイッチをオンにします。 [最適化とスロットリング] タブで、[自動インデックス作成と削除] を選択し、モードを選択します。
自動インデックス作成が有効になっている場合、DAS はインスタンスに設定された [メンテナンスウィンドウ] 内にインデックスを作成します。
モード DAS の動作 [SQL 診断のみ] 毎日の SQL 診断を実行し、インデックスの推奨事項を提供します。 インスタンスにインデックスは作成しません。 [SQL 診断と自動インデックス作成] 毎日の SQL 診断を実行し、インデックスの推奨事項を提供し、インスタンスにインデックスを自動的に作成します。 
-
[OK] をクリックします。
-
(オプション) [アラート設定] セクションで、アラートテンプレートを設定し、アラート通知をサブスクライブして、自動 SQL 最適化タスクのステータスを追跡します。 システムはアラートテンプレートを推奨し、必要な自律イベントのアラートルールを自動的に追加します。 画面の指示に従って設定を完了します。
- インスタンスにアラートテンプレートがすでに設定されている場合は、表示される指示に従って、必要な自律イベントのアラートルールを既存のテンプレートに追加します。 - 新しいアラートテンプレートを設定するには、「アラートテンプレートの設定」および「アラートルールの設定」をご参照ください。
-
[アラート連絡先グループの選択] ステップで、アラート連絡先グループを選択します。 詳細については、「アラート連絡先の管理」をご参照ください。
-
[連絡先の追加] をクリックして、アラート連絡先を追加します。
-
[連絡先グループの作成] をクリックして、アラート連絡先グループを作成します。
-
既存の連絡先を変更または削除するには、連絡先を見つけて [操作] 列の [編集] または [削除] をクリックします。
-
-
[リソースとの関連付け] ステップで、関連付けられたリソースを確認します。
-
[設定の送信] をクリックし、ダイアログボックスで設定を確認します。
-
次のステップ
自動 SQL 最適化を有効にした後、[自律センター] で最適化イベントを表示できます。
-
時間範囲を選択して、最適化イベントを一覧表示します。
-
イベントを見つけて、[操作] 列の [詳細] をクリックします。
-
[低速 SQL ステートメント診断 (診断と最適化)] イベントの [根本原因分析と推奨事項] タブで、次のセクションを確認します:
-
[問題のある SQL ステートメント] — DAS によって特定された低速 SQL クエリ
-
[SQL ステートメントの最適化] — 推奨される書き換えまたは実行計画の変更
-
[インデックスの推奨] — DAS が作成を推奨するインデックス
-
[ステートメントの最適化] — さらなるステートメントレベルの改善
-