Database Recommended Actions - Update

Veritabanı önerilen eylemini Güncelleştirmeler.

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/advisors/{advisorName}/recommendedActions/{recommendedActionName}?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ı.

recommendedActionName
path True

string

Veritabanı Önerilen Eyleminin 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ü.

İstek Gövdesi

Name Gerekli Tür Description
properties.state True

RecommendedActionStateInfo

Önerilen eylemin geçerli durumunun bilgilerini alır.

Yanıtlar

Name Tür Description
200 OK

RecommendedAction

Belirtilen veritabanı önerilen eylemi başarıyla güncelleştirildi.

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 unicode karakter içeriyor.

  • 400 InvalidRecommendedActionUpsertRequest - Güncelleştirme önerilen eylem isteği gövdesi yok veya özellik ya da durum nesnesi yok.

  • 400 InvalidRecommendedActionState - Önerilen eylem için belirtilen durum geçersiz

  • 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 Desteklenmiyor - Bu işlev desteklenmiyor.

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

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

Örnekler

Sample Request

PATCH 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/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB?api-version=2021-11-01

{
  "properties": {
    "state": {
      "currentValue": "Pending"
    }
  }
}

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": "Pending",
      "actionInitiatedBy": "User",
      "lastModified": "2017-06-20T15:11:15Z"
    },
    "isExecutableAction": true,
    "isRevertableAction": true,
    "isArchivedAction": false,
    "executeActionInitiatedBy": "User",
    "executeActionInitiatedTime": "2017-06-20T15:11:15Z",
    "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]"
    }
  }
}

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 geçerli durumunda. 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 onaylandı ve yürütmeyi bekliyor. 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ştirme bulamadı, bu nedenle önerilen eylem geri döndürme için kuyruğa alındı veya kullanıcı el ile geri döndü. Geri döndürme -> Ö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ı/atladı.

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: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirildiğinde. 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 hata durumuna geçirilip getirimediğini ve neden hata ayrıntılarını alır.

properties.estimatedImpact

RecommendedActionImpactRecord[]

Tahmini CPU kazancı, Tahmini Disk Alanı değişikliği gibi önerilen bu 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ütülmesi 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ıç saati

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ürme için onaylandığı zamanı alır.

properties.revertActionStartTime

string

Sistemin kullanıcı kaynağında önerilen bu eylemin değişikliklerini geri döndürmeye başladığı zamanı alır. Örneğin, dizin bırakmanın yürütülürken olduğu 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 geçerli durumunun bilgilerini alır.

properties.timeSeries

RecommendedActionMetricInfo[]

Bu önerilen eylemin ölçümlerinin 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 geçerli durumunda. 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 onaylandı ve yürütmeyi bekliyor. 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ştirme bulamadı, bu nedenle önerilen eylem geri döndürme için kuyruğa alındı veya kullanıcı el ile geri döndü. Geri döndürme -> Ö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ı/atladı.

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 hata durumuna geçme 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 olarak 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: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirildiğinde. 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ğer için 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

Bu MetricInfo tarafından verilen zaman aralığındaki ölçümün değerini 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: Kullanıcı -> Kullanıcı önerilen eylemi uygulamak için sisteme açıkça bildirildiğinde. Sistem -> Bu danışmanın otomatik yürütme durumu 'Etkin' olarak ayarlandığında, bu durumda sistem bunu uyguladı.

currentValue

RecommendedActionCurrentState

Önerilen eylemin geçerli durumunda. 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 onaylandı ve yürütmeyi bekliyor. 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ştirme bulamadı, bu nedenle önerilen eylem geri döndürme için kuyruğa alındı veya kullanıcı el ile geri döndü. Geri döndürme -> Ö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ı/atladı.

lastModified

string

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