Data Sources - Create Or Update
Crea un nuevo origen de datos o actualiza un origen de datos si ya existe.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-07-01
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
data
|
path | True |
string |
Nombre del origen de datos que se va a crear o actualizar. |
endpoint
|
path | True |
string |
Dirección URL del punto de conexión del servicio de búsqueda. |
api-version
|
query | True |
string |
Versión de api de cliente. |
Encabezado de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Identificador de seguimiento enviado con la solicitud para ayudar con la depuración. |
|
If-Match |
string |
Define la condición If-Match. La operación solo se realizará si el ETag del servidor coincide con este valor. |
|
If-None-Match |
string |
Define la condición If-None-Match. La operación solo se realizará si la ETag del servidor no coincide con este valor. |
|
Prefer | True |
string |
En el caso de las solicitudes HTTP PUT, indica al servicio que devuelva el recurso creado o actualizado si se ha realizado correctamente. |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
container | True |
Contenedor de datos para el origen de datos. |
|
credentials | True |
Credenciales para el origen de datos. |
|
name | True |
string |
Nombre del origen de datos. |
type | True |
Tipo del origen de datos. |
|
@odata.etag |
string |
ETag del origen de datos. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Directiva de detección de cambios de datos para el origen de datos. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Directiva de detección de eliminación de datos para el origen de datos. |
|
description |
string |
Descripción del origen de datos. |
|
encryptionKey |
Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del origen de datos cuando quiere asegurarse de que nadie, ni siquiera Microsoft, puede descifrar la definición del origen de datos. Una vez que haya cifrado la definición del origen de datos, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar la clave de cifrado; La definición del origen de datos no se verá afectada. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios de pago creados el 1 de enero de 2019 o después. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Respuesta de error. |
Ejemplos
SearchServiceCreateOrUpdateDataSource
Solicitud de ejemplo
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
}
}
Respuesta de muestra
{
"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
}
}
Definiciones
Nombre | Description |
---|---|
Azure |
Credenciales de una aplicación registrada creada para el servicio de búsqueda, que se usa para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault. |
Data |
Representa las credenciales que se pueden usar para conectarse a un origen de datos. |
Error |
Información adicional sobre el error de administración de recursos. |
Error |
Detalle del error. |
Error |
Respuesta de error |
High |
Define una directiva de detección de cambios de datos que captura los cambios en función del valor de una columna de marca de agua alta. |
Search |
Representa información sobre la entidad (como la tabla de Azure SQL o la colección cosmosDB) que se indexará. |
Search |
Representa una definición de origen de datos, que se puede usar para configurar un indexador. |
Search |
Define el tipo de un origen de datos. |
Search |
Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que cree y administre se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos. |
Soft |
Define una directiva de detección de eliminación de datos que implementa una estrategia de eliminación temporal. Determina si un elemento se debe eliminar en función del valor de una columna designada "eliminación temporal". |
Sql |
Define una directiva de detección de cambios de datos que captura los cambios mediante la característica Seguimiento de cambios integrado de Azure SQL Database. |
AzureActiveDirectoryApplicationCredentials
Credenciales de una aplicación registrada creada para el servicio de búsqueda, que se usa para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault.
Nombre | Tipo | Description |
---|---|---|
applicationId |
string |
Un identificador de aplicación de AAD al que se concedieron los permisos de acceso necesarios a Azure Key Vault que se va a usar al cifrar los datos en reposo. El identificador de aplicación no debe confundirse con el id. de objeto de la aplicación de AAD. |
applicationSecret |
string |
Clave de autenticación de la aplicación de AAD especificada. |
DataSourceCredentials
Representa las credenciales que se pueden usar para conectarse a un origen de datos.
Nombre | Tipo | Description |
---|---|---|
connectionString |
string |
Cadena de conexión para el origen de datos. Establezca en |
ErrorAdditionalInfo
Información adicional sobre el error de administración de recursos.
Nombre | Tipo | Description |
---|---|---|
info |
object |
Información adicional. |
type |
string |
Tipo de información adicional. |
ErrorDetail
Detalle del error.
Nombre | Tipo | Description |
---|---|---|
additionalInfo |
Información adicional del error. |
|
code |
string |
Código de error. |
details |
Detalles del error. |
|
message |
string |
Mensaje de error. |
target |
string |
Destino del error. |
ErrorResponse
Respuesta de error
Nombre | Tipo | Description |
---|---|---|
error |
Objeto de error. |
HighWaterMarkChangeDetectionPolicy
Define una directiva de detección de cambios de datos que captura los cambios en función del valor de una columna de marca de agua alta.
Nombre | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragmento de URI que especifica el tipo de directiva de detección de cambios de datos. |
highWaterMarkColumnName |
string |
Nombre de la columna de marca de agua alta. |
SearchIndexerDataContainer
Representa información sobre la entidad (como la tabla de Azure SQL o la colección cosmosDB) que se indexará.
Nombre | Tipo | Description |
---|---|---|
name |
string |
Nombre de la tabla o vista (para el origen de datos de Azure SQL) o la colección (para el origen de datos de CosmosDB) que se indexará. |
query |
string |
Consulta que se aplica a este contenedor de datos. La sintaxis y el significado de este parámetro son específicas del origen de datos. No es compatible con los orígenes de datos de Azure SQL. |
SearchIndexerDataSource
Representa una definición de origen de datos, que se puede usar para configurar un indexador.
Nombre | Tipo | Description |
---|---|---|
@odata.etag |
string |
ETag del origen de datos. |
container |
Contenedor de datos para el origen de datos. |
|
credentials |
Credenciales para el origen de datos. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Directiva de detección de cambios de datos para el origen de datos. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Directiva de detección de eliminación de datos para el origen de datos. |
description |
string |
Descripción del origen de datos. |
encryptionKey |
Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del origen de datos cuando quiere asegurarse de que nadie, ni siquiera Microsoft, puede descifrar la definición del origen de datos. Una vez que haya cifrado la definición del origen de datos, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar la clave de cifrado; La definición del origen de datos no se verá afectada. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios de pago creados el 1 de enero de 2019 o después. |
|
name |
string |
Nombre del origen de datos. |
type |
Tipo del origen de datos. |
SearchIndexerDataSourceType
Define el tipo de un origen de datos.
Nombre | Tipo | Description |
---|---|---|
adlsgen2 |
string |
Indica un origen de datos de ADLS Gen2. |
azureblob |
string |
Indica un origen de datos de Blob de Azure. |
azuresql |
string |
Indica un origen de datos de Azure SQL. |
azuretable |
string |
Indica un origen de datos de Tabla de Azure. |
cosmosdb |
string |
Indica un origen de datos de CosmosDB. |
mysql |
string |
Indica un origen de datos MySql. |
SearchResourceEncryptionKey
Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que cree y administre se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos.
Nombre | Tipo | Description |
---|---|---|
accessCredentials |
Credenciales opcionales de Azure Active Directory que se usan para acceder a Azure Key Vault. No es necesario si se usa la identidad administrada en su lugar. |
|
keyVaultKeyName |
string |
Nombre de la clave de Azure Key Vault que se usará para cifrar los datos en reposo. |
keyVaultKeyVersion |
string |
Versión de la clave de Azure Key Vault que se usará para cifrar los datos en reposo. |
keyVaultUri |
string |
El URI de Azure Key Vault, también denominado nombre DNS, que contiene la clave que se va a usar para cifrar los datos en reposo. Un URI de ejemplo podría ser |
SoftDeleteColumnDeletionDetectionPolicy
Define una directiva de detección de eliminación de datos que implementa una estrategia de eliminación temporal. Determina si un elemento se debe eliminar en función del valor de una columna designada "eliminación temporal".
Nombre | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragmento de URI que especifica el tipo de directiva de detección de eliminación de datos. |
softDeleteColumnName |
string |
Nombre de la columna que se va a usar para la detección de eliminación temporal. |
softDeleteMarkerValue |
string |
Valor de marcador que identifica un elemento como eliminado. |
SqlIntegratedChangeTrackingPolicy
Define una directiva de detección de cambios de datos que captura los cambios mediante la característica Seguimiento de cambios integrado de Azure SQL Database.
Nombre | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragmento de URI que especifica el tipo de directiva de detección de cambios de datos. |