Data Sources - Create Or Update

Vytvoří nový zdroj dat nebo aktualizuje zdroj dat, pokud již existuje.

PUT {endpoint}/datasources('{dataSourceName}')?api-version=2023-10-01-Preview
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2023-10-01-Preview&ignoreResetRequirements={ignoreResetRequirements}

Parametry identifikátoru URI

Name V Vyžadováno Typ Description
dataSourceName
path True

string

Název zdroje dat, který chcete vytvořit nebo aktualizovat.

endpoint
path True

string

Adresa URL koncového bodu vyhledávací služby.

api-version
query True

string

Verze rozhraní API klienta.

ignoreResetRequirements
query

boolean

Ignoruje požadavky na resetování mezipaměti.

Hlavička požadavku

Name Vyžadováno Typ Description
x-ms-client-request-id

string

uuid

ID sledování odeslané spolu s požadavkem na pomoc s laděním.

If-Match

string

Definuje If-Match podmínku. Operace se provede pouze v případě, že značka ETag na serveru odpovídá této hodnotě.

If-None-Match

string

Definuje podmínku If-None-Match. Operace se provede pouze v případě, že značka ETag na serveru neodpovídá této hodnotě.

Prefer True

string

V případě požadavků HTTP PUT dává službě pokyn, aby v případě úspěchu vrátila vytvořený nebo aktualizovaný prostředek.

Text požadavku

Name Vyžadováno Typ Description
container True

SearchIndexerDataContainer

Kontejner dat pro zdroj dat.

credentials True

DataSourceCredentials

Přihlašovací údaje pro zdroj dat.

name True

string

Název zdroje dat.

type True

SearchIndexerDataSourceType

Typ zdroje dat.

@odata.etag

string

Značka ETag zdroje dat.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Zásady detekce změn dat pro zdroj dat.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

Zásady zjišťování odstranění dat pro zdroj dat.

description

string

Popis zdroje dat.

encryptionKey

SearchResourceEncryptionKey

Popis šifrovacího klíče, který vytvoříte v Azure Key Vault. Tento klíč slouží k zajištění další úrovně šifrování neaktivních uložených uložených dat pro definici zdroje dat, když chcete mít plnou jistotu, že nikdo, dokonce ani Microsoft, nemůže dešifrovat definici zdroje dat. Jakmile definici zdroje dat zašifrujete, zůstane vždy zašifrovaná. Vyhledávací služba bude ignorovat pokusy o nastavení této vlastnosti na hodnotu null. Pokud chcete šifrovací klíč obměnit, můžete tuto vlastnost podle potřeby změnit. Na definici zdroje dat to nebude mít vliv. Šifrování pomocí klíčů spravovaných zákazníkem není k dispozici pro bezplatné vyhledávací služby a je k dispozici pouze pro placené služby vytvořené 1. ledna 2019 nebo později.

identity SearchIndexerDataIdentity:

Explicitní spravovaná identita, která se má použít pro tento zdroj dat. Pokud není zadaný a připojovací řetězec je spravovaná identita, použije se spravovaná identita přiřazená systémem. Pokud hodnotu nezadáte, zůstane beze změny. Pokud je zadána hodnota "none", hodnota této vlastnosti bude vymazána.

Odpovědi

Name Typ Description
200 OK

SearchIndexerDataSource

201 Created

SearchIndexerDataSource

Other Status Codes

SearchError

Chybová odpověď.

Příklady

SearchServiceCreateOrUpdateDataSource

Sample Request

PUT https://myservice.search.windows.net/datasources('mydatasource')?api-version=2023-10-01-Preview


{
  "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": null
  }
}

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": null
  }
}
{
  "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": null
  }
}

Definice

Name Description
AzureActiveDirectoryApplicationCredentials

Přihlašovací údaje registrované aplikace vytvořené pro vaši vyhledávací službu, které slouží k ověřenému přístupu k šifrovacím klíčům uloženým v Azure Key Vault.

DataSourceCredentials

Představuje přihlašovací údaje, které lze použít pro připojení ke zdroji dat.

HighWaterMarkChangeDetectionPolicy

Definuje zásadu detekce změn dat, která zachycuje změny na základě hodnoty sloupce horní meze.

NativeBlobSoftDeleteDeletionDetectionPolicy

Definuje zásadu detekce odstranění dat využívající nativní funkci obnovitelného odstranění Azure Blob Storage pro detekci odstranění.

SearchError

Popisuje chybovou podmínku rozhraní API.

SearchIndexerDataContainer

Představuje informace o entitě (například Azure SQL tabulce nebo kolekci CosmosDB), která se bude indexovat.

SearchIndexerDataNoneIdentity

Vymaže vlastnost identity zdroje dat.

SearchIndexerDataSource

Představuje definici zdroje dat, kterou lze použít ke konfiguraci indexeru.

SearchIndexerDataSourceType

Definuje typ zdroje dat.

SearchIndexerDataUserAssignedIdentity

Určuje identitu zdroje dat, který se má použít.

SearchResourceEncryptionKey

Šifrovací klíč spravovaný zákazníkem v Azure Key Vault. Klíče, které vytvoříte a spravujete, můžete použít k šifrování nebo dešifrování neaktivních uložených dat, jako jsou indexy a mapy synonym.

SoftDeleteColumnDeletionDetectionPolicy

Definuje zásadu detekce odstranění dat, která implementuje strategii obnovitelného odstranění. Určuje, zda má být položka odstraněna na základě hodnoty určeného sloupce obnovitelného odstranění.

SqlIntegratedChangeTrackingPolicy

Definuje zásadu detekce změn dat, která zaznamenává změny pomocí integrované funkce Change Tracking služby Azure SQL Database.

AzureActiveDirectoryApplicationCredentials

Přihlašovací údaje registrované aplikace vytvořené pro vaši vyhledávací službu, které slouží k ověřenému přístupu k šifrovacím klíčům uloženým v Azure Key Vault.

Name Typ Description
applicationId

string

ID aplikace AAD, kterému byla udělena požadovaná přístupová oprávnění k azure Key Vault, která se mají použít při šifrování neaktivních uložených dat. ID aplikace by se nemělo zaměňovat s ID objektu vaší aplikace AAD.

applicationSecret

string

Ověřovací klíč zadané aplikace AAD.

DataSourceCredentials

Představuje přihlašovací údaje, které lze použít pro připojení ke zdroji dat.

Name Typ Description
connectionString

string

Připojovací řetězec pro zdroj dat. Pokud nechcete, aby se připojovací řetězec aktualizovala, nastavte na <unchanged> hodnotu (se závorkami). Pokud chcete odebrat hodnotu připojovací řetězec ze zdroje dat, nastavte na <redacted> hodnotu .

HighWaterMarkChangeDetectionPolicy

Definuje zásadu detekce změn dat, která zachycuje změny na základě hodnoty sloupce horní meze.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

Fragment identifikátoru URI určující typ zásad detekce změn dat.

highWaterMarkColumnName

string

Název sloupce s horní vodohospodnou značkou

NativeBlobSoftDeleteDeletionDetectionPolicy

Definuje zásadu detekce odstranění dat využívající nativní funkci obnovitelného odstranění Azure Blob Storage pro detekci odstranění.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy

Fragment identifikátoru URI určující typ zásad detekce odstranění dat.

SearchError

Popisuje chybovou podmínku rozhraní API.

Name Typ Description
code

string

Jeden ze serverem definovaných chybových kódů.

details

SearchError[]

Pole podrobností o konkrétních chybách, které vedly k této nahlášené chybě.

message

string

Lidsky čitelná reprezentace chyby.

SearchIndexerDataContainer

Představuje informace o entitě (například Azure SQL tabulce nebo kolekci CosmosDB), která se bude indexovat.

Name Typ Description
name

string

Název tabulky nebo zobrazení (pro Azure SQL zdroj dat) nebo kolekce (pro zdroj dat Cosmos DB), které se budou indexovat.

query

string

Dotaz, který se použije na tento kontejner dat. Syntaxe a význam tohoto parametru je specifický pro zdroj dat. Nepodporuje Azure SQL zdroje dat.

SearchIndexerDataNoneIdentity

Vymaže vlastnost identity zdroje dat.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.DataNoneIdentity

Fragment identifikátoru URI určující typ identity.

SearchIndexerDataSource

Představuje definici zdroje dat, kterou lze použít ke konfiguraci indexeru.

Name Typ Description
@odata.etag

string

Značka ETag zdroje dat.

container

SearchIndexerDataContainer

Kontejner dat pro zdroj dat.

credentials

DataSourceCredentials

Přihlašovací údaje pro zdroj dat.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Zásady detekce změn dat pro zdroj dat.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

Zásady zjišťování odstranění dat pro zdroj dat.

description

string

Popis zdroje dat.

encryptionKey

SearchResourceEncryptionKey

Popis šifrovacího klíče, který vytvoříte v Azure Key Vault. Tento klíč slouží k zajištění další úrovně šifrování neaktivních uložených uložených dat pro definici zdroje dat, když chcete mít plnou jistotu, že nikdo, dokonce ani Microsoft, nemůže dešifrovat definici zdroje dat. Jakmile definici zdroje dat zašifrujete, zůstane vždy zašifrovaná. Vyhledávací služba bude ignorovat pokusy o nastavení této vlastnosti na hodnotu null. Pokud chcete šifrovací klíč obměnit, můžete tuto vlastnost podle potřeby změnit. Na definici zdroje dat to nebude mít vliv. Šifrování pomocí klíčů spravovaných zákazníkem není k dispozici pro bezplatné vyhledávací služby a je k dispozici pouze pro placené služby vytvořené 1. ledna 2019 nebo později.

identity SearchIndexerDataIdentity:

Explicitní spravovaná identita, která se má použít pro tento zdroj dat. Pokud není zadaný a připojovací řetězec je spravovaná identita, použije se spravovaná identita přiřazená systémem. Pokud hodnotu nezadáte, zůstane beze změny. Pokud je zadána hodnota "none", hodnota této vlastnosti bude vymazána.

name

string

Název zdroje dat.

type

SearchIndexerDataSourceType

Typ zdroje dat.

SearchIndexerDataSourceType

Definuje typ zdroje dat.

Name Typ Description
adlsgen2

string

Označuje zdroj dat ADLS Gen2.

azureblob

string

Označuje zdroj dat objektu blob Azure.

azuresql

string

Označuje Azure SQL zdroj dat.

azuretable

string

Označuje zdroj dat tabulky Azure.

cosmosdb

string

Označuje zdroj dat Cosmos DB.

mysql

string

Označuje zdroj dat MySql.

SearchIndexerDataUserAssignedIdentity

Určuje identitu zdroje dat, který se má použít.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.DataUserAssignedIdentity

Fragment identifikátoru URI určující typ identity.

userAssignedIdentity

string

Plně kvalifikované ID prostředku Azure spravované identity přiřazené uživatelem obvykle ve formátu /subscriptions/12345678-1234-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId, které by mělo být přiřazeno vyhledávací službě.

SearchResourceEncryptionKey

Šifrovací klíč spravovaný zákazníkem v Azure Key Vault. Klíče, které vytvoříte a spravujete, můžete použít k šifrování nebo dešifrování neaktivních uložených dat, jako jsou indexy a mapy synonym.

Name Typ Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Volitelné přihlašovací údaje Azure Active Directory používané pro přístup k azure Key Vault. Nevyžaduje se, pokud místo toho používáte spravovanou identitu.

identity SearchIndexerDataIdentity:

Explicitní spravovaná identita, která se má použít pro tento šifrovací klíč. Pokud není zadaný a vlastnost přihlašovacích údajů přístupu má hodnotu null, použije se spravovaná identita přiřazená systémem. Pokud po aktualizaci prostředku explicitní identita není určená, zůstane beze změny. Pokud je zadána hodnota "none", hodnota této vlastnosti bude vymazána.

keyVaultKeyName

string

Název klíče Azure Key Vault, který se má použít k šifrování neaktivních uložených dat.

keyVaultKeyVersion

string

Verze klíče Azure Key Vault, který se má použít k šifrování neaktivních uložených dat.

keyVaultUri

string

Identifikátor URI vašeho Key Vault Azure, označovaný také jako název DNS, který obsahuje klíč, který se má použít k šifrování neaktivních uložených dat. Příkladem identifikátoru URI může být https://my-keyvault-name.vault.azure.net.

SoftDeleteColumnDeletionDetectionPolicy

Definuje zásadu detekce odstranění dat, která implementuje strategii obnovitelného odstranění. Určuje, zda má být položka odstraněna na základě hodnoty určeného sloupce obnovitelného odstranění.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

Fragment identifikátoru URI určující typ zásad detekce odstranění dat.

softDeleteColumnName

string

Název sloupce, který se má použít k detekci obnovitelného odstranění.

softDeleteMarkerValue

string

Hodnota značky, která identifikuje položku jako odstraněnou.

SqlIntegratedChangeTrackingPolicy

Definuje zásadu detekce změn dat, která zaznamenává změny pomocí integrované funkce Change Tracking služby Azure SQL Database.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

Fragment identifikátoru URI určující typ zásad detekce změn dat.