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-05-01-preview
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-05-01-preview&ignoreResetRequirements={ignoreResetRequirements}

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.

ignoreResetRequirements
query

boolean

Hiermee worden de vereisten voor het opnieuw instellen van de cache genegeerd.

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:

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.

identity SearchIndexerDataIdentity:

Een expliciete beheerde identiteit die moet worden gebruikt voor deze gegevensbron. Als dit niet is opgegeven en de verbindingsreeks een beheerde identiteit is, wordt de door het systeem toegewezen beheerde identiteit gebruikt. Indien niet opgegeven, blijft de waarde ongewijzigd. Als 'geen' is opgegeven, wordt de waarde van deze eigenschap gewist.

Antwoorden

Name Type Description
200 OK

SearchIndexerDataSource

201 Created

SearchIndexerDataSource

Other Status Codes

ErrorResponse

Foutreactie.

Voorbeelden

SearchServiceCreateOrUpdateDataSource

Sample Request

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

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

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

NativeBlobSoftDeleteDeletionDetectionPolicy

Definieert een detectiebeleid voor gegevensverwijdering dat gebruikmaakt van de systeemeigen functie voor voorlopig verwijderen van Azure Blob Storage voor verwijderingsdetectie.

SearchIndexerDataContainer

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

SearchIndexerDataNoneIdentity

Hiermee wist u de identiteitseigenschap van een gegevensbron.

SearchIndexerDataSource

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

SearchIndexerDataSourceType

Definieert het type van een gegevensbron.

SearchIndexerDataUserAssignedIdentity

Hiermee geeft u de identiteit op voor een gegevensbron die moet worden gebruikt.

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

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

Name Type Description
info

object

De aanvullende informatie.

type

string

Het type aanvullende informatie.

ErrorDetail

De foutdetails.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

Aanvullende informatie over de fout.

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

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.

NativeBlobSoftDeleteDeletionDetectionPolicy

Definieert een detectiebeleid voor gegevensverwijdering dat gebruikmaakt van de systeemeigen functie voor voorlopig verwijderen van Azure Blob Storage voor verwijderingsdetectie.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy

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

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.

SearchIndexerDataNoneIdentity

Hiermee wist u de identiteitseigenschap van een gegevensbron.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.DataNoneIdentity

Een URI-fragment dat het type identiteit aangeeft.

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:

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.

identity SearchIndexerDataIdentity:

Een expliciete beheerde identiteit die moet worden gebruikt voor deze gegevensbron. Als dit niet is opgegeven en de verbindingsreeks een beheerde identiteit is, wordt de door het systeem toegewezen beheerde identiteit gebruikt. Indien niet opgegeven, blijft de waarde ongewijzigd. Als 'geen' is opgegeven, wordt de waarde van deze eigenschap gewist.

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.

onelake

string

Geeft een Microsoft Fabric OneLake-gegevensbron aan.

SearchIndexerDataUserAssignedIdentity

Hiermee geeft u de identiteit op voor een gegevensbron die moet worden gebruikt.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.DataUserAssignedIdentity

Een URI-fragment dat het type identiteit aangeeft.

userAssignedIdentity

string

De volledig gekwalificeerde Azure-resource-id van een door de gebruiker toegewezen beheerde identiteit, meestal in de vorm '/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId', die moet zijn toegewezen aan de zoekservice.

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 een beheerde identiteit gebruikt.

identity SearchIndexerDataIdentity:

Een expliciete beheerde identiteit die moet worden gebruikt voor deze versleutelingssleutel. Als dit niet is opgegeven en de eigenschap toegangsreferenties null is, wordt de door het systeem toegewezen beheerde identiteit gebruikt. Als de expliciete identiteit bij het bijwerken van de resource niet is opgegeven, blijft deze ongewijzigd. Als 'geen' is opgegeven, wordt de waarde van deze eigenschap gewist.

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.