Data Sources - Create Or Update
Crée une source de données ou met à jour une source de données s’il existe déjà.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-07-01
Paramètres URI
Nom | Dans | Obligatoire | Type | Description |
---|---|---|---|---|
data
|
path | True |
string |
Nom de la source de données à créer ou à mettre à jour. |
endpoint
|
path | True |
string |
URL du point de terminaison du service de recherche. |
api-version
|
query | True |
string |
Version de l’API cliente. |
En-tête de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
x-ms-client-request-id |
string uuid |
ID de suivi envoyé avec la demande pour faciliter le débogage. |
|
If-Match |
string |
Définit la condition If-Match. L’opération n’est effectuée que si l’ETag sur le serveur correspond à cette valeur. |
|
If-None-Match |
string |
Définit la condition If-None-Match. L’opération n’est effectuée que si l’ETag sur le serveur ne correspond pas à cette valeur. |
|
Prefer | True |
string |
Pour les requêtes HTTP PUT, indique au service de retourner la ressource créée/mise à jour en cas de réussite. |
Corps de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
container | True |
Conteneur de données pour la source de données. |
|
credentials | True |
Informations d’identification pour la source de données. |
|
name | True |
string |
Nom de la source de données. |
type | True |
Type de la source de données. |
|
@odata.etag |
string |
ETag de la source de données. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Stratégie de détection des modifications de données pour la source de données. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Stratégie de détection de suppression de données pour la source de données. |
|
description |
string |
Description de la source de données. |
|
encryptionKey |
Description d’une clé de chiffrement que vous créez dans Azure Key Vault. Cette clé est utilisée pour fournir un niveau supplémentaire de chiffrement au repos pour votre définition de source de données lorsque vous souhaitez une assurance totale que personne, même Microsoft, ne peut déchiffrer votre définition de source de données. Une fois que vous avez chiffré votre définition de source de données, elle reste toujours chiffrée. Le service de recherche ignore les tentatives de définition de cette propriété sur Null. Vous pouvez modifier cette propriété si nécessaire si vous souhaitez faire pivoter votre clé de chiffrement ; Votre définition de source de données n’est pas affectée. Le chiffrement avec des clés gérées par le client n’est pas disponible pour les services de recherche gratuits et n’est disponible que pour les services payants créés le 1er janvier 2019. |
Réponses
Nom | Type | Description |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Réponse d’erreur. |
Exemples
SearchServiceCreateOrUpdateDataSource
Exemple de requête
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
}
}
Exemple de réponse
{
"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
}
}
Définitions
Nom | Description |
---|---|
Azure |
Informations d’identification d’une application inscrite créée pour votre service de recherche, utilisée pour l’accès authentifié aux clés de chiffrement stockées dans Azure Key Vault. |
Data |
Représente les informations d’identification qui peuvent être utilisées pour se connecter à une source de données. |
Error |
Informations supplémentaires sur l’erreur de gestion des ressources. |
Error |
Détail de l’erreur. |
Error |
Réponse d’erreur |
High |
Définit une stratégie de détection des modifications de données qui capture les modifications en fonction de la valeur d’une colonne de marque d’eau élevée. |
Search |
Représente des informations sur l’entité (par exemple, la table Azure SQL ou la collection CosmosDB) qui sera indexée. |
Search |
Représente une définition de source de données, qui peut être utilisée pour configurer un indexeur. |
Search |
Définit le type d’une source de données. |
Search |
Clé de chiffrement gérée par le client dans Azure Key Vault. Les clés que vous créez et gérez peuvent être utilisées pour chiffrer ou déchiffrer des données au repos, telles que des index et des mappages de synonymes. |
Soft |
Définit une stratégie de détection de suppression de données qui implémente une stratégie de suppression réversible. Il détermine si un élément doit être supprimé en fonction de la valeur d’une colonne « suppression réversible » désignée. |
Sql |
Définit une stratégie de détection des modifications de données qui capture les modifications à l’aide de la fonctionnalité Suivi des modifications intégré d’Azure SQL Database. |
AzureActiveDirectoryApplicationCredentials
Informations d’identification d’une application inscrite créée pour votre service de recherche, utilisée pour l’accès authentifié aux clés de chiffrement stockées dans Azure Key Vault.
Nom | Type | Description |
---|---|---|
applicationId |
string |
ID d’application AAD qui a reçu les autorisations d’accès requises au coffre de clés Azure à utiliser lors du chiffrement de vos données au repos. L’ID d’application ne doit pas être confondu avec l’ID d’objet de votre application AAD. |
applicationSecret |
string |
Clé d’authentification de l’application AAD spécifiée. |
DataSourceCredentials
Représente les informations d’identification qui peuvent être utilisées pour se connecter à une source de données.
Nom | Type | Description |
---|---|---|
connectionString |
string |
Chaîne de connexion pour la source de données. Définissez la valeur |
ErrorAdditionalInfo
Informations supplémentaires sur l’erreur de gestion des ressources.
Nom | Type | Description |
---|---|---|
info |
object |
Informations supplémentaires. |
type |
string |
Type d’informations supplémentaire. |
ErrorDetail
Détail de l’erreur.
Nom | Type | Description |
---|---|---|
additionalInfo |
Informations supplémentaires sur l’erreur. |
|
code |
string |
Code d’erreur. |
details |
Détails de l’erreur. |
|
message |
string |
Message d’erreur. |
target |
string |
Cible d’erreur. |
ErrorResponse
Réponse d’erreur
Nom | Type | Description |
---|---|---|
error |
Objet d’erreur. |
HighWaterMarkChangeDetectionPolicy
Définit une stratégie de détection des modifications de données qui capture les modifications en fonction de la valeur d’une colonne de marque d’eau élevée.
Nom | Type | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment d’URI spécifiant le type de stratégie de détection des modifications de données. |
highWaterMarkColumnName |
string |
Nom de la colonne de point d’eau haute. |
SearchIndexerDataContainer
Représente des informations sur l’entité (par exemple, la table Azure SQL ou la collection CosmosDB) qui sera indexée.
Nom | Type | Description |
---|---|---|
name |
string |
Nom de la table ou de la vue (pour la source de données Azure SQL) ou la collection (pour la source de données CosmosDB) qui sera indexée. |
query |
string |
Requête appliquée à ce conteneur de données. La syntaxe et la signification de ce paramètre sont spécifiques à la source de données. Non pris en charge par les sources de données Azure SQL. |
SearchIndexerDataSource
Représente une définition de source de données, qui peut être utilisée pour configurer un indexeur.
Nom | Type | Description |
---|---|---|
@odata.etag |
string |
ETag de la source de données. |
container |
Conteneur de données pour la source de données. |
|
credentials |
Informations d’identification pour la source de données. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Stratégie de détection des modifications de données pour la source de données. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Stratégie de détection de suppression de données pour la source de données. |
description |
string |
Description de la source de données. |
encryptionKey |
Description d’une clé de chiffrement que vous créez dans Azure Key Vault. Cette clé est utilisée pour fournir un niveau supplémentaire de chiffrement au repos pour votre définition de source de données lorsque vous souhaitez une assurance totale que personne, même Microsoft, ne peut déchiffrer votre définition de source de données. Une fois que vous avez chiffré votre définition de source de données, elle reste toujours chiffrée. Le service de recherche ignore les tentatives de définition de cette propriété sur Null. Vous pouvez modifier cette propriété si nécessaire si vous souhaitez faire pivoter votre clé de chiffrement ; Votre définition de source de données n’est pas affectée. Le chiffrement avec des clés gérées par le client n’est pas disponible pour les services de recherche gratuits et n’est disponible que pour les services payants créés le 1er janvier 2019. |
|
name |
string |
Nom de la source de données. |
type |
Type de la source de données. |
SearchIndexerDataSourceType
Définit le type d’une source de données.
Nom | Type | Description |
---|---|---|
adlsgen2 |
string |
Indique une source de données ADLS Gen2. |
azureblob |
string |
Indique une source de données Blob Azure. |
azuresql |
string |
Indique une source de données Azure SQL. |
azuretable |
string |
Indique une source de données Table Azure. |
cosmosdb |
string |
Indique une source de données CosmosDB. |
mysql |
string |
Indique une source de données MySql. |
SearchResourceEncryptionKey
Clé de chiffrement gérée par le client dans Azure Key Vault. Les clés que vous créez et gérez peuvent être utilisées pour chiffrer ou déchiffrer des données au repos, telles que des index et des mappages de synonymes.
Nom | Type | Description |
---|---|---|
accessCredentials |
Informations d’identification Azure Active Directory facultatives utilisées pour accéder à votre coffre de clés Azure. Non obligatoire si vous utilisez plutôt une identité managée. |
|
keyVaultKeyName |
string |
Nom de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. |
keyVaultKeyVersion |
string |
Version de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. |
keyVaultUri |
string |
URI de votre coffre de clés Azure, également appelé nom DNS, qui contient la clé à utiliser pour chiffrer vos données au repos. Un exemple d’URI peut être |
SoftDeleteColumnDeletionDetectionPolicy
Définit une stratégie de détection de suppression de données qui implémente une stratégie de suppression réversible. Il détermine si un élément doit être supprimé en fonction de la valeur d’une colonne « suppression réversible » désignée.
Nom | Type | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment d’URI spécifiant le type de stratégie de détection de suppression de données. |
softDeleteColumnName |
string |
Nom de la colonne à utiliser pour la détection de suppression réversible. |
softDeleteMarkerValue |
string |
Valeur de marqueur qui identifie un élément comme supprimé. |
SqlIntegratedChangeTrackingPolicy
Définit une stratégie de détection des modifications de données qui capture les modifications à l’aide de la fonctionnalité Suivi des modifications intégré d’Azure SQL Database.
Nom | Type | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment d’URI spécifiant le type de stratégie de détection des modifications de données. |