Indexers - Create

Tworzy nowy indeksator.

POST {endpoint}/indexers?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 za pomocą żądania ułatwiającego debugowanie.

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

SearchResourceEncryptionKey

Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania magazynowanych dla definicji indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może ich 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ć zgodnie z potrzebami, jeśli chcesz obrócić klucz szyfrowania; Nie będzie to miało wpływu na definicję indeksatora (i stan wykonywania indeksatora). Szyfrowanie przy użyciu 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 tym, jak 1 stycznia 2019 r.

fieldMappings

FieldMapping[]

Definiuje mapowania między polami w źródle danych i odpowiadającymi im polami docelowymi w indeksie.

outputFieldMappings

FieldMapping[]

Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem.

parameters

IndexingParameters

Parametry wykonywania indeksatora.

schedule

IndexingSchedule

Harmonogram dla tego indeksatora.

skillsetName

string

Nazwa zestawu umiejętności wykonywanego za pomocą tego indeksatora.

Odpowiedzi

Nazwa Typ Opis
201 Created

SearchIndexer

Other Status Codes

SearchError

Odpowiedź na błąd.

Przykłady

SearchServiceCreateIndexer

Sample Request

POST https://myservice.search.windows.net/indexers?api-version=2023-11-01

{
  "name": "myindexer",
  "description": "an 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": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample Response

{
  "name": "myindexer",
  "description": "an 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": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": null
    }
  }
}

Definicje

Nazwa Opis
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.

BlobIndexerDataToExtract

Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, który dane mają zostać 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 innej aplikacji albo plików obrazów, takich jak .jpg i .png, w obiektach blob platformy Azure.

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, aby zestaw umiejętności był również dołączony do tego indeksatora.

BlobIndexerParsingMode

Reprezentuje tryb analizowania indeksowania ze źródła danych obiektu blob platformy Azure.

BlobIndexerPDFTextRotationAlgorithm

Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage.

FieldMapping

Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie.

FieldMappingFunction

Reprezentuje funkcję, która przekształca wartość ze źródła danych przed indeksowaniem.

IndexerExecutionEnvironment

Określa środowisko, w którym indeksator powinien być wykonywany.

IndexingParameters

Reprezentuje parametry wykonywania indeksatora.

IndexingParametersConfiguration

Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą określonej właściwości. Każda wartość musi być typu pierwotnego.

IndexingSchedule

Reprezentuje harmonogram wykonywania indeksatora.

SearchError

Opisuje warunek błędu interfejsu API.

SearchIndexer

Reprezentuje indeksator.

SearchResourceEncryptionKey

Klucz szyfrowania zarządzanego 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.

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óry otrzymał wymagane uprawnienia dostępu do usługi Azure Key Vault, który ma być używany 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óry dane mają zostać 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 innej aplikacji albo plików obrazów, takich jak .jpg i .png, w obiektach blob platformy Azure.

Nazwa Typ Opis
allMetadata

string

Wyodrębnia metadane udostępniane 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, aby zestaw umiejętności był również dołączony do tego indeksatora.

Nazwa Typ Opis
generateNormalizedImagePerPage

string

Wyodrębnia tekst z obrazów (na przykład wyraz "STOP" z znaku zatrzymania ruchu) i osadza go w polu zawartości, ale traktuje pliki PDF inaczej w tym, że 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 wyraz "STOP" z znaku zatrzymania ruchu) i osadza go w polu zawartości. Ta akcja wymaga ustawienia "dataToExtract" na wartość "contentAndMetadata". Znormalizowany obraz odnosi się do dodatkowego przetwarzania, co powoduje jednolite dane wyjściowe obrazu, rozmiar i rotację 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 opcja 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 rozdzielany tekst, gdy obiekty blob są zwykłymi plikami CSV.

json

string

Ustaw wartość na json, aby wyodrębnić zawartość ustrukturyzowaną 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 oddzielne dokumenty.

text

string

Ustaw wartość na tekst, aby zwiększyć wydajność indeksowania w plikach 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 generować 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 formacie PDF, ten parametr nie ma zastosowania.

none

string

Wykorzystuje normalne wyodrębnianie tekstu. Jest to opcja domyślna.

FieldMapping

Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie.

Nazwa Typ Opis
mappingFunction

FieldMappingFunction

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 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 jest określone i jest zalecaną wartością.

IndexingParameters

Reprezentuje parametry wykonywania indeksatora.

Nazwa Typ Wartość domyślna 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

IndexingParametersConfiguration

Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą 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óra może zakończyć się niepowodzeniem indeksowania dla partii, która będzie nadal uznawana za pomyślną. -1 oznacza brak limitu. Wartość domyślna to 0.

IndexingParametersConfiguration

Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą określonej właściwości. Każda wartość musi być typu pierwotnego.

Nazwa Typ Wartość domyślna Opis
allowSkillsetToReadFileData

boolean

False

Jeśli wartość true, utworzy ścieżkę //document//file_data, która jest obiektem reprezentującym oryginalne dane pliku pobrane ze źródła danych obiektu blob. Umożliwia to przekazanie oryginalnych danych plików do niestandardowej umiejętności przetwarzania w potoku wzbogacania lub umiejętności wyodrębniania dokumentów.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, który dane mają zostać 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 innej aplikacji albo plików 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, przydatną do 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ć ".png, .mp4", aby pominąć te pliki podczas indeksowania.

executionEnvironment

IndexerExecutionEnvironment

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 po napotkaniu 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

BlobIndexerImageAction

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, aby zestaw umiejętności był również dołączony 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 obiektu blob, która jest zbyt duża do przetworzenia. Oversized blobs są domyślnie traktowane jako błędy. Aby uzyskać informacje o limitach rozmiaru obiektu blob, zobacz https://docs.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 skupić się na indeksowaniu określonych plików aplikacji ".docx, .pptx, .msg", aby uwzględnić te typy plików.

parsingMode

BlobIndexerParsingMode

default

Reprezentuje tryb analizowania indeksowania ze źródła danych obiektu blob platformy Azure.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

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ść domyślną dla Azure SQL źródeł danych bazy danych określonych w formacie "hh:mm:ss".

IndexingSchedule

Reprezentuje harmonogram wykonywania indeksatora.

Nazwa Typ Opis
interval

string

Interwał czasu między wykonaniami indeksatora.

startTime

string

Czas rozpoczęcia działania indeksatora.

SearchError

Opisuje warunek błędu interfejsu API.

Nazwa Typ Opis
code

string

Jeden z zdefiniowanych przez serwer zestaw kodów błędów.

details

SearchError[]

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.

SearchIndexer

Reprezentuje indeksator.

Nazwa Typ Wartość domyślna 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

SearchResourceEncryptionKey

Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz służy do zapewnienia dodatkowego poziomu szyfrowania magazynowanych dla definicji indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może ich 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ć zgodnie z potrzebami, jeśli chcesz obrócić klucz szyfrowania; Nie będzie to miało wpływu na definicję indeksatora (i stan wykonywania indeksatora). Szyfrowanie przy użyciu 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 tym, jak 1 stycznia 2019 r.

fieldMappings

FieldMapping[]

Definiuje mapowania między polami w źródle danych i odpowiadającymi im polami docelowymi w indeksie.

name

string

Nazwa indeksatora.

outputFieldMappings

FieldMapping[]

Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem.

parameters

IndexingParameters

Parametry wykonywania indeksatora.

schedule

IndexingSchedule

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ądzanego 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

AzureActiveDirectoryApplicationCredentials

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 używana do szyfrowania danych magazynowanych.

keyVaultUri

string

Identyfikator URI Key Vault platformy Azure, nazywany również nazwą DNS, który zawiera klucz używany do szyfrowania danych magazynowanych. Przykładowy identyfikator URI może być .https://my-keyvault-name.vault.azure.net