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

Database Autonomy Service:GetRequestDiagnosisResult

最終更新日:Apr 08, 2026

GetRequestDiagnosisResult を呼び出して、SQL 診断結果を取得します。

操作説明

この API には、次の前提条件があります。

  • SDK を使用して DAS サービスを呼び出す場合、リージョンを中国 (上海) に設定する必要があります。

  • この API は、自動 SQL 最適化の診断結果のクエリをサポートしていません。

  • この API は、次のデータベースエンジンをサポートしています。

    • RDS MySQL

    • RDS PostgreSQL

    • RDS SQL Server

    • PolarDB for MySQL

    • PolarDB for PostgreSQL (Oracle 互換)

    • ApsaraDB for MongoDB

説明

RDS PostgreSQL インスタンスには、マイナーカーネルバージョン 20220130 以降が必要です。マイナーカーネルバージョンを表示およびアップグレードする方法については、「マイナーカーネルバージョンのアップグレード」をご参照ください。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

hdm:GetRequestDiagnosisResult

get

*All Resource

*

なし なし

リクエストパラメーター

パラメーター

必須 / 任意

説明

InstanceId

string

必須

インスタンス ID。

rm-0iwhhl8gx0ld6****

NodeId

string

任意

ノード ID。

説明

このパラメーターは、PolarDB for MySQL、PolarDB for PostgreSQL (Oracle 互換)、ApsaraDB for MongoDB などのクラスターインスタンスに必要です。

202****

MessageId

string

必須

CreateRequestDiagnosis 操作によって返される一意の診断 ID。

説明

MessageId が自動 SQL 最適化の診断 ID である場合、この操作は診断結果を返しません。

61820b594664275c4429****

SqlId

string

任意

SQL テンプレート ID。

説明

このパラメーターは DAS コンソールが内部で使用します。このパラメーターを指定する必要はありません。

None

Source

string

任意

タスクのソース。

説明

このパラメーターは DAS コンソールが内部で使用します。このパラメーターを指定する必要はありません。

None

レスポンスフィールド

フィールド

説明

object

Message

string

応答メッセージ。

説明

リクエストが成功した場合、このパラメーターは `Successful` を返します。リクエストが失敗した場合、エラーコードを含むエラーメッセージを返します。

Successful

RequestId

string

リクエスト ID。

800FBAF5-A539-5B97-A09E-C63AB2F7****

Data

object

返されたデータ。

messageId

string

一意の診断 ID。

61820b594664275c4429****

uuid

string

診断されたインスタンスの一意の識別子。

hdm_51fe9bc19ec413f4d530431af87a****

accountId

string

ユーザー ID。

2093****

sqlId

string

SQL テンプレート ID。

0c95dae3afef77be06572612df9b****

engine

string

データベースエンジン。有効な値:

  • MySQL

  • PostgreSQL

  • SQL Server

  • PolarDB-X

  • PolarDB for Oracle

  • MongoDB

MySQL

dbSchema

string

データベース名。

das

param

string

追加情報。

{"":""}

state

integer

診断ステータス。有効な値:

  • 0:進行中。

  • 1:診断エラー。

  • 2:完了。

  • 3:SQL エラー。

  • 4:エンジンエラー。

2

result

string

SQL 診断結果の詳細。JSON 形式の文字列で返されます。

  • endTime:SQL 診断の終了時刻。

  • errorCode:エラーコード。
    • 0001:診断は成功しました。

    • 0003:診断は失敗しました。

  • errorMessage:エラーメッセージ。

  • estimateCost:推定コスト。
    • cpu:クエリの推定 CPU コスト。

    • io:クエリの推定 I/O コスト。

    • rows:クエリによって返される推定行数。

  • improvement:パフォーマンス改善率。

  • indexAdvices:インデックス提案。
    • columns:インデックス列。

    • ddlAddIndex:インデックスを作成するための DDL 文。

    • indexName:インデックス名。

    • schemaName:スキーマ名。

    • tableName:テーブル名。

    • unique:インデックスが一意なインデックスであるかどうかを示します。

  • ip:インスタンスの IP アドレス。

  • messageId:診断 ID。

  • port:インスタンスポート。

  • sqlTag:SQL タグ。
    • PRED_EQUAL:等価述語。

    • CNT_QB:クエリブロックの数。

    • CNT_TB:テーブルの数。

    • JOIN_LEFT:左結合。

    • SEL_SMALL:小さな結果セットの選択。

    • AGGR_SEL:集計選択。

    • PRED_LT_EQ / PRED_GT_EQ:小なりイコール/大なりイコール述語。

    • PRED_LIKE_PREFIX:LIKE プレフィックスマッチ。

    • ORDER_BY:ORDER BY 句を含みます。

    • LIMIT:LIMIT 句を含みます。

    • GROUP_BY:GROUP BY 句を含みます。

    • JOIN_INNER:内部結合。

    • JOIN_RIGHT:右結合。

    • HAVING:HAVING 句を含みます。

    • UNION:UNION 操作を含みます。

  • startTime:SQL 診断の開始時刻。

  • success:診断が成功したかどうかを示します。

  • support:SQL ステートメントが診断可能かどうかを示します。
    • true:サポートされています。

    • false:サポートされていません。

  • tuningAdvices:SQL 書き換え提案。

{ "endTime":1636354256000, "errorCode":"0001", "errorMessage":"TFX成功", "estimateCost":{ "cpu":1.7878745150389268, "io":9.948402604746128, "rows":8.889372575194633 }, "improvement":12933.97, "indexAdvices":[ { "columns":[ "work_no" ], "ddlAddIndex":"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)", "indexName":"idx_workno", "schemaName":"test", "tableName":"work_order", "unique":false } ], "ip":"****.mysql.rds.aliyuncs.com", "messageId":"6188c8cb2f1365b16aee****", "port":3306, "sqlTag":"{\"PRED_EQUAL\":\"Y\",\"CNT_QB\":\"1\",\"CNT_TB\":\"1\"}", "startTime":1636354252000, "success":true, "support":true, "tuningAdvices":[ ] }

gmtCreate

string

SQL 診断の作成時刻。ミリ秒単位の UNIX タイムスタンプで提供されます。

1633071840000

gmtModified

string

SQL 診断の最終更新時刻。ミリ秒単位の UNIX タイムスタンプで提供されます。

1633071850000

Code

string

返されたステータスコード。

200

Success

string

リクエストが成功したかどうかを示します。有効な値:

  • true:リクエストは成功しました。

  • false:リクエストは失敗しました。

true

成功レスポンス

JSONJSON

{
  "Message": "Successful",
  "RequestId": "800FBAF5-A539-5B97-A09E-C63AB2F7****",
  "Data": {
    "messageId": "61820b594664275c4429****",
    "uuid": "hdm_51fe9bc19ec413f4d530431af87a****",
    "accountId": "2093****",
    "sqlId": "0c95dae3afef77be06572612df9b****",
    "engine": "MySQL",
    "dbSchema": "das",
    "param": "{\"\":\"\"}",
    "state": 2,
    "result": "{ \"endTime\":1636354256000, \"errorCode\":\"0001\", \"errorMessage\":\"TFX成功\", \"estimateCost\":{ \"cpu\":1.7878745150389268, \"io\":9.948402604746128, \"rows\":8.889372575194633 }, \"improvement\":12933.97, \"indexAdvices\":[ { \"columns\":[ \"work_no\" ], \"ddlAddIndex\":\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\", \"indexName\":\"idx_workno\", \"schemaName\":\"test\", \"tableName\":\"work_order\", \"unique\":false } ], \"ip\":\"****.mysql.rds.aliyuncs.com\", \"messageId\":\"6188c8cb2f1365b16aee****\", \"port\":3306, \"sqlTag\":\"{\\\"PRED_EQUAL\\\":\\\"Y\\\",\\\"CNT_QB\\\":\\\"1\\\",\\\"CNT_TB\\\":\\\"1\\\"}\", \"startTime\":1636354252000, \"success\":true, \"support\":true, \"tuningAdvices\":[ ] }",
    "gmtCreate": "1633071840000",
    "gmtModified": "1633071850000"
  },
  "Code": "200",
  "Success": "true"
}

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400 InvalidParams The request parameters are invalid.
403 NoPermission You are not authorized to do this action.

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。