Database Recommended Actions - List By Database Advisor

Obtient la liste des actions recommandées de base de données.

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/advisors/{advisorName}/recommendedActions?api-version=2021-11-01

Paramètres URI

Nom Dans Obligatoire Type Description
advisorName
path True

string

Nom de l’Assistant de base de données.

databaseName
path True

string

Nom de la base de données.

resourceGroupName
path True

string

Nom du groupe de ressources qui contient la ressource. Vous pouvez obtenir cette valeur à partir de l’API Azure Resource Manager ou du portail.

serverName
path True

string

Le nom du serveur

subscriptionId
path True

string

L’ID d’abonnement d’un abonnement Azure.

api-version
query True

string

Version de l’API à utiliser pour la requête.

Réponses

Nom Type Description
200 OK

RecommendedAction[]

La liste des actions recommandées pour la base de données a été récupérée.

Other Status Codes

Réponses d’erreur : ***

  • 400 FeatureDisabledOnSelectedEdition : l’utilisateur a tenté d’utiliser une fonctionnalité désactivée sur l’édition de base de données actuelle.

  • 400 InvalidIdentifier : l’identificateur contient NULL ou un caractère Unicode non valide.

  • 404 DatabaseDoesNotExist : la base de données demandée est introuvable

  • 404 SubscriptionDoesNotHaveServer : le serveur demandé est introuvable

  • 404 SubscriptionDoesNotHaveElasticPool - Le pool élastique demandé est introuvable

  • 404 AdvisorNotFound : le conseiller demandé est introuvable.

  • 404 RecommendedActionNotFound : l’action recommandée demandée est introuvable.

  • 404 AdvisorNotFound : le conseiller demandé est introuvable.

  • 404 RecommendedActionNotFound : l’action recommandée demandée est introuvable.

  • 405 Non pris en charge : cette fonctionnalité n’est pas prise en charge.

  • 409 Conflit : la demande n’a pas pu être traitée en raison d’un conflit dans la demande.

  • 503 ServiceTemporarilyUnavailable - Fonctionnalité temporairement indisponible.

Exemples

Sample Request

GET https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions?api-version=2021-11-01

Sample Response

[
  {
    "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB",
    "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB",
    "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions",
    "location": "East Asia",
    "kind": "",
    "properties": {
      "recommendationReason": "",
      "validSince": "2017-03-01T14:38:04Z",
      "lastRefresh": "2017-03-01T14:38:04Z",
      "state": {
        "currentValue": "Active",
        "lastModified": "2017-03-01T14:38:05Z"
      },
      "isExecutableAction": true,
      "isRevertableAction": true,
      "isArchivedAction": false,
      "score": 1,
      "implementationDetails": {
        "method": "TSql",
        "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)"
      },
      "errorDetails": {},
      "estimatedImpact": [
        {
          "dimensionName": "ActionDuration",
          "unit": "Seconds",
          "absoluteValue": 1440
        },
        {
          "dimensionName": "SpaceChange",
          "unit": "Megabytes",
          "absoluteValue": 209.3125
        }
      ],
      "observedImpact": [],
      "timeSeries": [],
      "details": {
        "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B",
        "indexType": "NONCLUSTERED",
        "schema": "[CRM]",
        "table": "[DataPoints]",
        "indexColumns": "[Name],[Money],[Power]",
        "includedColumns": "[Hour], [System], [LastChanged]"
      }
    }
  },
  {
    "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC",
    "name": "IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC",
    "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions",
    "location": "East Asia",
    "kind": "",
    "properties": {
      "recommendationReason": "",
      "validSince": "2017-03-01T14:38:05Z",
      "lastRefresh": "2017-03-01T14:38:05Z",
      "state": {
        "currentValue": "Success",
        "actionInitiatedBy": "User",
        "lastModified": "2017-03-01T14:38:05Z"
      },
      "isExecutableAction": true,
      "isRevertableAction": true,
      "isArchivedAction": false,
      "executeActionStartTime": "2017-03-01T14:38:05Z",
      "executeActionDuration": "PT1M",
      "executeActionInitiatedBy": "User",
      "executeActionInitiatedTime": "2017-03-01T14:38:05Z",
      "score": 3,
      "implementationDetails": {
        "method": "TSql",
        "script": "DROP INDEX [nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC] ON [dbo].[DataPoints]"
      },
      "errorDetails": {},
      "estimatedImpact": [
        {
          "dimensionName": "ActionDuration",
          "unit": "Seconds",
          "absoluteValue": 5040
        },
        {
          "dimensionName": "SpaceChange",
          "unit": "Megabytes",
          "absoluteValue": 120
        }
      ],
      "observedImpact": [
        {
          "dimensionName": "AffectedQueriesCpuUtilization",
          "unit": "CpuCores",
          "changeValueAbsolute": -12.7,
          "changeValueRelative": -0.9
        },
        {
          "dimensionName": "CpuUtilization",
          "unit": "CpuCores",
          "changeValueAbsolute": -12.7,
          "changeValueRelative": -0.3175
        },
        {
          "dimensionName": "QueriesWithImprovedPerformance",
          "unit": "Count",
          "absoluteValue": 12
        },
        {
          "dimensionName": "QueriesWithRegressedPerformance",
          "unit": "Count",
          "absoluteValue": 1
        },
        {
          "dimensionName": "SpaceChange",
          "unit": "Megabytes",
          "absoluteValue": 130.742187
        },
        {
          "dimensionName": "VerificationProgress",
          "unit": "Percent",
          "absoluteValue": 0
        }
      ],
      "timeSeries": [],
      "details": {
        "indexName": "nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC",
        "indexType": "NONCLUSTERED",
        "schema": "[dbo]",
        "table": "[DataPoints]",
        "indexColumns": "[Name],[Money]",
        "includedColumns": "[Power],[Pineapple]",
        "indexActionStartTime": "2017-03-01T14:38:05.337",
        "indexActionDuration": "00:01:00"
      }
    }
  },
  {
    "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[Employees]_560E15A98D14CA09BDFB",
    "name": "IR_[dbo]_[Employees]_560E15A98D14CA09BDFB",
    "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions",
    "location": "East Asia",
    "kind": "",
    "properties": {
      "recommendationReason": "",
      "validSince": "2017-03-01T14:38:05Z",
      "lastRefresh": "2017-03-01T14:38:05Z",
      "state": {
        "currentValue": "Active",
        "lastModified": "2017-03-01T14:38:05Z"
      },
      "isExecutableAction": true,
      "isRevertableAction": true,
      "isArchivedAction": false,
      "score": 3,
      "implementationDetails": {
        "method": "TSql",
        "script": "CREATE NONCLUSTERED INDEX [nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE] ON [dbo].[Employees] ([City], [State]) INCLUDE ([Postal]) WITH (ONLINE = ON)"
      },
      "errorDetails": {},
      "estimatedImpact": [
        {
          "dimensionName": "ActionDuration",
          "unit": "Seconds",
          "absoluteValue": 17
        },
        {
          "dimensionName": "SpaceChange",
          "unit": "Megabytes",
          "absoluteValue": 128
        }
      ],
      "observedImpact": [],
      "timeSeries": [],
      "details": {
        "indexName": "nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE",
        "indexType": "NONCLUSTERED",
        "schema": "[dbo]",
        "table": "[Employees]",
        "indexColumns": "[City], [State]",
        "includedColumns": "[Postal]"
      }
    }
  }
]

Définitions

Nom Description
ImplementationMethod

Obtient la méthode dans laquelle cette action recommandée peut être implémentée manuellement. Par exemple, TSql, AzurePowerShell.

IsRetryable

Obtient si l’erreur peut être ignorée et si l’action recommandée peut être retentée. Les valeurs possibles sont les suivantes : Oui/Non

RecommendedAction

Action recommandée pour la base de données, le serveur ou le pool élastique.

RecommendedActionCurrentState

État actuel de l’action recommandée. Certains états couramment utilisés sont : Actif :> l’action recommandée est active et aucune action n’a encore été effectuée. En attente :> l’action recommandée est approuvée pour et est en attente d’exécution. Exécution :> l’action recommandée est appliquée à la base de données utilisateur. Vérification :> l’action recommandée a été appliquée et est vérifiée par le système. Réussite :> l’action recommandée a été appliquée et une amélioration a été trouvée lors de la vérification. Restauration en attente :> la vérification a trouvé peu ou pas d’amélioration. L’action recommandée est donc mise en file d’attente pour la restauration ou l’utilisateur a restauré manuellement. Rétablissement :> les modifications apportées lors de l’application de l’action recommandée sont rétablies sur la base de données utilisateur. Rétabli :> les modifications apportées par l’action recommandée sur la base de données utilisateur ont été annulées. Ignoré :> l’utilisateur a explicitement ignoré/ignoré l’action recommandée.

RecommendedActionErrorInfo

Contient des informations d’erreur pour une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

RecommendedActionImpactRecord

Contient des informations sur l’impact estimé ou observé sur diverses métriques pour une action recommandée Azure SQL base de données, serveur ou pool élastique.

RecommendedActionImplementationInfo

Contient des informations pour l’implémentation manuelle d’une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

RecommendedActionInitiatedBy

Obtient qui a lancé l’exécution de cette action recommandée. La valeur possible est : Utilisateur :> lorsque l’utilisateur a explicitement averti le système d’appliquer l’action recommandée. Système :> lorsque l’exécution automatique status de ce conseiller a été définie sur « Activé », auquel cas le système l’a appliquée.

RecommendedActionMetricInfo

Contient une série chronologique de diverses métriques impactées pour une action recommandée Azure SQL base de données, serveur ou pool élastique.

RecommendedActionStateInfo

Contient des informations sur l’état actuel d’une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

ImplementationMethod

Obtient la méthode dans laquelle cette action recommandée peut être implémentée manuellement. Par exemple, TSql, AzurePowerShell.

Nom Type Description
AzurePowerShell

string

TSql

string

IsRetryable

Obtient si l’erreur peut être ignorée et si l’action recommandée peut être retentée. Les valeurs possibles sont les suivantes : Oui/Non

Nom Type Description
No

string

Yes

string

RecommendedAction

Action recommandée pour la base de données, le serveur ou le pool élastique.

Nom Type Description
id

string

ID de la ressource

kind

string

Type de ressource.

location

string

Emplacement de la ressource.

name

string

Nom de la ressource.

properties.details

object

Obtient des détails supplémentaires spécifiques à cette action recommandée.

properties.errorDetails

RecommendedActionErrorInfo

Obtient les détails de l’erreur si et pourquoi cette action recommandée est placée à l’état d’erreur.

properties.estimatedImpact

RecommendedActionImpactRecord[]

Obtient les informations d’impact estimées pour cette action recommandée, par exemple, Estimation du gain de processeur, Estimation de la modification de l’espace disque

properties.executeActionDuration

string

Obtient le temps nécessaire à l’application de cette action recommandée sur la ressource utilisateur. Par exemple, le temps nécessaire à la création de l’index

properties.executeActionInitiatedBy

RecommendedActionInitiatedBy

Obtient si l’utilisateur/système a approuvé l’application de cette action recommandée.

properties.executeActionInitiatedTime

string

Obtient l’heure à laquelle cette action recommandée a été approuvée pour l’exécution.

properties.executeActionStartTime

string

Obtient l’heure à laquelle le système a commencé à appliquer cette action recommandée sur la ressource utilisateur. Par exemple, l’heure de début de la création d’index

properties.implementationDetails

RecommendedActionImplementationInfo

Obtient les détails d’implémentation de cette action recommandée pour que l’utilisateur l’applique manuellement.

properties.isArchivedAction

boolean

Obtient si cette action recommandée a été suggérée il y a un certain temps, mais que l’utilisateur a choisi d’ignorer cette action et que le système a ajouté à nouveau une nouvelle action recommandée.

properties.isExecutableAction

boolean

Obtient si cette action recommandée peut être actionnable par l’utilisateur

properties.isRevertableAction

boolean

Obtient si les modifications appliquées par cette action recommandée peuvent être annulées par l’utilisateur

properties.lastRefresh

string

Obtient le moment où cette action recommandée a été actualisée pour la dernière fois.

properties.linkedObjects

string[]

Obtient les objets liés, le cas échéant.

properties.observedImpact

RecommendedActionImpactRecord[]

Obtient les informations d’impact observé/réel pour cette action recommandée, par exemple, gain réel d’uc, modification de l’espace disque réel

properties.recommendationReason

string

Obtient la raison de la recommandation de cette action. Par exemple, DuplicateIndex

properties.revertActionDuration

string

Obtient le temps nécessaire pour rétablir les modifications de cette action recommandée sur la ressource utilisateur. Par exemple, le temps nécessaire à la suppression de l’index créé.

properties.revertActionInitiatedBy

RecommendedActionInitiatedBy

Obtient si l’utilisateur/système a donné l’approbation de la restauration de cette action recommandée.

properties.revertActionInitiatedTime

string

Obtient l’heure à laquelle cette action recommandée a été approuvée pour la restauration.

properties.revertActionStartTime

string

Obtient l’heure à laquelle le système a commencé à rétablir les modifications de cette action recommandée sur la ressource utilisateur. Par exemple, l’heure d’exécution de la suppression d’index.

properties.score

integer

Obtient l’impact de cette action recommandée. Les valeurs possibles sont 1 - Impact faible, 2 - Impact moyen et 3 - Impact élevé

properties.state

RecommendedActionStateInfo

Obtient les informations de l’état actuel dans lequel se trouve l’action recommandée.

properties.timeSeries

RecommendedActionMetricInfo[]

Obtient les informations de série chronologique des métriques pour cette action recommandée, par exemple, la série chronologique de consommation du processeur

properties.validSince

string

Obtient l’heure depuis laquelle cette action recommandée est valide.

type

string

Type de ressource.

RecommendedActionCurrentState

État actuel de l’action recommandée. Certains états couramment utilisés sont : Actif :> l’action recommandée est active et aucune action n’a encore été effectuée. En attente :> l’action recommandée est approuvée pour et est en attente d’exécution. Exécution :> l’action recommandée est appliquée à la base de données utilisateur. Vérification :> l’action recommandée a été appliquée et est vérifiée par le système. Réussite :> l’action recommandée a été appliquée et une amélioration a été trouvée lors de la vérification. Restauration en attente :> la vérification a trouvé peu ou pas d’amélioration. L’action recommandée est donc mise en file d’attente pour la restauration ou l’utilisateur a restauré manuellement. Rétablissement :> les modifications apportées lors de l’application de l’action recommandée sont rétablies sur la base de données utilisateur. Rétabli :> les modifications apportées par l’action recommandée sur la base de données utilisateur ont été annulées. Ignoré :> l’utilisateur a explicitement ignoré/ignoré l’action recommandée.

Nom Type Description
Active

string

Error

string

Executing

string

Expired

string

Ignored

string

Monitoring

string

Pending

string

PendingRevert

string

Resolved

string

RevertCancelled

string

Reverted

string

Reverting

string

Success

string

Verifying

string

RecommendedActionErrorInfo

Contient des informations d’erreur pour une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

Nom Type Description
errorCode

string

Obtient la raison pour laquelle l’action recommandée a été placée à l’état d’erreur. Par exemple, DatabaseHasQdsOff, IndexAlreadyExists

isRetryable

IsRetryable

Obtient si l’erreur peut être ignorée et si l’action recommandée peut être retentée. Les valeurs possibles sont les suivantes : Oui/Non

RecommendedActionImpactRecord

Contient des informations sur l’impact estimé ou observé sur diverses métriques pour une action recommandée Azure SQL base de données, serveur ou pool élastique.

Nom Type Description
absoluteValue

number

Obtient la valeur absolue de cette dimension, le cas échéant. Par exemple, nombre de requêtes affectées

changeValueAbsolute

number

Obtient la modification absolue de la valeur de cette dimension. Par exemple, modification absolue de l’espace disque en mégaoctets

changeValueRelative

number

Obtient la modification relative de la valeur de cette dimension. Par exemple, modification de l’espace disque relatif dans le pourcentage

dimensionName

string

Obtient le nom de la dimension d’impact. Par exemple, CPUChange, DiskSpaceChange, NumberOfQueriesAffected.

unit

string

Obtient le nom de la dimension d’impact. Par exemple, CPUChange, DiskSpaceChange, NumberOfQueriesAffected.

RecommendedActionImplementationInfo

Contient des informations pour l’implémentation manuelle d’une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

Nom Type Description
method

ImplementationMethod

Obtient la méthode dans laquelle cette action recommandée peut être implémentée manuellement. Par exemple, TSql, AzurePowerShell.

script

string

Obtient le script d’implémentation manuelle. Par exemple, un script T-SQL qui peut être exécuté sur la base de données.

RecommendedActionInitiatedBy

Obtient qui a lancé l’exécution de cette action recommandée. La valeur possible est : Utilisateur :> lorsque l’utilisateur a explicitement averti le système d’appliquer l’action recommandée. Système :> lorsque l’exécution automatique status de ce conseiller a été définie sur « Activé », auquel cas le système l’a appliquée.

Nom Type Description
System

string

User

string

RecommendedActionMetricInfo

Contient une série chronologique de diverses métriques impactées pour une action recommandée Azure SQL base de données, serveur ou pool élastique.

Nom Type Description
metricName

string

Obtient le nom de la métrique. Par exemple, PROCESSEUR, Nombre de requêtes.

startTime

string

Obtient l’heure de début de l’intervalle de temps donné par ce MetricInfo.

timeGrain

string

Obtient la durée de l’intervalle de temps pour la valeur donnée par cet objet MetricInfo. Par exemple, PT1H (1 heure)

unit

string

Obtient l’unité dans laquelle la métrique est mesurée. Par exemple, DTU, Fréquence

value

number

Obtient la valeur de la métrique dans l’intervalle de temps donné par ce MetricInfo.

RecommendedActionStateInfo

Contient des informations sur l’état actuel d’une action recommandée pour une base de données Azure SQL, un serveur ou un pool élastique.

Nom Type Description
actionInitiatedBy

RecommendedActionInitiatedBy

Obtient qui a lancé l’exécution de cette action recommandée. La valeur possible est : Utilisateur :> lorsque l’utilisateur a explicitement averti le système d’appliquer l’action recommandée. Système :> lorsque l’exécution automatique status de ce conseiller a été définie sur « Activé », auquel cas le système l’a appliquée.

currentValue

RecommendedActionCurrentState

État actuel de l’action recommandée. Certains états couramment utilisés sont : Actif :> l’action recommandée est active et aucune action n’a encore été effectuée. En attente :> l’action recommandée est approuvée pour et est en attente d’exécution. Exécution :> l’action recommandée est appliquée à la base de données utilisateur. Vérification :> l’action recommandée a été appliquée et est vérifiée par le système. Réussite :> l’action recommandée a été appliquée et une amélioration a été trouvée lors de la vérification. Restauration en attente :> la vérification a trouvé peu ou pas d’amélioration. L’action recommandée est donc mise en file d’attente pour la restauration ou l’utilisateur a restauré manuellement. Rétablissement :> les modifications apportées lors de l’application de l’action recommandée sont rétablies sur la base de données utilisateur. Rétabli :> les modifications apportées par l’action recommandée sur la base de données utilisateur ont été annulées. Ignoré :> l’utilisateur a explicitement ignoré/ignoré l’action recommandée.

lastModified

string

Obtient l’heure de la dernière modification de l’état