Data Sources - Create Or Update
Cria uma nova origem de dados ou atualiza uma origem de dados se já existir.
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-05-01-preview
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-05-01-preview&ignoreResetRequirements={ignoreResetRequirements}
Parâmetros do URI
Name | Em | Necessário | Tipo | Description |
---|---|---|---|---|
data
|
path | True |
string |
O nome da origem de dados para criar ou atualizar. |
endpoint
|
path | True |
string |
O URL do ponto final do serviço de pesquisa. |
api-version
|
query | True |
string |
Versão da API de Cliente. |
ignore
|
query |
boolean |
Ignora os requisitos de reposição da cache. |
Cabeçalho do Pedido
Name | Necessário | Tipo | Description |
---|---|---|---|
x-ms-client-request-id |
string uuid |
O ID de controlo enviado com o pedido para ajudar na depuração. |
|
If-Match |
string |
Define a condição If-Match. A operação só será efetuada se o ETag no servidor corresponder a este valor. |
|
If-None-Match |
string |
Define a condição If-None-Match. A operação só será efetuada se o ETag no servidor não corresponder a este valor. |
|
Prefer | True |
string |
Para pedidos HTTP PUT, instrui o serviço a devolver o recurso criado/atualizado com êxito. |
Corpo do Pedido
Name | Necessário | Tipo | Description |
---|---|---|---|
container | True |
O contentor de dados da origem de dados. |
|
credentials | True |
Credenciais da origem de dados. |
|
name | True |
string |
O nome da origem de dados. |
type | True |
O tipo da origem de dados. |
|
@odata.etag |
string |
A ETag da origem de dados. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
A política de deteção de alteração de dados para a origem de dados. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
A política de deteção de eliminação de dados para a origem de dados. |
|
description |
string |
A descrição da origem de dados. |
|
encryptionKey |
Uma descrição de uma chave de encriptação que cria no Azure Key Vault. Esta chave é utilizada para fornecer um nível adicional de encriptação inativa para a definição da sua origem de dados quando quiser ter a garantia total de que ninguém, nem mesmo a Microsoft, pode desencriptar a definição da sua origem de dados. Depois de encriptar a definição da origem de dados, esta permanecerá sempre encriptada. O serviço de pesquisa irá ignorar as tentativas de definir esta propriedade como nula. Pode alterar esta propriedade conforme necessário se quiser rodar a chave de encriptação; A definição da origem de dados não será afetada. A encriptação com chaves geridas pelo cliente não está disponível para serviços de pesquisa gratuita e só está disponível para serviços pagos criados a partir de 1 de janeiro de 2019 ou depois de 1 de janeiro de 2019. |
||
identity | SearchIndexerDataIdentity: |
Uma identidade gerida explícita a utilizar para esta origem de dados. Se não for especificado e o cadeia de ligação for uma identidade gerida, é utilizada a identidade gerida atribuída pelo sistema. Se não for especificado, o valor permanece inalterado. Se "nenhum" for especificado, o valor desta propriedade é limpo. |
Respostas
Name | Tipo | Description |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Resposta de erro. |
Exemplos
SearchServiceCreateOrUpdateDataSource
Pedido de amostra
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
}
}
Resposta da amostra
{
"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
}
}
Definições
Name | Description |
---|---|
Azure |
Credenciais de uma aplicação registada criada para o seu serviço de pesquisa, utilizada para acesso autenticado às chaves de encriptação armazenadas no Azure Key Vault. |
Data |
Representa credenciais que podem ser utilizadas para ligar a uma origem de dados. |
Error |
Informações adicionais sobre o erro de gestão de recursos. |
Error |
O detalhe do erro. |
Error |
Resposta a erros |
High |
Define uma política de deteção de alteração de dados que captura alterações com base no valor de uma coluna de marca de água elevada. |
Native |
Define uma política de deteção de eliminação de dados que utiliza a funcionalidade de eliminação recuperável nativa do Armazenamento de Blobs do Azure para a deteção de eliminação. |
Search |
Representa informações sobre a entidade (como SQL do Azure tabela ou coleção do CosmosDB) que serão indexadas. |
Search |
Limpa a propriedade de identidade de uma origem de dados. |
Search |
Representa uma definição de origem de dados, que pode ser utilizada para configurar um indexador. |
Search |
Define o tipo de uma origem de dados. |
Search |
Especifica a identidade de uma origem de dados a utilizar. |
Search |
Uma chave de encriptação gerida pelo cliente no Azure Key Vault. As chaves que cria e gere podem ser utilizadas para encriptar ou desencriptar dados inativos, como índices e mapas de sinónimos. |
Soft |
Define uma política de deteção de eliminação de dados que implementa uma estratégia de eliminação recuperável. Determina se um item deve ser eliminado com base no valor de uma coluna designada "eliminação recuperável". |
Sql |
Define uma política de deteção de alteração de dados que captura alterações com a funcionalidade Controlo de Alterações Integrada da Base de Dados SQL do Azure. |
AzureActiveDirectoryApplicationCredentials
Credenciais de uma aplicação registada criada para o seu serviço de pesquisa, utilizada para acesso autenticado às chaves de encriptação armazenadas no Azure Key Vault.
Name | Tipo | Description |
---|---|---|
applicationId |
string |
Um ID da Aplicação do AAD ao qual foram concedidas as permissões de acesso necessárias ao Azure Key Vault que deve ser utilizado ao encriptar os seus dados inativos. O ID da Aplicação não deve ser confundido com o ID de Objeto da sua Aplicação do AAD. |
applicationSecret |
string |
A chave de autenticação da aplicação do AAD especificada. |
DataSourceCredentials
Representa credenciais que podem ser utilizadas para ligar a uma origem de dados.
Name | Tipo | Description |
---|---|---|
connectionString |
string |
O cadeia de ligação para a origem de dados. Defina como |
ErrorAdditionalInfo
Informações adicionais sobre o erro de gestão de recursos.
Name | Tipo | Description |
---|---|---|
info |
object |
As informações adicionais. |
type |
string |
O tipo de informações adicionais. |
ErrorDetail
O detalhe do erro.
Name | Tipo | Description |
---|---|---|
additionalInfo |
As informações adicionais do erro. |
|
code |
string |
O código de erro. |
details |
Os detalhes do erro. |
|
message |
string |
A mensagem de erro. |
target |
string |
O destino do erro. |
ErrorResponse
Resposta a erros
Name | Tipo | Description |
---|---|---|
error |
O objeto de erro. |
HighWaterMarkChangeDetectionPolicy
Define uma política de deteção de alteração de dados que captura alterações com base no valor de uma coluna de marca de água elevada.
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de política de deteção de alteração de dados. |
highWaterMarkColumnName |
string |
O nome da coluna de marca de água alta. |
NativeBlobSoftDeleteDeletionDetectionPolicy
Define uma política de deteção de eliminação de dados que utiliza a funcionalidade de eliminação recuperável nativa do Armazenamento de Blobs do Azure para a deteção de eliminação.
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de política de deteção de eliminação de dados. |
SearchIndexerDataContainer
Representa informações sobre a entidade (como SQL do Azure tabela ou coleção do CosmosDB) que serão indexadas.
Name | Tipo | Description |
---|---|---|
name |
string |
O nome da tabela ou vista (para SQL do Azure origem de dados) ou coleção (para a origem de dados do CosmosDB) que será indexada. |
query |
string |
Uma consulta que é aplicada a este contentor de dados. A sintaxe e o significado deste parâmetro são específicos da origem de dados. Não suportado por SQL do Azure origens de dados. |
SearchIndexerDataNoneIdentity
Limpa a propriedade de identidade de uma origem de dados.
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de identidade. |
SearchIndexerDataSource
Representa uma definição de origem de dados, que pode ser utilizada para configurar um indexador.
Name | Tipo | Description |
---|---|---|
@odata.etag |
string |
A ETag da origem de dados. |
container |
O contentor de dados da origem de dados. |
|
credentials |
Credenciais da origem de dados. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
A política de deteção de alteração de dados para a origem de dados. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
A política de deteção de eliminação de dados para a origem de dados. |
description |
string |
A descrição da origem de dados. |
encryptionKey |
Uma descrição de uma chave de encriptação que cria no Azure Key Vault. Esta chave é utilizada para fornecer um nível adicional de encriptação inativa para a definição da sua origem de dados quando quiser ter a garantia total de que ninguém, nem mesmo a Microsoft, pode desencriptar a definição da sua origem de dados. Depois de encriptar a definição da origem de dados, esta permanecerá sempre encriptada. O serviço de pesquisa irá ignorar as tentativas de definir esta propriedade como nula. Pode alterar esta propriedade conforme necessário se quiser rodar a chave de encriptação; A definição da origem de dados não será afetada. A encriptação com chaves geridas pelo cliente não está disponível para serviços de pesquisa gratuita e só está disponível para serviços pagos criados a partir de 1 de janeiro de 2019 ou depois de 1 de janeiro de 2019. |
|
identity | SearchIndexerDataIdentity: |
Uma identidade gerida explícita a utilizar para esta origem de dados. Se não for especificado e o cadeia de ligação for uma identidade gerida, é utilizada a identidade gerida atribuída pelo sistema. Se não for especificado, o valor permanece inalterado. Se "nenhum" for especificado, o valor desta propriedade é limpo. |
name |
string |
O nome da origem de dados. |
type |
O tipo da origem de dados. |
SearchIndexerDataSourceType
Define o tipo de uma origem de dados.
Name | Tipo | Description |
---|---|---|
adlsgen2 |
string |
Indica uma origem de dados do ADLS Gen2. |
azureblob |
string |
Indica uma origem de dados do Blob do Azure. |
azuresql |
string |
Indica uma origem de dados SQL do Azure. |
azuretable |
string |
Indica uma origem de dados de Tabela do Azure. |
cosmosdb |
string |
Indica uma origem de dados do CosmosDB. |
mysql |
string |
Indica uma origem de dados MySql. |
onelake |
string |
Indica uma origem de dados do OneLake do Microsoft Fabric. |
SearchIndexerDataUserAssignedIdentity
Especifica a identidade de uma origem de dados a utilizar.
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de identidade. |
userAssignedIdentity |
string |
O ID de recurso completamente qualificado do Azure de uma identidade gerida atribuída pelo utilizador normalmente no formulário "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" que deveria ter sido atribuído ao serviço de pesquisa. |
SearchResourceEncryptionKey
Uma chave de encriptação gerida pelo cliente no Azure Key Vault. As chaves que cria e gere podem ser utilizadas para encriptar ou desencriptar dados inativos, como índices e mapas de sinónimos.
Name | Tipo | Description |
---|---|---|
accessCredentials |
Credenciais opcionais do Azure Active Directory utilizadas para aceder ao seu Key Vault do Azure. Em vez disso, não é necessário utilizar a identidade gerida. |
|
identity | SearchIndexerDataIdentity: |
Uma identidade gerida explícita a utilizar para esta chave de encriptação. Se não for especificado e a propriedade de credenciais de acesso for nula, é utilizada a identidade gerida atribuída pelo sistema. Ao atualizar para o recurso, se a identidade explícita não for especificada, permanecerá inalterada. Se "nenhum" for especificado, o valor desta propriedade é limpo. |
keyVaultKeyName |
string |
O nome da chave de Key Vault do Azure a ser utilizada para encriptar os seus dados inativos. |
keyVaultKeyVersion |
string |
A versão da chave de Key Vault do Azure a ser utilizada para encriptar os seus dados inativos. |
keyVaultUri |
string |
O URI do seu Key Vault do Azure, também conhecido como nome DNS, que contém a chave a ser utilizada para encriptar os seus dados inativos. Um URI de exemplo pode ser |
SoftDeleteColumnDeletionDetectionPolicy
Define uma política de deteção de eliminação de dados que implementa uma estratégia de eliminação recuperável. Determina se um item deve ser eliminado com base no valor de uma coluna designada "eliminação recuperável".
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de política de deteção de eliminação de dados. |
softDeleteColumnName |
string |
O nome da coluna a utilizar para a deteção de eliminação recuperável. |
softDeleteMarkerValue |
string |
O valor do marcador que identifica um item como eliminado. |
SqlIntegratedChangeTrackingPolicy
Define uma política de deteção de alteração de dados que captura alterações com a funcionalidade Controlo de Alterações Integrada da Base de Dados SQL do Azure.
Name | Tipo | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
Um fragmento de URI que especifica o tipo de política de deteção de alteração de dados. |