Indexers - Create Or Update
Tworzy nowy indeksator lub aktualizuje indeksator, jeśli już istnieje.
PUT {endpoint}/indexers('{indexerName}')?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. |
indexer
|
path | True |
string |
Nazwa indeksatora do utworzenia lub zaktualizowania. |
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. |
|
If-Match |
string |
Definiuje warunek If-Match. Operacja zostanie wykonana tylko wtedy, gdy element ETag na serwerze jest zgodny z tą wartością. |
|
If-None-Match |
string |
Definiuje warunek If-None-Match. Operacja zostanie wykonana tylko wtedy, gdy element ETag na serwerze nie jest zgodny z tą wartością. |
|
Prefer | True |
string |
W przypadku żądań HTTP PUT nakazuje usłudze zwrócenie utworzonego/zaktualizowanego zasobu w przypadku powodzenia. |
Treść żądania
Nazwa | Wymagane | Typ | Opis |
---|---|---|---|
dataSourceName | True |
string |
Nazwa źródła danych, z którego ten indeksator odczytuje dane. |
name | True |
string |
Nazwa indeksatora. |
targetIndexName | True |
string |
Nazwa indeksu, do którego ten indeksator zapisuje dane. |
@odata.etag |
string |
Element ETag indeksatora. |
|
description |
string |
Opis indeksatora. |
|
disabled |
boolean |
Wartość wskazująca, czy indeksator jest wyłączony. Wartość domyślna to false. |
|
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 indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może je odszyfrować. Po zaszyfrowaniu definicji indeksatora będzie ona zawsze szyfrowana. 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; Nie będzie to miało wpływu na definicję indeksatora (i stan wykonywania indeksatora). 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. |
||
fieldMappings |
Definiuje mapowania między polami w źródle danych i odpowiednimi polami docelowymi w indeksie. |
||
outputFieldMappings |
Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem. |
||
parameters |
Parametry wykonywania indeksatora. |
||
schedule |
Harmonogram dla tego indeksatora. |
||
skillsetName |
string |
Nazwa zestawu umiejętności wykonywanego za pomocą tego indeksatora. |
Odpowiedzi
Nazwa | Typ | Opis |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
Odpowiedź na błąd. |
Przykłady
SearchServiceCreateOrUpdateIndexer
Przykładowe żądanie
PUT https://myservice.search.windows.net/indexers('myindexer')?api-version=2024-07-01
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": null
}
}
Przykładowa odpowiedź
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"fieldMappings": [],
"disabled": false,
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": null
}
}
{
"name": "myindexer",
"description": "a cool indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"fieldMappings": [],
"disabled": false,
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": 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. |
Blob |
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają być wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to zawartości obrazu osadzonego w .PDF lub innych aplikacjach albo plikach obrazów, takich jak .jpg i .png, w obiektach blob platformy Azure. |
Blob |
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga również dołączenia zestawu umiejętności do tego indeksatora. |
Blob |
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektu blob platformy Azure. |
Blob |
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage. |
Error |
Dodatkowe informacje o błędzie zarządzania zasobami. |
Error |
Szczegóły błędu. |
Error |
Odpowiedź na błąd |
Field |
Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie. |
Field |
Reprezentuje funkcję, która przekształca wartość ze źródła danych przed indeksowaniem. |
Indexer |
Określa środowisko, w którym indeksator powinien być wykonywany. |
Indexing |
Reprezentuje parametry wykonywania indeksatora. |
Indexing |
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa to nazwa określonej właściwości. Każda wartość musi być typu pierwotnego. |
Indexing |
Reprezentuje harmonogram wykonywania indeksatora. |
Search |
Reprezentuje indeksator. |
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. |
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. |
BlobIndexerDataToExtract
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają być wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to zawartości obrazu osadzonego w .PDF lub innych aplikacjach albo plikach obrazów, takich jak .jpg i .png, w obiektach blob platformy Azure.
Nazwa | Typ | Opis |
---|---|---|
allMetadata |
string |
Wyodrębnia metadane dostarczane przez podsystem magazynu obiektów blob platformy Azure i metadane specyficzne dla typu zawartości (na przykład metadane unikatowe dla tylko .png plików są indeksowane). |
contentAndMetadata |
string |
Wyodrębnia wszystkie metadane i zawartość tekstową z każdego obiektu blob. |
storageMetadata |
string |
Indeksuje tylko standardowe właściwości obiektu blob i metadane określone przez użytkownika. |
BlobIndexerImageAction
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga również dołączenia zestawu umiejętności do tego indeksatora.
Nazwa | Typ | Opis |
---|---|---|
generateNormalizedImagePerPage |
string |
Wyodrębnia tekst z obrazów (na przykład słowo "STOP" z znaku zatrzymania ruchu) i osadza go w polu zawartości, ale traktuje pliki PDF inaczej, ponieważ każda strona będzie renderowana jako obraz i odpowiednio znormalizowana, zamiast wyodrębniać osadzone obrazy. Typy plików innych niż PDF będą traktowane tak samo jak w przypadku ustawienia "generateNormalizedImages". |
generateNormalizedImages |
string |
Wyodrębnia tekst z obrazów (na przykład słowo "STOP" z znaku zatrzymania ruchu) i osadza go w polu zawartości. Ta akcja wymaga ustawienia parametru "dataToExtract" na wartość "contentAndMetadata". Znormalizowany obraz odnosi się do dodatkowego przetwarzania, co powoduje jednolite dane wyjściowe obrazu, rozmiar i obrócony w celu promowania spójnego renderowania podczas dołączania obrazów do wyników wyszukiwania wizualnego. Te informacje są generowane dla każdego obrazu podczas korzystania z tej opcji. |
none |
string |
Ignoruje osadzone obrazy lub pliki obrazów w zestawie danych. Jest to wartość domyślna. |
BlobIndexerParsingMode
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektu blob platformy Azure.
Nazwa | Typ | Opis |
---|---|---|
default |
string |
Ustaw wartość domyślną dla normalnego przetwarzania plików. |
delimitedText |
string |
Ustaw wartość na rozdzielanyTekst, gdy obiekty blob są zwykłymi plikami CSV. |
json |
string |
Ustaw wartość json na wyodrębnianie zawartości ustrukturyzowanej z plików JSON. |
jsonArray |
string |
Ustaw wartość jsonArray, aby wyodrębnić poszczególne elementy tablicy JSON jako oddzielne dokumenty. |
jsonLines |
string |
Ustaw wartość jsonLines, aby wyodrębnić poszczególne jednostki JSON oddzielone nowym wierszem jako osobne dokumenty. |
text |
string |
Ustaw wartość na tekst, aby zwiększyć wydajność indeksowania plików zwykłego tekstu w magazynie obiektów blob. |
BlobIndexerPDFTextRotationAlgorithm
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage.
Nazwa | Typ | Opis |
---|---|---|
detectAngles |
string |
Może tworzyć lepsze i bardziej czytelne wyodrębnianie tekstu z plików PDF, które obracały tekst w nich. Należy pamiętać, że w przypadku użycia tego parametru może wystąpić niewielki wpływ na szybkość wydajności. Ten parametr dotyczy tylko plików PDF i tylko plików PDF z osadzonym tekstem. Jeśli obrócony tekst pojawi się w osadzonym obrazie w pliku PDF, ten parametr nie ma zastosowania. |
none |
string |
Wykorzystuje normalne wyodrębnianie tekstu. Jest to wartość domyślna. |
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. |
FieldMapping
Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie.
Nazwa | Typ | Opis |
---|---|---|
mappingFunction |
Funkcja, która ma być stosowana do każdej wartości pola źródłowego przed indeksowaniem. |
|
sourceFieldName |
string |
Nazwa pola w źródle danych. |
targetFieldName |
string |
Nazwa pola docelowego w indeksie. Domyślnie jest taka sama jak nazwa pola źródłowego. |
FieldMappingFunction
Reprezentuje funkcję, która przekształca wartość ze źródła danych przed indeksowaniem.
Nazwa | Typ | Opis |
---|---|---|
name |
string |
Nazwa funkcji mapowania pól. |
parameters |
object |
Słownik par nazwa/wartość parametru do przekazania do funkcji. Każda wartość musi być typu pierwotnego. |
IndexerExecutionEnvironment
Określa środowisko, w którym indeksator powinien być wykonywany.
Nazwa | Typ | Opis |
---|---|---|
private |
string |
Wskazuje, że indeksator powinien działać ze środowiskiem aprowizowanym specjalnie dla usługi wyszukiwania. Należy to określić tylko jako środowisko wykonywania, jeśli indeksator musi bezpiecznie uzyskiwać dostęp do zasobów za pośrednictwem udostępnionych zasobów łącza prywatnego. |
standard |
string |
Wskazuje, że usługa wyszukiwania może określić miejsce wykonywania indeksatora. Jest to środowisko domyślne, gdy nic nie zostanie określone i jest zalecaną wartością. |
IndexingParameters
Reprezentuje parametry wykonywania indeksatora.
Nazwa | Typ | Domyślna wartość | Opis |
---|---|---|---|
batchSize |
integer |
Liczba elementów odczytywanych ze źródła danych i indeksowanych jako pojedyncza partia w celu zwiększenia wydajności. Wartość domyślna zależy od typu źródła danych. |
|
configuration |
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa to nazwa określonej właściwości. Każda wartość musi być typu pierwotnego. |
||
maxFailedItems |
integer |
0 |
Maksymalna liczba elementów, które mogą zakończyć się niepowodzeniem indeksowania dla wykonywania indeksatora, które nadal będą uznawane za pomyślne. -1 oznacza brak limitu. Wartość domyślna to 0. |
maxFailedItemsPerBatch |
integer |
0 |
Maksymalna liczba elementów w pojedynczej partii, które mogą zakończyć się niepowodzeniem indeksowania dla partii, aby nadal można je było traktować jako pomyślne. -1 oznacza brak limitu. Wartość domyślna to 0. |
IndexingParametersConfiguration
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa to nazwa określonej właściwości. Każda wartość musi być typu pierwotnego.
Nazwa | Typ | Domyślna wartość | Opis |
---|---|---|---|
allowSkillsetToReadFileData |
boolean |
False |
Jeśli wartość true, spowoduje utworzenie ścieżki //document//file_data, która jest obiektem reprezentującym oryginalne dane pliku pobrane ze źródła danych obiektu blob. Dzięki temu można przekazać oryginalne dane plików do niestandardowej umiejętności przetwarzania w potoku wzbogacania lub do umiejętności wyodrębniania dokumentów. |
dataToExtract | contentAndMetadata |
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają być wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to zawartości obrazu osadzonego w .PDF lub innych aplikacjach albo plikach obrazów, takich jak .jpg i .png, w obiektach blob platformy Azure. |
|
delimitedTextDelimiter |
string |
W przypadku obiektów blob CSV określa ogranicznik jednoznaczny końca wiersza dla plików CSV, w których każdy wiersz uruchamia nowy dokument (na przykład "|"). |
|
delimitedTextHeaders |
string |
W przypadku obiektów blob CSV określa rozdzielaną przecinkami listę nagłówków kolumn, co jest przydatne w przypadku mapowania pól źródłowych na pola docelowe w indeksie. |
|
documentRoot |
string |
W przypadku tablic JSON, biorąc pod uwagę ustrukturyzowany lub częściowo ustrukturyzowany dokument, można określić ścieżkę do tablicy przy użyciu tej właściwości. |
|
excludedFileNameExtensions |
string |
Rozdzielana przecinkami lista rozszerzeń nazw plików do ignorowania podczas przetwarzania z usługi Azure Blob Storage. Można na przykład wykluczyć element ".png, .mp4", aby pominąć te pliki podczas indeksowania. |
|
executionEnvironment | standard |
Określa środowisko, w którym indeksator powinien być wykonywany. |
|
failOnUnprocessableDocument |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw wartość false, jeśli chcesz kontynuować indeksowanie, jeśli indeksowanie dokumentu zakończy się niepowodzeniem. |
failOnUnsupportedContentType |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw wartość false, jeśli chcesz kontynuować indeksowanie w przypadku napotkania nieobsługiwanego typu zawartości i nie znasz z wyprzedzeniem wszystkich typów zawartości (rozszerzeń plików). |
firstLineContainsHeaders |
boolean |
True |
W przypadku obiektów blob CSV wskazuje, że pierwszy (niepusty) wiersz każdego obiektu blob zawiera nagłówki. |
imageAction | none |
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga również dołączenia zestawu umiejętności do tego indeksatora. |
|
indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw tę właściwość na wartość true, aby nadal indeksować metadane magazynu dla zawartości obiektów blob, która jest zbyt duża do przetworzenia. Oversized blobs są domyślnie traktowane jako błędy. Aby uzyskać informacje o limitach dotyczących rozmiaru obiektu blob, zobacz https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. |
indexedFileNameExtensions |
string |
Rozdzielana przecinkami lista rozszerzeń nazw plików do wybrania podczas przetwarzania z usługi Azure Blob Storage. Można na przykład skoncentrować się na indeksowaniu określonych plików aplikacji ".docx, .pptx, .msg", aby uwzględnić te typy plików. |
|
parsingMode | default |
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektu blob platformy Azure. |
|
pdfTextRotationAlgorithm | none |
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage. |
|
queryTimeout |
string |
00:05:00 |
Zwiększa limit czasu poza 5-minutową wartością domyślną dla źródeł danych usługi Azure SQL Database określonym w formacie "hh:mm:ss". |
IndexingSchedule
Reprezentuje harmonogram wykonywania indeksatora.
Nazwa | Typ | Opis |
---|---|---|
interval |
string |
Interwał czasu między wykonaniami indeksatora. |
startTime |
string |
Czas uruchomienia indeksatora. |
SearchIndexer
Reprezentuje indeksator.
Nazwa | Typ | Domyślna wartość | Opis |
---|---|---|---|
@odata.etag |
string |
Element ETag indeksatora. |
|
dataSourceName |
string |
Nazwa źródła danych, z którego ten indeksator odczytuje dane. |
|
description |
string |
Opis indeksatora. |
|
disabled |
boolean |
False |
Wartość wskazująca, czy indeksator jest wyłączony. Wartość domyślna to false. |
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 indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może je odszyfrować. Po zaszyfrowaniu definicji indeksatora będzie ona zawsze szyfrowana. 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; Nie będzie to miało wpływu na definicję indeksatora (i stan wykonywania indeksatora). 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. |
||
fieldMappings |
Definiuje mapowania między polami w źródle danych i odpowiednimi polami docelowymi w indeksie. |
||
name |
string |
Nazwa indeksatora. |
|
outputFieldMappings |
Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem. |
||
parameters |
Parametry wykonywania indeksatora. |
||
schedule |
Harmonogram dla tego indeksatora. |
||
skillsetName |
string |
Nazwa zestawu umiejętności wykonywanego za pomocą tego indeksatora. |
|
targetIndexName |
string |
Nazwa indeksu, do którego ten indeksator zapisuje dane. |
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ć |