Delen via


Data Sources - Create Or Update

Hiermee maakt u een nieuwe gegevensbron of werkt u een gegevensbron bij als deze al bestaat.

PUT {endpoint}/datasources('{dataSourceName}')?api-version=2023-11-01

URI-parameters

Name In Vereist Type Description
dataSourceName
path True

string

De naam van de gegevensbron die moet worden gemaakt of bijgewerkt.

endpoint
path True

string

De eindpunt-URL van de zoekservice.

api-version
query True

string

Client-API-versie.

Aanvraagkoptekst

Name Vereist Type Description
x-ms-client-request-id

string

uuid

De tracerings-id die met de aanvraag is verzonden om te helpen bij foutopsporing.

If-Match

string

Definieert de If-Match voorwaarde. De bewerking wordt alleen uitgevoerd als de ETag op de server overeenkomt met deze waarde.

If-None-Match

string

Definieert de voorwaarde If-None-Match. De bewerking wordt alleen uitgevoerd als de ETag op de server niet overeenkomt met deze waarde.

Prefer True

string

Voor HTTP PUT-aanvragen geeft de service de opdracht om de gemaakte/bijgewerkte resource te retourneren wanneer deze is geslaagd.

Aanvraagbody

Name Vereist Type Description
container True

SearchIndexerDataContainer

De gegevenscontainer voor de gegevensbron.

credentials True

DataSourceCredentials

Referenties voor de gegevensbron.

name True

string

De naam van de gegevensbron.

type True

SearchIndexerDataSourceType

Het type van de gegevensbron.

@odata.etag

string

De ETag van de gegevensbron.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Het detectiebeleid voor gegevenswijziging voor de gegevensbron.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Het detectiebeleid voor gegevensverwijdering voor de gegevensbron.

description

string

De beschrijving van de gegevensbron.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw gegevensbron als u volledige zekerheid wilt dat niemand, zelfs Microsoft, de definitie van uw gegevensbron kan ontsleutelen. Zodra u de definitie van uw gegevensbron hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap in te stellen op null. U kunt deze eigenschap indien nodig wijzigen als u uw versleutelingssleutel wilt roteren; De definitie van uw gegevensbron wordt niet beïnvloed. Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die zijn gemaakt op of na 1 januari 2019.

Antwoorden

Name Type Description
200 OK

SearchIndexerDataSource

201 Created

SearchIndexerDataSource

Other Status Codes

SearchError

Foutreactie.

Voorbeelden

SearchServiceCreateOrUpdateDataSource

Sample Request

PUT https://myservice.search.windows.net/datasources('mydatasource')?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": 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
  }
}

Definities

Name Description
AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice, die wordt gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

DataSourceCredentials

Vertegenwoordigt referenties die kunnen worden gebruikt om verbinding te maken met een gegevensbron.

HighWaterMarkChangeDetectionPolicy

Definieert een detectiebeleid voor gegevenswijzigingen dat wijzigingen vastlegt op basis van de waarde van een kolom met hoge watermarkeringen.

SearchError

Beschrijft een foutvoorwaarde voor de API.

SearchIndexerDataContainer

Vertegenwoordigt informatie over de entiteit (zoals Azure SQL tabel of CosmosDB-verzameling) die wordt geïndexeerd.

SearchIndexerDataSource

Vertegenwoordigt een definitie van een gegevensbron, die kan worden gebruikt om een indexeerfunctie te configureren.

SearchIndexerDataSourceType

Definieert het type van een gegevensbron.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt voor het versleutelen of ontsleutelen van data-at-rest in uw zoekservice, zoals indexen en synoniemenkaarten.

SoftDeleteColumnDeletionDetectionPolicy

Definieert een detectiebeleid voor gegevensverwijdering dat een strategie voor voorlopig verwijderen implementeert. Hiermee wordt bepaald of een item moet worden verwijderd op basis van de waarde van een aangewezen kolom 'voorlopig verwijderen'.

SqlIntegratedChangeTrackingPolicy

Definieert een detectiebeleid voor gegevenswijzigingen waarmee wijzigingen worden vastgelegd met behulp van de functie Geïntegreerde Wijzigingen bijhouden van Azure SQL Database.

AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice, die wordt gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

Name Type Description
applicationId

string

Een AAD-toepassings-id waaraan de vereiste toegangsmachtigingen zijn verleend voor de Azure Key Vault die moet worden gebruikt bij het versleutelen van uw data-at-rest. De toepassings-id moet niet worden verward met de object-id voor uw AAD-toepassing.

applicationSecret

string

De verificatiesleutel van de opgegeven AAD-toepassing.

DataSourceCredentials

Vertegenwoordigt referenties die kunnen worden gebruikt om verbinding te maken met een gegevensbron.

Name Type Description
connectionString

string

De verbindingsreeks voor de gegevensbron. Stel in op <unchanged> (met vierkante haken) als u de verbindingsreeks niet wilt bijwerken. Stel in op <redacted> als u de verbindingsreeks-waarde uit de gegevensbron wilt verwijderen.

HighWaterMarkChangeDetectionPolicy

Definieert een detectiebeleid voor gegevenswijzigingen dat wijzigingen vastlegt op basis van de waarde van een kolom met hoge watermarkeringen.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

Een URI-fragment dat het type detectiebeleid voor gegevenswijziging aangeeft.

highWaterMarkColumnName

string

De naam van de kolom hoogwatermarkering.

SearchError

Beschrijft een foutvoorwaarde voor de API.

Name Type Description
code

string

Een van een door de server gedefinieerde set foutcodes.

details

SearchError[]

Een matrix met details over specifieke fouten die tot deze gerapporteerde fout hebben geleid.

message

string

Een door mensen leesbare weergave van de fout.

SearchIndexerDataContainer

Vertegenwoordigt informatie over de entiteit (zoals Azure SQL tabel of CosmosDB-verzameling) die wordt geïndexeerd.

Name Type Description
name

string

De naam van de tabel of weergave (voor Azure SQL gegevensbron) of verzameling (voor CosmosDB-gegevensbron) die wordt geïndexeerd.

query

string

Een query die wordt toegepast op deze gegevenscontainer. De syntaxis en betekenis van deze parameter is gegevensbronspecifiek. Niet ondersteund door Azure SQL-gegevensbronnen.

SearchIndexerDataSource

Vertegenwoordigt een definitie van een gegevensbron, die kan worden gebruikt om een indexeerfunctie te configureren.

Name Type Description
@odata.etag

string

De ETag van de gegevensbron.

container

SearchIndexerDataContainer

De gegevenscontainer voor de gegevensbron.

credentials

DataSourceCredentials

Referenties voor de gegevensbron.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Het detectiebeleid voor gegevenswijziging voor de gegevensbron.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Het detectiebeleid voor gegevensverwijdering voor de gegevensbron.

description

string

De beschrijving van de gegevensbron.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw gegevensbron als u volledige zekerheid wilt dat niemand, zelfs Microsoft, de definitie van uw gegevensbron kan ontsleutelen. Zodra u de definitie van uw gegevensbron hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap in te stellen op null. U kunt deze eigenschap indien nodig wijzigen als u uw versleutelingssleutel wilt roteren; De definitie van uw gegevensbron wordt niet beïnvloed. Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die zijn gemaakt op of na 1 januari 2019.

name

string

De naam van de gegevensbron.

type

SearchIndexerDataSourceType

Het type van de gegevensbron.

SearchIndexerDataSourceType

Definieert het type van een gegevensbron.

Name Type Description
adlsgen2

string

Geeft een ADLS Gen2-gegevensbron aan.

azureblob

string

Geeft een Azure Blob-gegevensbron aan.

azuresql

string

Geeft een Azure SQL gegevensbron aan.

azuretable

string

Geeft een Azure Table-gegevensbron aan.

cosmosdb

string

Geeft een CosmosDB-gegevensbron aan.

mysql

string

Geeft een MySql-gegevensbron aan.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt voor het versleutelen of ontsleutelen van data-at-rest in uw zoekservice, zoals indexen en synoniemenkaarten.

Name Type Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Optionele Azure Active Directory-referenties die worden gebruikt voor toegang tot uw Azure Key Vault. Niet vereist als u in plaats daarvan een beheerde identiteit gebruikt.

keyVaultKeyName

string

De naam van uw Azure Key Vault sleutel die moet worden gebruikt om uw data-at-rest te versleutelen.

keyVaultKeyVersion

string

De versie van uw Azure Key Vault sleutel die moet worden gebruikt voor het versleutelen van uw data-at-rest.

keyVaultUri

string

De URI van uw Azure Key Vault, ook wel DNS-naam genoemd, die de sleutel bevat die moet worden gebruikt om uw data-at-rest te versleutelen. Een voorbeeld van een URI kan zijn https://my-keyvault-name.vault.azure.net.

SoftDeleteColumnDeletionDetectionPolicy

Definieert een detectiebeleid voor gegevensverwijdering dat een strategie voor voorlopig verwijderen implementeert. Hiermee wordt bepaald of een item moet worden verwijderd op basis van de waarde van een aangewezen kolom 'voorlopig verwijderen'.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

Een URI-fragment dat het type detectiebeleid voor gegevensverwijdering aangeeft.

softDeleteColumnName

string

De naam van de kolom die moet worden gebruikt voor detectie van voorlopig verwijderen.

softDeleteMarkerValue

string

De markeringswaarde waarmee een item wordt aangegeven als verwijderd.

SqlIntegratedChangeTrackingPolicy

Definieert een detectiebeleid voor gegevenswijzigingen waarmee wijzigingen worden vastgelegd met behulp van de functie Geïntegreerde Wijzigingen bijhouden van Azure SQL Database.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

Een URI-fragment dat het type detectiebeleid voor gegevenswijziging aangeeft.