Data Sources - Create

Yeni bir veri kaynağı oluşturur.

POST {endpoint}/datasources?api-version=2023-11-01

URI Parametreleri

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

string

Arama hizmetinin uç nokta URL'si.

api-version
query True

string

İstemci Api Sürümü.

İstek Başlığı

Name Gerekli Tür Description
x-ms-client-request-id

string

uuid

Hata ayıklamaya yardımcı olmak için istekle birlikte gönderilen izleme kimliği.

İstek Gövdesi

Name Gerekli Tür Description
container True

SearchIndexerDataContainer

Veri kaynağının veri kapsayıcısı.

credentials True

DataSourceCredentials

Veri kaynağının kimlik bilgileri.

name True

string

Veri kaynağının adı.

type True

SearchIndexerDataSourceType

Veri kaynağının türü.

@odata.etag

string

Veri kaynağının ETag'i.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Veri kaynağı için veri değişikliği algılama ilkesi.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Veri kaynağı için veri silme algılama ilkesi.

description

string

Veri kaynağının açıklaması.

encryptionKey

SearchResourceEncryptionKey

Azure Key Vault'de oluşturduğunuz şifreleme anahtarının açıklaması. Bu anahtar, veri kaynağı tanımınızın şifresini microsoft bile olmayan hiç kimsenin çözemediğini tam olarak güvenceye almak istediğinizde veri kaynağı tanımınız için ek bir bekleyen şifreleme düzeyi sağlamak için kullanılır. Veri kaynağı tanımınızı şifreledikten sonra her zaman şifrelenmiş olarak kalır. Arama hizmeti bu özelliği null olarak ayarlama girişimlerini yoksayar. Şifreleme anahtarınızı döndürmek istiyorsanız bu özelliği gerektiği gibi değiştirebilirsiniz; Veri kaynağı tanımınız etkilenmez. Müşteri tarafından yönetilen anahtarlarla şifreleme ücretsiz arama hizmetleri için kullanılamaz ve yalnızca 1 Ocak 2019 veya sonrasında oluşturulan ücretli hizmetler için kullanılabilir.

Yanıtlar

Name Tür Description
201 Created

SearchIndexerDataSource

Other Status Codes

SearchError

Hata yanıtı.

Örnekler

SearchServiceCreateDataSource

Sample Request

POST https://myservice.search.windows.net/datasources?api-version=2023-11-01

{
  "name": "mydocdbdatasource",
  "description": "My Cosmos DB data source.",
  "type": "cosmosdb",
  "credentials": {
    "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId"
  },
  "container": {
    "name": "myDocDbCollectionId",
    "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "_ts"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  },
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample Response

{
  "name": "mydocdbdatasource",
  "description": "My Cosmos DB data source.",
  "type": "cosmosdb",
  "credentials": {
    "connectionString": null
  },
  "container": {
    "name": "myDocDbCollectionId",
    "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
  },
  "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "_ts"
  },
  "dataDeletionDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
    "softDeleteColumnName": "isDeleted",
    "softDeleteMarkerValue": "true"
  },
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": null
    }
  }
}

Tanımlar

Name Description
AzureActiveDirectoryApplicationCredentials

Arama hizmetiniz için oluşturulan ve Azure Key Vault depolanan şifreleme anahtarlarına kimliği doğrulanmış erişim için kullanılan kayıtlı bir uygulamanın kimlik bilgileri.

DataSourceCredentials

Bir veri kaynağına bağlanmak için kullanılabilecek kimlik bilgilerini temsil eder.

HighWaterMarkChangeDetectionPolicy

Yüksek su işareti sütununun değerine göre değişiklikleri yakalayan bir veri değişikliği algılama ilkesi tanımlar.

SearchError

API için bir hata koşulu açıklar.

SearchIndexerDataContainer

Dizine eklenecek varlık (Azure SQL tablosu veya CosmosDB koleksiyonu gibi) hakkındaki bilgileri temsil eder.

SearchIndexerDataSource

Dizin oluşturucu yapılandırmak için kullanılabilecek bir veri kaynağı tanımını temsil eder.

SearchIndexerDataSourceType

Veri kaynağının türünü tanımlar.

SearchResourceEncryptionKey

Azure Key Vault'da müşteri tarafından yönetilen bir şifreleme anahtarı. Oluşturduğunuz ve yönettiğiniz anahtarlar, dizinler ve eş anlamlı eşlemeler gibi arama hizmetinizdeki bekleyen verileri şifrelemek veya şifresini çözmek için kullanılabilir.

SoftDeleteColumnDeletionDetectionPolicy

Geçici silme stratejisi uygulayan bir veri silme algılama ilkesi tanımlar. Bir öğenin, belirlenmiş bir 'geçici silme' sütununun değerine göre silinip silinmeyeceğini belirler.

SqlIntegratedChangeTrackingPolicy

Azure SQL Veritabanının Tümleşik Değişiklik İzleme özelliğini kullanarak değişiklikleri yakalayan bir veri değişikliği algılama ilkesi tanımlar.

AzureActiveDirectoryApplicationCredentials

Arama hizmetiniz için oluşturulan ve Azure Key Vault depolanan şifreleme anahtarlarına kimliği doğrulanmış erişim için kullanılan kayıtlı bir uygulamanın kimlik bilgileri.

Name Tür Description
applicationId

string

Bekleyen verilerinizi şifrelerken kullanılacak Azure Key Vault gerekli erişim izinlerine sahip bir AAD Uygulama Kimliği. Uygulama Kimliği, AAD Uygulamanızın Nesne Kimliği ile karıştırılmamalıdır.

applicationSecret

string

Belirtilen AAD uygulamasının kimlik doğrulama anahtarı.

DataSourceCredentials

Bir veri kaynağına bağlanmak için kullanılabilecek kimlik bilgilerini temsil eder.

Name Tür Description
connectionString

string

Veri kaynağının bağlantı dizesi. <unchanged> bağlantı dizesi güncelleştirilmesini istemiyorsanız olarak ayarlayın (köşeli ayraçlarla). <redacted> veri kaynağından bağlantı dizesi değerini kaldırmak istiyorsanız olarak ayarlayın.

HighWaterMarkChangeDetectionPolicy

Yüksek su işareti sütununun değerine göre değişiklikleri yakalayan bir veri değişikliği algılama ilkesi tanımlar.

Name Tür Description
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

Veri değişikliği algılama ilkesinin türünü belirten bir URI parçası.

highWaterMarkColumnName

string

Yüksek su işareti sütununun adı.

SearchError

API için bir hata koşulu açıklar.

Name Tür Description
code

string

Sunucu tanımlı hata kodları kümesinden biri.

details

SearchError[]

Bu bildirilen hataya yol açan belirli hatalarla ilgili bir dizi ayrıntı.

message

string

Hatanın insanlar tarafından okunabilir bir gösterimi.

SearchIndexerDataContainer

Dizine eklenecek varlık (Azure SQL tablosu veya CosmosDB koleksiyonu gibi) hakkındaki bilgileri temsil eder.

Name Tür Description
name

string

Dizine eklenecek tablonun veya görünümün (Azure SQL veri kaynağı için) veya koleksiyonun (CosmosDB veri kaynağı için) adı.

query

string

Bu veri kapsayıcısına uygulanan sorgu. Bu parametrenin söz dizimi ve anlamı veri kaynağına özgüdür. Azure SQL veri kaynakları tarafından desteklenmez.

SearchIndexerDataSource

Dizin oluşturucu yapılandırmak için kullanılabilecek bir veri kaynağı tanımını temsil eder.

Name Tür Description
@odata.etag

string

Veri kaynağının ETag'i.

container

SearchIndexerDataContainer

Veri kaynağının veri kapsayıcısı.

credentials

DataSourceCredentials

Veri kaynağının kimlik bilgileri.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Veri kaynağı için veri değişikliği algılama ilkesi.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Veri kaynağı için veri silme algılama ilkesi.

description

string

Veri kaynağının açıklaması.

encryptionKey

SearchResourceEncryptionKey

Azure Key Vault'de oluşturduğunuz şifreleme anahtarının açıklaması. Bu anahtar, veri kaynağı tanımınızın şifresini microsoft bile olmayan hiç kimsenin çözemediğini tam olarak güvenceye almak istediğinizde veri kaynağı tanımınız için ek bir bekleyen şifreleme düzeyi sağlamak için kullanılır. Veri kaynağı tanımınızı şifreledikten sonra her zaman şifrelenmiş olarak kalır. Arama hizmeti bu özelliği null olarak ayarlama girişimlerini yoksayar. Şifreleme anahtarınızı döndürmek istiyorsanız bu özelliği gerektiği gibi değiştirebilirsiniz; Veri kaynağı tanımınız etkilenmez. Müşteri tarafından yönetilen anahtarlarla şifreleme ücretsiz arama hizmetleri için kullanılamaz ve yalnızca 1 Ocak 2019 veya sonrasında oluşturulan ücretli hizmetler için kullanılabilir.

name

string

Veri kaynağının adı.

type

SearchIndexerDataSourceType

Veri kaynağının türü.

SearchIndexerDataSourceType

Veri kaynağının türünü tanımlar.

Name Tür Description
adlsgen2

string

ADLS 2. Nesil veri kaynağını gösterir.

azureblob

string

Azure Blob veri kaynağını gösterir.

azuresql

string

bir Azure SQL veri kaynağını gösterir.

azuretable

string

Azure Tablo veri kaynağını gösterir.

cosmosdb

string

CosmosDB veri kaynağını gösterir.

mysql

string

MySql veri kaynağını gösterir.

SearchResourceEncryptionKey

Azure Key Vault'da müşteri tarafından yönetilen bir şifreleme anahtarı. Oluşturduğunuz ve yönettiğiniz anahtarlar, dizinler ve eş anlamlı eşlemeler gibi arama hizmetinizdeki bekleyen verileri şifrelemek veya şifresini çözmek için kullanılabilir.

Name Tür Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Azure Key Vault erişmek için kullanılan isteğe bağlı Azure Active Directory kimlik bilgileri. Bunun yerine yönetilen kimlik kullanılıyorsa gerekli değildir.

keyVaultKeyName

string

Bekleyen verilerinizi şifrelemek için kullanılacak Azure Key Vault anahtarınızın adı.

keyVaultKeyVersion

string

Bekleyen verilerinizi şifrelemek için kullanılacak Azure Key Vault anahtarınızın sürümü.

keyVaultUri

string

Bekleyen verilerinizi şifrelemek için kullanılacak anahtarı içeren DNS adı olarak da adlandırılan Azure Key Vault URI'niz. Örnek bir URI olabilir https://my-keyvault-name.vault.azure.net.

SoftDeleteColumnDeletionDetectionPolicy

Geçici silme stratejisi uygulayan bir veri silme algılama ilkesi tanımlar. Bir öğenin, belirlenmiş bir 'geçici silme' sütununun değerine göre silinip silinmeyeceğini belirler.

Name Tür Description
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

Veri silme algılama ilkesinin türünü belirten bir URI parçası.

softDeleteColumnName

string

Geçici silme algılaması için kullanılacak sütunun adı.

softDeleteMarkerValue

string

Bir öğeyi silinmiş olarak tanımlayan işaretçi değeri.

SqlIntegratedChangeTrackingPolicy

Azure SQL Veritabanının Tümleşik Değişiklik İzleme özelliğini kullanarak değişiklikleri yakalayan bir veri değişikliği algılama ilkesi tanımlar.

Name Tür Description
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

Veri değişikliği algılama ilkesinin türünü belirten bir URI parçası.