Data Sources - Create
Tworzy nowe źródło danych.
POST {endpoint}/datasources?api-version=2023-11-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 dla ź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 tworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania magazynowanych 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 1 stycznia 2019 r. lub później. |
Odpowiedzi
Nazwa | Typ | Opis |
---|---|---|
201 Created | ||
Other Status Codes |
Odpowiedź na błąd. |
Przykłady
SearchServiceCreateDataSource
Sample Request
POST https://myservice.search.windows.net/datasources?api-version=2023-11-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>"
}
}
}
Sample Response
{
"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. |
High |
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany na podstawie wartości kolumny znacznika górnego. |
Search |
Opisuje warunek błędu dla interfejsu API. |
Search |
Reprezentuje informacje o jednostce (na przykład Azure SQL tabeli lub kolekcji cosmosDB), które zostaną zindeksowane. |
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 w usłudze wyszukiwania, 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 zintegrowanej funkcji Change Tracking 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 dla 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ść |
HighWaterMarkChangeDetectionPolicy
Definiuje zasady wykrywania zmian danych, które przechwytują zmiany na podstawie wartości kolumny znacznika górnego.
Nazwa | Typ | Opis |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment identyfikatora URI określający typ zasad wykrywania zmian danych. |
highWaterMarkColumnName |
string |
Nazwa kolumny górnego znaku wodnego. |
SearchError
Opisuje warunek błędu dla interfejsu API.
Nazwa | Typ | Opis |
---|---|---|
code |
string |
Jeden z zdefiniowanych przez serwer zestaw kodów błędów. |
details |
Tablica szczegółów dotyczących określonych błędów, które doprowadziły do tego zgłoszonego błędu. |
|
message |
string |
Czytelna dla człowieka reprezentacja błędu. |
SearchIndexerDataContainer
Reprezentuje informacje o jednostce (na przykład Azure SQL tabeli lub kolekcji cosmosDB), które zostaną zindeksowane.
Nazwa | Typ | Opis |
---|---|---|
name |
string |
Nazwa tabeli lub widoku (dla źródła danych Azure SQL) lub kolekcji (dla źródła danych CosmosDB), która zostanie zindeksowana. |
query |
string |
Zapytanie stosowane do tego kontenera danych. Składnia i znaczenie tego parametru są specyficzne dla źródła danych. Nieobsługiwane przez Azure SQL źródła danych. |
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 dla ź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 tworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania magazynowanych 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 1 stycznia 2019 r. lub później. |
|
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 Azure SQL źródło danych. |
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 w usłudze wyszukiwania, 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 Key Vault platformy Azure, który ma być używany do szyfrowania danych magazynowanych. |
keyVaultKeyVersion |
string |
Wersja klucza Key Vault platformy Azure, 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 mieć wartość |
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, która ma być używana 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 zintegrowanej funkcji Change Tracking usługi Azure SQL Database.
Nazwa | Typ | Opis |
---|---|---|
@odata.type |
string:
#Microsoft. |
Fragment identyfikatora URI określający typ zasad wykrywania zmian danych. |