Data Sources - Create Or Update
Erstellt eine neue Datenquelle oder aktualisiert eine Datenquelle, wenn sie bereits vorhanden ist.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-07-01
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
data
|
path | True |
string |
Der Name der zu erstellenden oder zu aktualisierenden Datenquelle. |
endpoint
|
path | True |
string |
Die Endpunkt-URL des Suchdiensts. |
api-version
|
query | True |
string |
Client-API-Version. |
Anforderungsheader
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Die Tracking-ID, die mit der Anforderung gesendet wurde, um beim Debuggen zu helfen. |
|
If-Match |
string |
Definiert die If-Match Bedingung. Der Vorgang wird nur ausgeführt, wenn das ETag auf dem Server mit diesem Wert übereinstimmt. |
|
If-None-Match |
string |
Definiert die If-None-Match-Bedingung. Der Vorgang wird nur ausgeführt, wenn das ETag auf dem Server nicht mit diesem Wert übereinstimmt. |
|
Prefer | True |
string |
Für HTTP PUT-Anforderungen weist der Dienst an, die erstellte/aktualisierte Ressource bei Erfolg zurückzugeben. |
Anforderungstext
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
container | True |
Der Datencontainer für die Datenquelle. |
|
credentials | True |
Anmeldeinformationen für die Datenquelle. |
|
name | True |
string |
Der Name der Datenquelle. |
type | True |
Der Typ der Datenquelle. |
|
@odata.etag |
string |
Das ETag der Datenquelle. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Die Datenänderungserkennungsrichtlinie für die Datenquelle. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Die Datenlöscherkennungsrichtlinie für die Datenquelle. |
|
description |
string |
Die Beschreibung der Datenquelle. |
|
encryptionKey |
Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Stufe der verschlüsselungsinternen Verschlüsselung für Ihre Datenquellendefinition bereitzustellen, wenn Sie eine vollständige Sicherheit wünschen, dass niemand, nicht einmal Microsoft, Ihre Datenquellendefinition entschlüsseln kann. Nachdem Sie Ihre Datenquellendefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft nach Bedarf ändern, wenn Sie den Verschlüsselungsschlüssel drehen möchten. Ihre Datenquellendefinition ist davon unberührt. Verschlüsselung mit vom Kunden verwalteten Schlüsseln steht nicht für kostenlose Suchdienste zur Verfügung und ist nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
Antworten
Name | Typ | Beschreibung |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Fehlerantwort. |
Beispiele
SearchServiceCreateOrUpdateDataSource
Beispielanforderung
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
}
}
Beispiel für eine Antwort
{
"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
}
}
Definitionen
Name | Beschreibung |
---|---|
Azure |
Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für authentifizierten Zugriff auf die im Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird. |
Data |
Stellt Anmeldeinformationen dar, die zum Herstellen einer Verbindung mit einer Datenquelle verwendet werden können. |
Error |
Der Ressourcenverwaltungsfehler zusätzliche Informationen. |
Error |
Das Fehlerdetails. |
Error |
Fehlerantwort |
High |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Wasserzeichenspalte erfasst. |
Search |
Stellt Informationen zur Entität (z. B. Azure SQL-Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird. |
Search |
Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann. |
Search |
Definiert den Typ einer Datenquelle. |
Search |
Ein vom Kunden verwalteter Verschlüsselungsschlüssel im Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten verwendet werden, z. B. Indizes und Synonymzuordnungen. |
Soft |
Definiert eine Datenlöscherkennungsrichtlinie, die eine Strategie für das vorläufige Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer festgelegten Spalte "vorläufiges Löschen" gelöscht werden soll. |
Sql |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe des Integrierten Änderungsnachverfolgungsfeatures von Azure SQL-Datenbank erfasst. |
AzureActiveDirectoryApplicationCredentials
Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für authentifizierten Zugriff auf die im Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird.
Name | Typ | Beschreibung |
---|---|---|
applicationId |
string |
Eine AAD-Anwendungs-ID, die die erforderlichen Zugriffsberechtigungen für den Azure Key Vault erteilt hat, die beim Verschlüsseln Ihrer ruhenden Daten verwendet werden sollen. Die Anwendungs-ID sollte nicht mit der Objekt-ID für Ihre AAD-Anwendung verwechselt werden. |
applicationSecret |
string |
Der Authentifizierungsschlüssel der angegebenen AAD-Anwendung. |
DataSourceCredentials
Stellt Anmeldeinformationen dar, die zum Herstellen einer Verbindung mit einer Datenquelle verwendet werden können.
Name | Typ | Beschreibung |
---|---|---|
connectionString |
string |
Die Verbindungszeichenfolge für die Datenquelle. Legen Sie diesen Wert auf |
ErrorAdditionalInfo
Der Ressourcenverwaltungsfehler zusätzliche Informationen.
Name | Typ | Beschreibung |
---|---|---|
info |
object |
Die zusätzlichen Informationen. |
type |
string |
Der zusätzliche Informationstyp. |
ErrorDetail
Das Fehlerdetails.
Name | Typ | Beschreibung |
---|---|---|
additionalInfo |
Die zusätzlichen Informationen des Fehlers. |
|
code |
string |
Der Fehlercode. |
details |
Die Fehlerdetails. |
|
message |
string |
Die Fehlermeldung. |
target |
string |
Das Fehlerziel. |
ErrorResponse
Fehlerantwort
Name | Typ | Beschreibung |
---|---|---|
error |
Das Fehlerobjekt. |
HighWaterMarkChangeDetectionPolicy
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Wasserzeichenspalte erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |
highWaterMarkColumnName |
string |
Der Name der Spalte "Hohe Wassermarke". |
SearchIndexerDataContainer
Stellt Informationen zur Entität (z. B. Azure SQL-Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird.
Name | Typ | Beschreibung |
---|---|---|
name |
string |
Der Name der Tabelle oder Ansicht (für Azure SQL-Datenquelle) oder Sammlung (für CosmosDB-Datenquelle), die indiziert wird. |
query |
string |
Eine Abfrage, die auf diesen Datencontainer angewendet wird. Die Syntax und Bedeutung dieses Parameters ist datenquellenspezifisch. Von Azure SQL-Datenquellen nicht unterstützt. |
SearchIndexerDataSource
Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann.
Name | Typ | Beschreibung |
---|---|---|
@odata.etag |
string |
Das ETag der Datenquelle. |
container |
Der Datencontainer für die Datenquelle. |
|
credentials |
Anmeldeinformationen für die Datenquelle. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Die Datenänderungserkennungsrichtlinie für die Datenquelle. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Die Datenlöscherkennungsrichtlinie für die Datenquelle. |
description |
string |
Die Beschreibung der Datenquelle. |
encryptionKey |
Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Stufe der verschlüsselungsinternen Verschlüsselung für Ihre Datenquellendefinition bereitzustellen, wenn Sie eine vollständige Sicherheit wünschen, dass niemand, nicht einmal Microsoft, Ihre Datenquellendefinition entschlüsseln kann. Nachdem Sie Ihre Datenquellendefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft nach Bedarf ändern, wenn Sie den Verschlüsselungsschlüssel drehen möchten. Ihre Datenquellendefinition ist davon unberührt. Verschlüsselung mit vom Kunden verwalteten Schlüsseln steht nicht für kostenlose Suchdienste zur Verfügung und ist nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
|
name |
string |
Der Name der Datenquelle. |
type |
Der Typ der Datenquelle. |
SearchIndexerDataSourceType
Definiert den Typ einer Datenquelle.
Name | Typ | Beschreibung |
---|---|---|
adlsgen2 |
string |
Gibt eine ADLS Gen2-Datenquelle an. |
azureblob |
string |
Gibt eine Azure Blob-Datenquelle an. |
azuresql |
string |
Gibt eine Azure SQL-Datenquelle an. |
azuretable |
string |
Gibt eine Azure-Tabellendatenquelle an. |
cosmosdb |
string |
Gibt eine CosmosDB-Datenquelle an. |
mysql |
string |
Gibt eine MySql-Datenquelle an. |
SearchResourceEncryptionKey
Ein vom Kunden verwalteter Verschlüsselungsschlüssel im Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten verwendet werden, z. B. Indizes und Synonymzuordnungen.
Name | Typ | Beschreibung |
---|---|---|
accessCredentials |
Optionale Azure Active Directory-Anmeldeinformationen, die für den Zugriff auf Ihren Azure Key Vault verwendet werden. Ist nicht erforderlich, wenn stattdessen verwaltete Identität verwendet wird. |
|
keyVaultKeyName |
string |
Der Name Ihres Azure Key Vault-Schlüssels, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll. |
keyVaultKeyVersion |
string |
Die Version Ihres Azure Key Vault-Schlüssels, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll. |
keyVaultUri |
string |
Der URI Ihres Azure Key Vault, auch als DNS-Name bezeichnet, der den Schlüssel enthält, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll. Ein Beispiel-URI kann |
SoftDeleteColumnDeletionDetectionPolicy
Definiert eine Datenlöscherkennungsrichtlinie, die eine Strategie für das vorläufige Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer festgelegten Spalte "vorläufiges Löschen" gelöscht werden soll.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenlöscherkennungsrichtlinie angibt. |
softDeleteColumnName |
string |
Der Name der Spalte, die für die Erkennung vorläufiger Löschungen verwendet werden soll. |
softDeleteMarkerValue |
string |
Der Markierungswert, der ein Element als gelöscht identifiziert. |
SqlIntegratedChangeTrackingPolicy
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe des Integrierten Änderungsnachverfolgungsfeatures von Azure SQL-Datenbank erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |