Database Recommended Actions - List By Database Advisor

Veritabanı Önerilen Eylemlerinin listesini alır.

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

URI Parametreleri

Name İçinde Gerekli Tür Description
advisorName
path True

string

Veritabanı Danışmanı'nın adı.

databaseName
path True

string

Veritabanının adı.

resourceGroupName
path True

string

Kaynağı içeren kaynak grubunun adı. Bu değeri Azure Resource Manager API'sinden veya portaldan alabilirsiniz.

serverName
path True

string

Sunucunun adı.

subscriptionId
path True

string

Azure aboneliğini tanımlayan abonelik kimliği.

api-version
query True

string

İstek için kullanılacak API sürümü.

Yanıtlar

Name Tür Description
200 OK

RecommendedAction[]

Veritabanı tarafından önerilen eylemlerin listesi başarıyla alındı.

Other Status Codes

Hata Yanıtları: **

  • 400 FeatureDisabledOnSelectedEdition - Kullanıcı geçerli veritabanı sürümünde devre dışı bırakılmış bir özelliği kullanmaya çalıştı.

  • 400 InvalidIdentifier - Tanımlayıcı NULL veya geçersiz bir unicode karakter içeriyor.

  • 404 DatabaseDoesNotExist - İstenen veritabanı bulunamadı

  • 404 SubscriptionDoesNotHaveServer - İstenen sunucu bulunamadı

  • 404 SubscriptionDoesNotHaveElasticPool - İstenen elastik havuz bulunamadı

  • 404 AdvisorNotFound - İstenen danışman bulunamadı.

  • 404 RecommendedActionNotFound - İstenen önerilen eylem bulunamadı.

  • 404 AdvisorNotFound - İstenen danışman bulunamadı.

  • 404 RecommendedActionNotFound - İstenen önerilen eylem bulunamadı.

  • 405 Desteklenmeyen - Bu işlevsellik desteklenmez.

  • 409 Çakışması - İstekteki çakışma nedeniyle istek işlenemedi.

  • 503 ServiceTemporarilyUnavailable - Özellik geçici olarak kullanılamıyor.

Örnekler

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]"
      }
    }
  }
]

Tanımlar

Name Description
ImplementationMethod

Bu önerilen eylemin el ile uygulanabileceği yöntemi alır. Örneğin, TSql, AzurePowerShell.

IsRetryable

Hatanın yoksayılıp yoksayılamayacağını ve önerilen eylemin yeniden denenip denenemeyeceğini alır. Olası değerler şunlardır: Evet/Hayır

RecommendedAction

Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylem.

RecommendedActionCurrentState

Önerilen eylemin bulunduğu geçerli durum. Yaygın olarak kullanılan bazı durumlar şunlardır: Etkin -> önerilen eylem etkindir ve henüz hiçbir işlem yapılmamıştır. Beklemede -> önerilen eylem için onaylanır ve yürütmeyi bekler. Yürütülüyor -> kullanıcı veritabanına önerilen eylem uygulanıyor. Doğrulama -> önerilen eylem uygulandı ve sistem tarafından yararlılığı doğrulanıyor. Başarılı -> önerilen eylem uygulandı ve doğrulama sırasında iyileştirme bulundu. Geri Döndürme Bekleniyor -> doğrulama çok az geliştirme buldu veya hiç gelişme bulamadı, bu nedenle önerilen eylem geri döndürme için sıraya alındı veya kullanıcı el ile geri döndü. Geri alma -> Önerilen eylem uygulanırken yapılan değişiklikler kullanıcı veritabanında geri döndürülüyor. Geri döndürülür -> kullanıcı veritabanında önerilen eylem tarafından yapılan değişiklikler başarıyla geri döndürülür. Yoksayıldı -> kullanıcı önerilen eylemi açıkça yoksaydı/atmış.

RecommendedActionErrorInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için hata bilgilerini içerir.

RecommendedActionImpactRecord

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için çeşitli ölçümler üzerinde tahmini veya gözlemlenen etki hakkında bilgi içerir.

RecommendedActionImplementationInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için el ile uygulamaya yönelik bilgiler içerir.

RecommendedActionInitiatedBy

Bu önerilen eylemin yürütülmesini kimin başlattığını alır. Olası Değer şunlardır: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirimde bulunduğunda. Sistem -> Bu danışmanın otomatik yürütme durumu 'Etkin' olarak ayarlandığında, bu durumda sistem bunu uyguladı.

RecommendedActionMetricInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için çeşitli etkilenen ölçümlerin zaman serisini içerir.

RecommendedActionStateInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için geçerli durum bilgilerini içerir.

ImplementationMethod

Bu önerilen eylemin el ile uygulanabileceği yöntemi alır. Örneğin, TSql, AzurePowerShell.

Name Tür Description
AzurePowerShell

string

TSql

string

IsRetryable

Hatanın yoksayılıp yoksayılamayacağını ve önerilen eylemin yeniden denenip denenemeyeceğini alır. Olası değerler şunlardır: Evet/Hayır

Name Tür Description
No

string

Yes

string

RecommendedAction

Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylem.

Name Tür Description
id

string

Kaynak Kimliği.

kind

string

Kaynak türü.

location

string

Kaynak konumu.

name

string

Kaynak adı.

properties.details

object

Bu önerilen eyleme özgü ek ayrıntıları alır.

properties.errorDetails

RecommendedActionErrorInfo

Bu önerilen eylemin neden hata durumuna getirildiğinde hata ayrıntılarını alır.

properties.estimatedImpact

RecommendedActionImpactRecord[]

Tahmini CPU kazancı, Tahmini Disk Alanı değişikliği gibi bu önerilen eylem için tahmini etki bilgilerini alır

properties.executeActionDuration

string

Bu önerilen eylemin kullanıcı kaynağına uygulanması için geçen süreyi alır. Örneğin, dizin oluşturma için geçen süre

properties.executeActionInitiatedBy

RecommendedActionInitiatedBy

Bu önerilen eylemi uygulama onayının kullanıcı/sistem tarafından verilip verilmediğini alır.

properties.executeActionInitiatedTime

string

Bu önerilen eylemin yürütme için onaylandığı zamanı alır.

properties.executeActionStartTime

string

Sistemin bu önerilen eylemi kullanıcı kaynağına uygulamaya başladığı zamanı alır. Örneğin, dizin oluşturma başlangıç zamanı

properties.implementationDetails

RecommendedActionImplementationInfo

Kullanıcının el ile uygulaması için önerilen bu eylemin uygulama ayrıntılarını alır.

properties.isArchivedAction

boolean

Bu önerilen eylemin bir süre önce önerilip önerilmediğini ancak kullanıcının bunu yoksaymayı seçtiğini ve sistemin yeniden yeni bir önerilen eylem ekleyip eklemediğini alır.

properties.isExecutableAction

boolean

Bu önerilen eylemin kullanıcı tarafından eyleme dönüştürülebilir olup olmadığını alır

properties.isRevertableAction

boolean

Bu önerilen eylem tarafından uygulanan değişikliklerin kullanıcı tarafından geri alınabilmesi durumunda alır

properties.lastRefresh

string

Bu önerilen eylemin en son yenilendiği zamanı alır.

properties.linkedObjects

string[]

Varsa bağlı nesneleri alır.

properties.observedImpact

RecommendedActionImpactRecord[]

Bu önerilen eylem için gözlemlenen/gerçek etki bilgilerini alır; örneğin, Gerçek CPU kazancı, Gerçek Disk Alanı değişikliği

properties.recommendationReason

string

Bu eylemi önerme nedenini alır. Örneğin, DuplicateIndex

properties.revertActionDuration

string

Kullanıcı kaynağında bu önerilen eylemin değişikliklerini geri almak için geçen süreyi alır. Örneğin, oluşturulan dizini bırakmak için geçen süre.

properties.revertActionInitiatedBy

RecommendedActionInitiatedBy

Bu önerilen eylemi geri döndürme onayının kullanıcı/sistem tarafından verilip verilmediğini alır.

properties.revertActionInitiatedTime

string

Bu önerilen eylemin geri döndürülme için onaylandığı zamanı alır.

properties.revertActionStartTime

string

Sistemin kullanıcı kaynağında bu önerilen eylemin değişikliklerini geri döndürmeye başladığı zamanı alır. Örneğin, dizin bırakmanın yürütülürken zaman.

properties.score

integer

Bu önerilen eylemin etkisini alır. Olası değerler şunlardır: 1 - Düşük etki, 2 - Orta Etki ve 3 - Yüksek Etki

properties.state

RecommendedActionStateInfo

Önerilen eylemin bulunduğu geçerli durumun bilgilerini alır.

properties.timeSeries

RecommendedActionMetricInfo[]

Bu önerilen eylem için ölçümlerin zaman serisi bilgilerini alır; örneğin, CPU tüketimi zaman serisi

properties.validSince

string

Bu önerilen eylemin geçerli olduğu zamandan bu yana olan süreyi alır.

type

string

Kaynak türü.

RecommendedActionCurrentState

Önerilen eylemin bulunduğu geçerli durum. Yaygın olarak kullanılan bazı durumlar şunlardır: Etkin -> önerilen eylem etkindir ve henüz hiçbir işlem yapılmamıştır. Beklemede -> önerilen eylem için onaylanır ve yürütmeyi bekler. Yürütülüyor -> kullanıcı veritabanına önerilen eylem uygulanıyor. Doğrulama -> önerilen eylem uygulandı ve sistem tarafından yararlılığı doğrulanıyor. Başarılı -> önerilen eylem uygulandı ve doğrulama sırasında iyileştirme bulundu. Geri Döndürme Bekleniyor -> doğrulama çok az geliştirme buldu veya hiç gelişme bulamadı, bu nedenle önerilen eylem geri döndürme için sıraya alındı veya kullanıcı el ile geri döndü. Geri alma -> Önerilen eylem uygulanırken yapılan değişiklikler kullanıcı veritabanında geri döndürülüyor. Geri döndürülür -> kullanıcı veritabanında önerilen eylem tarafından yapılan değişiklikler başarıyla geri döndürülür. Yoksayıldı -> kullanıcı önerilen eylemi açıkça yoksaydı/atmış.

Name Tür 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

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için hata bilgilerini içerir.

Name Tür Description
errorCode

string

Önerilen eylemin neden hata durumuna getirildiğinin nedenini alır. örneğin, DatabaseHasQdsOff, IndexAlreadyExists

isRetryable

IsRetryable

Hatanın yoksayılıp yoksayılamayacağını ve önerilen eylemin yeniden denenip denenemeyeceğini alır. Olası değerler şunlardır: Evet/Hayır

RecommendedActionImpactRecord

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için çeşitli ölçümler üzerinde tahmini veya gözlemlenen etki hakkında bilgi içerir.

Name Tür Description
absoluteValue

number

Varsa bu boyutun mutlak değerini alır. Örneğin, etkilenen Sorgu Sayısı

changeValueAbsolute

number

Bu boyutun değerindeki mutlak değişikliği alır. Örneğin, Megabayt cinsinden Mutlak Disk alanı değişikliği

changeValueRelative

number

Bu boyutun değerindeki göreli değişikliği alır. Örneğin, Yüzde cinsinden Göreli Disk alanı değişikliği

dimensionName

string

Etki boyutunun adını alır. Örneğin CPUChange, DiskSpaceChange, NumberOfQueriesAffected.

unit

string

Etki boyutunun adını alır. Örneğin CPUChange, DiskSpaceChange, NumberOfQueriesAffected.

RecommendedActionImplementationInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için el ile uygulamaya yönelik bilgiler içerir.

Name Tür Description
method

ImplementationMethod

Bu önerilen eylemin el ile uygulanabileceği yöntemi alır. Örneğin, TSql, AzurePowerShell.

script

string

El ile uygulama betiğini alır. Örneğin, veritabanında yürütülebilecek T-SQL betiği.

RecommendedActionInitiatedBy

Bu önerilen eylemin yürütülmesini kimin başlattığını alır. Olası Değer şunlardır: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirimde bulunduğunda. Sistem -> Bu danışmanın otomatik yürütme durumu 'Etkin' olarak ayarlandığında, bu durumda sistem bunu uyguladı.

Name Tür Description
System

string

User

string

RecommendedActionMetricInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için çeşitli etkilenen ölçümlerin zaman serisini içerir.

Name Tür Description
metricName

string

Ölçümün adını alır. Örneğin, CPU, Sorgu Sayısı.

startTime

string

Bu MetricInfo tarafından verilen zaman aralığının başlangıç saatini alır.

timeGrain

string

Bu MetricInfo tarafından verilen değerin zaman aralığının süresini alır. örneğin PT1H (1 saat)

unit

string

Ölçümün ölçüldiği birimi alır. örneğin, DTU, Sıklık

value

number

Ölçümün değerini bu MetricInfo tarafından verilen zaman aralığında alır.

RecommendedActionStateInfo

Azure SQL Veritabanı, Sunucu veya Elastik Havuz Önerilen Eylemi için geçerli durum bilgilerini içerir.

Name Tür Description
actionInitiatedBy

RecommendedActionInitiatedBy

Bu önerilen eylemin yürütülmesini kimin başlattığını alır. Olası Değer şunlardır: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirimde bulunduğunda. Sistem -> Bu danışmanın otomatik yürütme durumu 'Etkin' olarak ayarlandığında, bu durumda sistem bunu uyguladı.

currentValue

RecommendedActionCurrentState

Önerilen eylemin bulunduğu geçerli durum. Yaygın olarak kullanılan bazı durumlar şunlardır: Etkin -> önerilen eylem etkindir ve henüz hiçbir işlem yapılmamıştır. Beklemede -> önerilen eylem için onaylanır ve yürütmeyi bekler. Yürütülüyor -> kullanıcı veritabanına önerilen eylem uygulanıyor. Doğrulama -> önerilen eylem uygulandı ve sistem tarafından yararlılığı doğrulanıyor. Başarılı -> önerilen eylem uygulandı ve doğrulama sırasında iyileştirme bulundu. Geri Döndürme Bekleniyor -> doğrulama çok az geliştirme buldu veya hiç gelişme bulamadı, bu nedenle önerilen eylem geri döndürme için sıraya alındı veya kullanıcı el ile geri döndü. Geri alma -> Önerilen eylem uygulanırken yapılan değişiklikler kullanıcı veritabanında geri döndürülüyor. Geri döndürülür -> kullanıcı veritabanında önerilen eylem tarafından yapılan değişiklikler başarıyla geri döndürülür. Yoksayıldı -> kullanıcı önerilen eylemi açıkça yoksaydı/atmış.

lastModified

string

Durumun en son değiştirildiği zamanı alır