Data Sources - Create Or Update
Erstellt eine neue Datenquelle oder aktualisiert eine Datenquelle, sofern sie bereits vorhanden ist.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-03-01-Preview
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-03-01-Preview&ignoreResetRequirements={ignoreResetRequirements}
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. |
ignore
|
query |
boolean |
Ignoriert die Anforderungen an die Cachezurücksetzung. |
Anforderungsheader
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Die Verfolgungs-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 Bedingung If-None-Match. Der Vorgang wird nur ausgeführt, wenn das ETag auf dem Server nicht mit diesem Wert übereinstimmt. |
|
Prefer | True |
string |
Weist den Dienst bei HTTP PUT-Anforderungen 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öschungserkennungsrichtlinie 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 Ebene der Verschlüsselung ruhender Daten für Ihre Datenquellendefinition bereitzustellen, wenn Sie sicher sein möchten, 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 bei Bedarf ändern, wenn Sie Ihren Verschlüsselungsschlüssel rotieren möchten. Ihre Datenquellendefinition ist nicht betroffen. Die Verschlüsselung mit kundenseitig verwalteten Schlüsseln ist für kostenlose Suchdienste nicht verfügbar und nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
||
identity | SearchIndexerDataIdentity: |
Eine explizite verwaltete Identität, die für diese Datenquelle verwendet werden soll. Wenn nicht angegeben und die Verbindungszeichenfolge eine verwaltete Identität ist, wird die systemseitig zugewiesene verwaltete Identität verwendet. Wenn nicht angegeben, bleibt der Wert unverändert. Wenn "none" angegeben ist, wird der Wert dieser Eigenschaft gelöscht. |
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-03-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
}
}
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 den authentifizierten Zugriff auf die in Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird. |
Data |
Stellt die Anmeldeinformationen dar, mit denen die Verbindung zu einer Datenquelle hergestellt werden kann. |
Error |
Zusätzliche Informationen zum Ressourcenverwaltungsfehler. |
Error |
Die Fehlerdetails. |
Error |
Fehlerantwort |
High |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Spalte mit hohem Grenzwert erfasst. |
Native |
Definiert eine Datenlöschungserkennungsrichtlinie, die das native Feature für vorläufiges Löschen von Azure Blob Storage für die Erkennung von Löschungen verwendet. |
Search |
Stellt Informationen zur Entität (z. B. Azure SQL Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird. |
Search |
Löscht die Identitätseigenschaft einer Datenquelle. |
Search |
Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann. |
Search |
Definiert den Typ einer Datenquelle. |
Search |
Gibt die Identität für eine zu verwendende Datenquelle an. |
Search |
Ein kundenseitig verwalteter Verschlüsselungsschlüssel in 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öschungserkennungsrichtlinie, die eine Strategie zum vorläufigen Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer angegebenen "vorläufigen Löschen"-Spalte gelöscht werden soll. |
Sql |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe der Integrierten Änderungsnachverfolgung-Funktion von Azure SQL-Datenbank erfasst. |
AzureActiveDirectoryApplicationCredentials
Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für den authentifizierten Zugriff auf die in Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird.
Name | Typ | Beschreibung |
---|---|---|
applicationId |
string |
Eine AAD-Anwendungs-ID, der die erforderlichen Zugriffsberechtigungen für die Azure-Key Vault erteilt wurden, die beim Verschlüsseln ruhender 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 die Anmeldeinformationen dar, mit denen die Verbindung zu einer Datenquelle hergestellt werden kann.
Name | Typ | Beschreibung |
---|---|---|
connectionString |
string |
Die Verbindungszeichenfolge für die Datenquelle. Legen Sie auf |
ErrorAdditionalInfo
Zusätzliche Informationen zum Ressourcenverwaltungsfehler.
Name | Typ | Beschreibung |
---|---|---|
info |
object |
Zusätzliche Informationen. |
type |
string |
Typ der zusätzlichen Informationen. |
ErrorDetail
Die Fehlerdetails.
Name | Typ | Beschreibung |
---|---|---|
additionalInfo |
Die zusätzlichen Fehlerinformationen. |
|
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 Spalte mit hohem Grenzwert erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |
highWaterMarkColumnName |
string |
Der Name der Spalte "High Water Mark". |
NativeBlobSoftDeleteDeletionDetectionPolicy
Definiert eine Datenlöschungserkennungsrichtlinie, die das native Feature für vorläufiges Löschen von Azure Blob Storage für die Erkennung von Löschungen verwendet.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenlöschungserkennungsrichtlinie angibt. |
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 Sicht (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. Wird von Azure SQL Datenquellen nicht unterstützt. |
SearchIndexerDataNoneIdentity
Löscht die Identitätseigenschaft einer Datenquelle.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Identitätstyp angibt. |
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öschungserkennungsrichtlinie 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 Ebene der Verschlüsselung ruhender Daten für Ihre Datenquellendefinition bereitzustellen, wenn Sie sicher sein möchten, 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 bei Bedarf ändern, wenn Sie Ihren Verschlüsselungsschlüssel rotieren möchten. Ihre Datenquellendefinition ist nicht betroffen. Die Verschlüsselung mit kundenseitig verwalteten Schlüsseln ist für kostenlose Suchdienste nicht verfügbar und nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
|
identity | SearchIndexerDataIdentity: |
Eine explizite verwaltete Identität, die für diese Datenquelle verwendet werden soll. Wenn nicht angegeben und die Verbindungszeichenfolge eine verwaltete Identität ist, wird die systemseitig zugewiesene verwaltete Identität verwendet. Wenn nicht angegeben, bleibt der Wert unverändert. Wenn "none" angegeben ist, wird der Wert dieser Eigenschaft gelöscht. |
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 Table-Datenquelle an. |
cosmosdb |
string |
Gibt eine CosmosDB-Datenquelle an. |
mysql |
string |
Gibt eine MySql-Datenquelle an. |
SearchIndexerDataUserAssignedIdentity
Gibt die Identität für eine zu verwendende Datenquelle an.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Identitätstyp angibt. |
userAssignedIdentity |
string |
Die vollqualifizierte Azure-Ressourcen-ID einer benutzerseitig zugewiesenen verwalteten Identität in der Regel im Format "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId", die dem Suchdienst zugewiesen werden sollte. |
SearchResourceEncryptionKey
Ein kundenseitig verwalteter Verschlüsselungsschlüssel in 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 Ihre Azure Key Vault verwendet werden. Nicht erforderlich, wenn stattdessen eine verwaltete Identität verwendet wird. |
|
identity | SearchIndexerDataIdentity: |
Eine explizite verwaltete Identität, die für diesen Verschlüsselungsschlüssel verwendet werden soll. Wenn nicht angegeben und die Zugriffsanmeldeinformationen-Eigenschaft NULL ist, wird die systemseitig zugewiesene verwaltete Identität verwendet. Wenn die explizite Identität beim Aktualisieren der Ressource nicht angegeben ist, bleibt sie unverändert. Wenn "none" angegeben ist, wird der Wert dieser Eigenschaft gelöscht. |
keyVaultKeyName |
string |
Der Name Ihres Azure Key Vault Schlüssel, der zum Verschlüsseln ruhender Daten verwendet werden soll. |
keyVaultKeyVersion |
string |
Die Version Ihres Azure Key Vault Schlüssels, der zum Verschlüsseln ruhender 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 ruhender Daten verwendet werden soll. Ein Beispiel-URI kann sein |
SoftDeleteColumnDeletionDetectionPolicy
Definiert eine Datenlöschungserkennungsrichtlinie, die eine Strategie zum vorläufigen Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer angegebenen "vorläufigen Löschen"-Spalte gelöscht werden soll.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenlöschungserkennungsrichtlinie angibt. |
softDeleteColumnName |
string |
Der Name der Spalte, die für die Erkennung des vorläufigen Löschens verwendet werden soll. |
softDeleteMarkerValue |
string |
Der Markerwert, der ein Element als gelöscht identifiziert. |
SqlIntegratedChangeTrackingPolicy
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe der Integrierten Änderungsnachverfolgung-Funktion von Azure SQL-Datenbank erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |