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=2024-07-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 is verzonden met de aanvraag om hulp te bieden bij foutopsporing.

If-Match

string

Hiermee definieert u de voorwaarde If-Match. 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 u de service de opdracht om de gemaakte/bijgewerkte resource te retourneren bij succes.

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 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 in Azure Key Vault maakt. Deze sleutel wordt gebruikt om een extra versleutelings-at-rest-niveau te bieden voor uw gegevensbrondefinitie wanneer u volledige zekerheid wilt dat niemand, zelfs Microsoft, uw definitie van de 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 draaien; 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

ErrorResponse

Foutreactie.

Voorbeelden

SearchServiceCreateOrUpdateDataSource

Voorbeeldaanvraag

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

Voorbeeldrespons

{
  "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.

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

ErrorDetail

De foutdetails.

ErrorResponse

Foutreactie

HighWaterMarkChangeDetectionPolicy

Hiermee definieert u een beleid voor gegevenswijzigingsdetectie waarmee wijzigingen worden vastgelegd op basis van de waarde van een kolom met hoge watermarkeringen.

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

Hiermee definieert u het type 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, zoals indexen en synoniemenkaarten.

SoftDeleteColumnDeletionDetectionPolicy

Definieert een beleid voor het detecteren van gegevensverwijdering waarmee een strategie voor voorlopig verwijderen wordt geïmplementeerd. Hiermee wordt bepaald of een item moet worden verwijderd op basis van de waarde van een aangewezen kolom voor voorlopig verwijderen.

SqlIntegratedChangeTrackingPolicy

Hiermee definieert u een beleid voor gegevenswijzigingsdetectie waarmee wijzigingen worden vastgelegd met behulp van de geïntegreerde functie 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 mag 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. Ingesteld op <unchanged> (met vierkante haken) als u de verbindingsreeks niet wilt bijwerken. Ingesteld op <redacted> als u de waarde van de verbindingsreeks uit de gegevensbron wilt verwijderen.

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

Name Type Description
info

object

De aanvullende informatie.

type

string

Het extra informatietype.

ErrorDetail

De foutdetails.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

De fout bevat aanvullende informatie.

code

string

De foutcode.

details

ErrorDetail[]

De foutdetails.

message

string

Het foutbericht.

target

string

Het foutdoel.

ErrorResponse

Foutreactie

Name Type Description
error

ErrorDetail

Het foutobject.

HighWaterMarkChangeDetectionPolicy

Hiermee definieert u een beleid voor gegevenswijzigingsdetectie waarmee wijzigingen worden vastgelegd 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 met hoge watermarkeringen.

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 zijn 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 in Azure Key Vault maakt. Deze sleutel wordt gebruikt om een extra versleutelings-at-rest-niveau te bieden voor uw gegevensbrondefinitie wanneer u volledige zekerheid wilt dat niemand, zelfs Microsoft, uw definitie van de 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 draaien; 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 gegevensbron.

SearchIndexerDataSourceType

Hiermee definieert u het type 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, 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 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 om uw data-at-rest te versleutelen.

keyVaultUri

string

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

SoftDeleteColumnDeletionDetectionPolicy

Definieert een beleid voor het detecteren van gegevensverwijdering waarmee een strategie voor voorlopig verwijderen wordt geïmplementeerd. Hiermee wordt bepaald of een item moet worden verwijderd op basis van de waarde van een aangewezen kolom voor 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 geïdentificeerd als verwijderd.

SqlIntegratedChangeTrackingPolicy

Hiermee definieert u een beleid voor gegevenswijzigingsdetectie waarmee wijzigingen worden vastgelegd met behulp van de geïntegreerde functie 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.