Data Sources - Create
Tworzy nowe źródło danych.
POST {endpoint}/datasources?api-version=2024-07-01
Parametry identyfikatora URI
Nazwa | W | Wymagane | Typ | Opis |
---|---|---|---|---|
endpoint
|
path | True |
string |
Adres URL punktu końcowego usługi wyszukiwania. |
api-version
|
query | True |
string |
Wersja interfejsu API klienta. |
Nagłówek żądania
Nazwa | Wymagane | Typ | Opis |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Identyfikator śledzenia wysłany z żądaniem, aby ułatwić debugowanie. |
Treść żądania
Nazwa | Wymagane | Typ | Opis |
---|---|---|---|
container | True |
Kontener danych dla źródła danych. |
|
credentials | True |
Poświadczenia źródła danych. |
|
name | True |
string |
Nazwa źródła danych. |
type | True |
Typ źródła danych. |
|
@odata.etag |
string |
Element ETag źródła danych. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Zasady wykrywania zmian danych dla źródła danych. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Zasady wykrywania usuwania danych dla źródła danych. |
|
description |
string |
Opis źródła danych. |
|
encryptionKey |
Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania w spoczynku dla definicji źródła danych, gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może odszyfrować definicję źródła danych. Po zaszyfrowaniu definicji źródła danych zawsze pozostanie ona zaszyfrowana. Usługa wyszukiwania zignoruje próby ustawienia tej właściwości na wartość null. Tę właściwość można zmienić w razie potrzeby, jeśli chcesz obrócić klucz szyfrowania; Definicja źródła danych nie będzie miała wpływu. Szyfrowanie za pomocą kluczy zarządzanych przez klienta nie jest dostępne dla bezpłatnych usług wyszukiwania i jest dostępne tylko dla płatnych usług utworzonych w dniu 1 stycznia 2019 r. lub po 1 stycznia 2019 r. |
Odpowiedzi
Nazwa | Typ | Opis |
---|---|---|
201 Created | ||
Other Status Codes |
Odpowiedź na błąd. |
Przykłady
SearchServiceCreateDataSource
Przykładowe żądanie
POST https://myservice.search.windows.net/datasources?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": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
Przykładowa odpowiedź
{
"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": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": null
}
}
}
Definicje
Nazwa | Opis |
---|---|
Azure |
Poświadczenia zarejestrowanej aplikacji utworzonej dla usługi wyszukiwania używane do uwierzytelnionego dostępu do kluczy szyfrowania przechowywanych w usłudze Azure Key Vault. |
Data |
Reprezentuje poświadczenia, których można użyć do nawiązania połączenia ze źródłem danych. |
Error |
Dodatkowe informacje o błędzie zarządzania zasobami. |
Error |
Szczegóły błędu. |
Error |
Odpowiedź na błąd |
High |
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany na podstawie wartości kolumny wysokiego znacznika wody. |
Search |
Reprezentuje informacje o jednostce (takiej jak tabela Azure SQL lub kolekcja CosmosDB), które będą indeksowane. |
Search |
Reprezentuje definicję źródła danych, która może służyć do konfigurowania indeksatora. |
Search |
Definiuje typ źródła danych. |
Search |
Klucz szyfrowania zarządzany przez klienta w usłudze Azure Key Vault. Klucze tworzone i zarządzane mogą służyć do szyfrowania lub odszyfrowywania danych magazynowanych, takich jak indeksy i mapy synonimów. |
Soft |
Definiuje zasady wykrywania usuwania danych, które implementują strategię usuwania nietrwałego. Określa, czy element powinien zostać usunięty na podstawie wartości wyznaczonej kolumny "usuwanie nietrwałe". |
Sql |
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany przy użyciu funkcji zintegrowanego śledzenia zmian usługi Azure SQL Database. |
AzureActiveDirectoryApplicationCredentials
Poświadczenia zarejestrowanej aplikacji utworzonej dla usługi wyszukiwania używane do uwierzytelnionego dostępu do kluczy szyfrowania przechowywanych w usłudze Azure Key Vault.
Nazwa | Typ | Opis |
---|---|---|
applicationId |
string |
Identyfikator aplikacji usługi AAD, któremu udzielono wymaganych uprawnień dostępu do usługi Azure Key Vault, która ma być używana podczas szyfrowania danych magazynowanych. Identyfikator aplikacji nie powinien być mylony z identyfikatorem obiektu aplikacji usługi AAD. |
applicationSecret |
string |
Klucz uwierzytelniania określonej aplikacji usługi AAD. |
DataSourceCredentials
Reprezentuje poświadczenia, których można użyć do nawiązania połączenia ze źródłem danych.
Nazwa | Typ | Opis |
---|---|---|
connectionString |
string |
Parametry połączenia dla źródła danych. Ustaw wartość |
ErrorAdditionalInfo
Dodatkowe informacje o błędzie zarządzania zasobami.
Nazwa | Typ | Opis |
---|---|---|
info |
object |
Dodatkowe informacje. |
type |
string |
Dodatkowy typ informacji. |
ErrorDetail
Szczegóły błędu.
Nazwa | Typ | Opis |
---|---|---|
additionalInfo |
Dodatkowe informacje o błędzie. |
|
code |
string |
Kod błędu. |
details |
Szczegóły błędu. |
|
message |
string |
Komunikat o błędzie. |
target |
string |
Element docelowy błędu. |
ErrorResponse
Odpowiedź na błąd
Nazwa | Typ | Opis |
---|---|---|
error |
Obiekt błędu. |
HighWaterMarkChangeDetectionPolicy
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany na podstawie wartości kolumny wysokiego znacznika wody.
Nazwa | Typ | Opis |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment identyfikatora URI określający typ zasad wykrywania zmian danych. |
highWaterMarkColumnName |
string |
Nazwa kolumny z wysokim znacznikiem wody. |
SearchIndexerDataContainer
Reprezentuje informacje o jednostce (takiej jak tabela Azure SQL lub kolekcja CosmosDB), które będą indeksowane.
Nazwa | Typ | Opis |
---|---|---|
name |
string |
Nazwa tabeli lub widoku (dla źródła danych Usługi Azure SQL) lub kolekcji (dla źródła danych usługi CosmosDB), które zostaną indeksowane. |
query |
string |
Zapytanie stosowane do tego kontenera danych. Składnia i znaczenie tego parametru są specyficzne dla źródła danych. Nieobsługiwane przez źródła danych usługi Azure SQL. |
SearchIndexerDataSource
Reprezentuje definicję źródła danych, która może służyć do konfigurowania indeksatora.
Nazwa | Typ | Opis |
---|---|---|
@odata.etag |
string |
Element ETag źródła danych. |
container |
Kontener danych dla źródła danych. |
|
credentials |
Poświadczenia źródła danych. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Zasady wykrywania zmian danych dla źródła danych. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Zasady wykrywania usuwania danych dla źródła danych. |
description |
string |
Opis źródła danych. |
encryptionKey |
Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania w spoczynku dla definicji źródła danych, gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może odszyfrować definicję źródła danych. Po zaszyfrowaniu definicji źródła danych zawsze pozostanie ona zaszyfrowana. Usługa wyszukiwania zignoruje próby ustawienia tej właściwości na wartość null. Tę właściwość można zmienić w razie potrzeby, jeśli chcesz obrócić klucz szyfrowania; Definicja źródła danych nie będzie miała wpływu. Szyfrowanie za pomocą kluczy zarządzanych przez klienta nie jest dostępne dla bezpłatnych usług wyszukiwania i jest dostępne tylko dla płatnych usług utworzonych w dniu 1 stycznia 2019 r. lub po 1 stycznia 2019 r. |
|
name |
string |
Nazwa źródła danych. |
type |
Typ źródła danych. |
SearchIndexerDataSourceType
Definiuje typ źródła danych.
Nazwa | Typ | Opis |
---|---|---|
adlsgen2 |
string |
Wskazuje źródło danych usługi ADLS Gen2. |
azureblob |
string |
Wskazuje źródło danych obiektu blob platformy Azure. |
azuresql |
string |
Wskazuje źródło danych usługi Azure SQL. |
azuretable |
string |
Wskazuje źródło danych tabeli platformy Azure. |
cosmosdb |
string |
Wskazuje źródło danych usługi CosmosDB. |
mysql |
string |
Wskazuje źródło danych MySql. |
SearchResourceEncryptionKey
Klucz szyfrowania zarządzany przez klienta w usłudze Azure Key Vault. Klucze tworzone i zarządzane mogą służyć do szyfrowania lub odszyfrowywania danych magazynowanych, takich jak indeksy i mapy synonimów.
Nazwa | Typ | Opis |
---|---|---|
accessCredentials |
Opcjonalne poświadczenia usługi Azure Active Directory używane do uzyskiwania dostępu do usługi Azure Key Vault. Nie jest wymagane, jeśli zamiast tego używasz tożsamości zarządzanej. |
|
keyVaultKeyName |
string |
Nazwa klucza usługi Azure Key Vault, który ma być używany do szyfrowania danych magazynowanych. |
keyVaultKeyVersion |
string |
Wersja klucza usługi Azure Key Vault, która ma być używana do szyfrowania danych magazynowanych. |
keyVaultUri |
string |
Identyfikator URI usługi Azure Key Vault, nazywany również nazwą DNS, który zawiera klucz używany do szyfrowania danych magazynowanych. Przykładowy identyfikator URI może być |
SoftDeleteColumnDeletionDetectionPolicy
Definiuje zasady wykrywania usuwania danych, które implementują strategię usuwania nietrwałego. Określa, czy element powinien zostać usunięty na podstawie wartości wyznaczonej kolumny "usuwanie nietrwałe".
Nazwa | Typ | Opis |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment identyfikatora URI określający typ zasad wykrywania usuwania danych. |
softDeleteColumnName |
string |
Nazwa kolumny do użycia do wykrywania usuwania nietrwałego. |
softDeleteMarkerValue |
string |
Wartość znacznika identyfikującą element jako usunięty. |
SqlIntegratedChangeTrackingPolicy
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany przy użyciu funkcji zintegrowanego śledzenia zmian usługi Azure SQL Database.
Nazwa | Typ | Opis |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment identyfikatora URI określający typ zasad wykrywania zmian danych. |