Freigeben über


Indexers - Create

Erstellt einen neuen Indexer.

POST {endpoint}/indexers?api-version=2024-07-01

URI-Parameter

Name In Erforderlich Typ Beschreibung
endpoint
path True

string

Die Endpunkt-URL des Suchdiensts.

api-version
query True

string

Client-API-Version.

Anforderungsheader

Name Erforderlich Typ Beschreibung
x-ms-client-request-id

string

uuid

Die Tracking-ID, die mit der Anforderung gesendet wurde, um beim Debuggen zu helfen.

Anforderungstext

Name Erforderlich Typ Beschreibung
dataSourceName True

string

Der Name der Datenquelle, aus der dieser Indexer Daten liest.

name True

string

Der Name des Indexers.

targetIndexName True

string

Der Name des Indexes, in den dieser Indexer Daten schreibt.

@odata.etag

string

Das ETag des Indexers.

description

string

Die Beschreibung des Indexers.

disabled

boolean

Ein Wert, der angibt, ob der Indexer deaktiviert ist. Der Standardwert ist "false".

encryptionKey

SearchResourceEncryptionKey

Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Stufe der verschlüsselungsinternen Verschlüsselung für Ihre Indexerdefinition (sowie den Indexerausführungsstatus) bereitzustellen, wenn Sie vollständige Sicherheit wünschen, dass niemand, nicht einmal Microsoft, sie entschlüsseln kann. Nachdem Sie Ihre Indexerdefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft nach Bedarf ändern, wenn Sie den Verschlüsselungsschlüssel drehen möchten. Ihre Indexerdefinition (und der Indexerausführungsstatus) sind davon unberührt. Verschlüsselung mit vom Kunden verwalteten Schlüsseln steht nicht für kostenlose Suchdienste zur Verfügung und ist nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden.

fieldMappings

FieldMapping[]

Definiert Zuordnungen zwischen Feldern in der Datenquelle und entsprechenden Zielfeldern im Index.

outputFieldMappings

FieldMapping[]

Ausgabefeldzuordnungen werden nach Anreicherung und unmittelbar vor der Indizierung angewendet.

parameters

IndexingParameters

Parameter für die Indizierungsausführung.

schedule

IndexingSchedule

Der Zeitplan für diesen Indexer.

skillsetName

string

Der Name des mit diesem Indexer ausgeführten Skillsets.

Antworten

Name Typ Beschreibung
201 Created

SearchIndexer

Other Status Codes

ErrorResponse

Fehlerantwort.

Beispiele

SearchServiceCreateIndexer

Beispielanforderung

POST https://myservice.search.windows.net/indexers?api-version=2024-07-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>"
    }
  }
}

Beispiel für eine Antwort

{
  "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
    }
  }
}

Definitionen

Name Beschreibung
AzureActiveDirectoryApplicationCredentials

Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für authentifizierten Zugriff auf die im Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird.

BlobIndexerDataToExtract

Gibt die Daten an, die aus Azure Blob Storage extrahiert werden sollen, und teilt dem Indexer mit, welche Daten aus Bildinhalten extrahiert werden sollen, wenn "imageAction" auf einen anderen Wert als "none" festgelegt ist. Dies gilt für eingebettete Bildinhalte in einer .PDF oder einer anderen Anwendung oder Bilddateien wie .jpg und .pngin Azure-Blobs.

BlobIndexerImageAction

Bestimmt, wie eingebettete Bilder und Bilddateien im Azure Blob Storage verarbeitet werden. Wenn Sie die "imageAction"-Konfiguration auf einen anderen Wert als "none" festlegen, muss auch ein Skillset an diesen Indexer angefügt werden.

BlobIndexerParsingMode

Stellt den Analysemodus für die Indizierung aus einer Azure-Blob-Datenquelle dar.

BlobIndexerPDFTextRotationAlgorithm

Bestimmt den Algorithmus für die Textextraktion aus PDF-Dateien im Azure Blob Storage.

ErrorAdditionalInfo

Der Ressourcenverwaltungsfehler zusätzliche Informationen.

ErrorDetail

Das Fehlerdetails.

ErrorResponse

Fehlerantwort

FieldMapping

Definiert eine Zuordnung zwischen einem Feld in einer Datenquelle und einem Zielfeld in einem Index.

FieldMappingFunction

Stellt eine Funktion dar, die einen Wert aus einer Datenquelle vor der Indizierung transformiert.

IndexerExecutionEnvironment

Gibt die Umgebung an, in der der Indexer ausgeführt werden soll.

IndexingParameters

Stellt Parameter für die Indizierungsausführung dar.

IndexingParametersConfiguration

Ein Wörterbuch mit indexerspezifischen Konfigurationseigenschaften. Jeder Name ist der Name einer bestimmten Eigenschaft. Jeder Wert muss einen Grundtyp aufweisen.

IndexingSchedule

Stellt einen Zeitplan für die Indizierungsausführung dar.

SearchIndexer

Stellt einen Indexer dar.

SearchResourceEncryptionKey

Ein vom Kunden verwalteter Verschlüsselungsschlüssel im Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten verwendet werden, z. B. Indizes und Synonymzuordnungen.

AzureActiveDirectoryApplicationCredentials

Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für authentifizierten Zugriff auf die im Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird.

Name Typ Beschreibung
applicationId

string

Eine AAD-Anwendungs-ID, die die erforderlichen Zugriffsberechtigungen für den Azure Key Vault erteilt hat, die beim Verschlüsseln Ihrer ruhenden Daten verwendet werden sollen. Die Anwendungs-ID sollte nicht mit der Objekt-ID für Ihre AAD-Anwendung verwechselt werden.

applicationSecret

string

Der Authentifizierungsschlüssel der angegebenen AAD-Anwendung.

BlobIndexerDataToExtract

Gibt die Daten an, die aus Azure Blob Storage extrahiert werden sollen, und teilt dem Indexer mit, welche Daten aus Bildinhalten extrahiert werden sollen, wenn "imageAction" auf einen anderen Wert als "none" festgelegt ist. Dies gilt für eingebettete Bildinhalte in einer .PDF oder einer anderen Anwendung oder Bilddateien wie .jpg und .pngin Azure-Blobs.

Name Typ Beschreibung
allMetadata

string

Extrahiert Metadaten, die vom Azure Blob Storage-Subsystem bereitgestellt werden, und die inhaltstypspezifischen Metadaten (z. B. Metadaten, die nur für .png Dateien indiziert sind).

contentAndMetadata

string

Extrahiert alle Metadaten und Textinhalte aus jedem Blob.

storageMetadata

string

Indiziert nur die Standard-BLOB-Eigenschaften und vom Benutzer angegebenen Metadaten.

BlobIndexerImageAction

Bestimmt, wie eingebettete Bilder und Bilddateien im Azure Blob Storage verarbeitet werden. Wenn Sie die "imageAction"-Konfiguration auf einen anderen Wert als "none" festlegen, muss auch ein Skillset an diesen Indexer angefügt werden.

Name Typ Beschreibung
generateNormalizedImagePerPage

string

Extrahiert Text aus Bildern (z. B. das Wort "STOP" aus einem Verkehrsstoppzeichen), und bettet ihn in das Inhaltsfeld ein, behandelt jedoch PDF-Dateien anders, da jede Seite als Bild gerendert und entsprechend normalisiert wird, anstatt eingebettete Bilder zu extrahieren. Nicht-PDF-Dateitypen werden so behandelt, als ob "generateNormalizedImages" festgelegt wurde.

generateNormalizedImages

string

Extrahiert Text aus Bildern (z. B. das Wort "STOP" aus einem Ampelzeichen), und bettet ihn in das Inhaltsfeld ein. Diese Aktion erfordert, dass "dataToExtract" auf "contentAndMetadata" festgelegt ist. Ein normalisiertes Bild bezieht sich auf eine zusätzliche Verarbeitung, die zu einer einheitlichen Bildausgabe, größe und gedreht wird, um ein einheitliches Rendering zu fördern, wenn Sie Bilder in visuelle Suchergebnisse einschließen. Diese Informationen werden für jedes Bild generiert, wenn Sie diese Option verwenden.

none

string

Ignoriert eingebettete Bilder oder Bilddateien im Dataset. Dies ist die Standardeinstellung.

BlobIndexerParsingMode

Stellt den Analysemodus für die Indizierung aus einer Azure-Blob-Datenquelle dar.

Name Typ Beschreibung
default

string

Standardeinstellung für die normale Dateiverarbeitung.

delimitedText

string

Legen Sie diese Eigenschaft auf "delimitedText" fest, wenn Blobs einfache CSV-Dateien sind.

json

string

Legen Sie auf json fest, um strukturierte Inhalte aus JSON-Dateien zu extrahieren.

jsonArray

string

Legen Sie "jsonArray" fest, um einzelne Elemente eines JSON-Arrays als separate Dokumente zu extrahieren.

jsonLines

string

Legen Sie auf jsonLines fest, um einzelne JSON-Entitäten zu extrahieren, getrennt durch eine neue Zeile, als separate Dokumente.

text

string

Legen Sie diesen Wert auf Text fest, um die Indizierungsleistung für Nur-Text-Dateien im BLOB-Speicher zu verbessern.

BlobIndexerPDFTextRotationAlgorithm

Bestimmt den Algorithmus für die Textextraktion aus PDF-Dateien im Azure Blob Storage.

Name Typ Beschreibung
detectAngles

string

Kann eine bessere und besser lesbare Textextraktion aus PDF-Dateien erzeugen, die Text darin gedreht haben. Beachten Sie, dass sich bei verwendung dieses Parameters möglicherweise eine geringe Leistungsgeschwindigkeit auswirkt. Dieser Parameter gilt nur für PDF-Dateien und nur für PDF-Dateien mit eingebetteten Text. Wenn der gedrehte Text in einem eingebetteten Bild in der PDF-Datei angezeigt wird, gilt dieser Parameter nicht.

none

string

Nutzt die normale Textextraktion. Dies ist die Standardeinstellung.

ErrorAdditionalInfo

Der Ressourcenverwaltungsfehler zusätzliche Informationen.

Name Typ Beschreibung
info

object

Die zusätzlichen Informationen.

type

string

Der zusätzliche Informationstyp.

ErrorDetail

Das Fehlerdetails.

Name Typ Beschreibung
additionalInfo

ErrorAdditionalInfo[]

Die zusätzlichen Informationen des Fehlers.

code

string

Der Fehlercode.

details

ErrorDetail[]

Die Fehlerdetails.

message

string

Die Fehlermeldung.

target

string

Das Fehlerziel.

ErrorResponse

Fehlerantwort

Name Typ Beschreibung
error

ErrorDetail

Das Fehlerobjekt.

FieldMapping

Definiert eine Zuordnung zwischen einem Feld in einer Datenquelle und einem Zielfeld in einem Index.

Name Typ Beschreibung
mappingFunction

FieldMappingFunction

Eine Funktion, die vor der Indizierung auf jeden Quellfeldwert angewendet werden soll.

sourceFieldName

string

Der Name des Felds in der Datenquelle.

targetFieldName

string

Der Name des Zielfelds im Index. Identisch mit dem Quellfeldnamen standardmäßig.

FieldMappingFunction

Stellt eine Funktion dar, die einen Wert aus einer Datenquelle vor der Indizierung transformiert.

Name Typ Beschreibung
name

string

Der Name der Feldzuordnungsfunktion.

parameters

object

Ein Wörterbuch mit Parameternamen-Wert-Paaren, die an die Funktion übergeben werden sollen. Jeder Wert muss einen Grundtyp aufweisen.

IndexerExecutionEnvironment

Gibt die Umgebung an, in der der Indexer ausgeführt werden soll.

Name Typ Beschreibung
private

string

Gibt an, dass der Indexer mit der Umgebung ausgeführt werden soll, die speziell für den Suchdienst bereitgestellt wird. Dies sollte nur als Ausführungsumgebung angegeben werden, wenn der Indexer sicher über freigegebene private Linkressourcen auf Ressourcen zugreifen muss.

standard

string

Gibt an, dass der Suchdienst bestimmen kann, wo der Indexer ausgeführt werden soll. Dies ist die Standardumgebung, wenn nichts angegeben wird und der empfohlene Wert ist.

IndexingParameters

Stellt Parameter für die Indizierungsausführung dar.

Name Typ Standardwert Beschreibung
batchSize

integer

Die Anzahl der Elemente, die aus der Datenquelle gelesen und als einzelner Batch indiziert werden, um die Leistung zu verbessern. Der Standardwert hängt vom Datenquellentyp ab.

configuration

IndexingParametersConfiguration

Ein Wörterbuch mit indexerspezifischen Konfigurationseigenschaften. Jeder Name ist der Name einer bestimmten Eigenschaft. Jeder Wert muss einen Grundtyp aufweisen.

maxFailedItems

integer

0

Die maximale Anzahl von Elementen, bei denen die Indizierung für die Indizierungsausführung fehlschlägt, wird weiterhin als erfolgreich angesehen. -1 bedeutet keine Grenze. Der Standardwert ist 0.

maxFailedItemsPerBatch

integer

0

Die maximale Anzahl von Elementen in einem einzelnen Batch, bei denen die Indizierung für den Batch nicht erfolgreich sein kann. -1 bedeutet keine Grenze. Der Standardwert ist 0.

IndexingParametersConfiguration

Ein Wörterbuch mit indexerspezifischen Konfigurationseigenschaften. Jeder Name ist der Name einer bestimmten Eigenschaft. Jeder Wert muss einen Grundtyp aufweisen.

Name Typ Standardwert Beschreibung
allowSkillsetToReadFileData

boolean

False

Bei "true" wird ein Pfad //document//file_data erstellt, bei dem es sich um ein Objekt handelt, das die ursprünglichen Dateidaten darstellt, die aus der BLOB-Datenquelle heruntergeladen wurden. Auf diese Weise können Sie die ursprünglichen Dateidaten an eine benutzerdefinierte Fähigkeit zur Verarbeitung innerhalb der Anreicherungspipeline oder an die Dokumentextraktion-Fähigkeit übergeben.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Gibt die Daten an, die aus Azure Blob Storage extrahiert werden sollen, und teilt dem Indexer mit, welche Daten aus Bildinhalten extrahiert werden sollen, wenn "imageAction" auf einen anderen Wert als "none" festgelegt ist. Dies gilt für eingebettete Bildinhalte in einer .PDF oder einer anderen Anwendung oder Bilddateien wie .jpg und .pngin Azure-Blobs.

delimitedTextDelimiter

string

Gibt für CSV-Blobs das Zeilenendetrennzeichen für CSV-Dateien an, bei denen jede Zeile ein neues Dokument beginnt (z. B. "|").

delimitedTextHeaders

string

Gibt für CSV-Blobs eine durch Trennzeichen getrennte Liste von Spaltenüberschriften an, die zum Zuordnen von Quellfeldern zu Zielfeldern in einem Index hilfreich sind.

documentRoot

string

Bei JSON-Arrays können Sie bei einem strukturierten oder halbstrukturierten Dokument mithilfe dieser Eigenschaft einen Pfad zu dem Array angeben.

excludedFileNameExtensions

string

Durch Trennzeichen getrennte Liste der Dateinamenerweiterungen, die beim Verarbeiten von Azure Blob Storage ignoriert werden sollen. Beispielsweise könnten Sie ".png, .mp4" ausschließen, um diese Dateien während der Indizierung zu überspringen.

executionEnvironment

IndexerExecutionEnvironment

standard

Gibt die Umgebung an, in der der Indexer ausgeführt werden soll.

failOnUnprocessableDocument

boolean

False

Legen Sie für Azure-Blobs auf "false" fest, wenn Sie die Indizierung fortsetzen möchten, wenn ein Dokument die Indizierung fehlschlägt.

failOnUnsupportedContentType

boolean

False

Legen Sie für Azure-Blobs den Wert "false" fest, wenn Sie die Indizierung fortsetzen möchten, wenn ein nicht unterstützter Inhaltstyp auftritt, und Sie wissen nicht alle Inhaltstypen (Dateierweiterungen) im Voraus.

firstLineContainsHeaders

boolean

True

Gibt für CSV-Blobs an, dass die erste (nicht leere) Zeile jedes BLOB Header enthält.

imageAction

BlobIndexerImageAction

none

Bestimmt, wie eingebettete Bilder und Bilddateien im Azure Blob Storage verarbeitet werden. Wenn Sie die "imageAction"-Konfiguration auf einen anderen Wert als "none" festlegen, muss auch ein Skillset an diesen Indexer angefügt werden.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

Legen Sie für Azure-Blobs diese Eigenschaft auf "true" fest, um weiterhin Speichermetadaten für BLOB-Inhalte zu indizieren, die zu groß zum Verarbeiten sind. Überdimensionierte Blobs werden standardmäßig als Fehler behandelt. Grenzwerte für blob-Größe finden Sie unter https://learn.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Durch Trennzeichen getrennte Liste der Dateinamenerweiterungen, die beim Verarbeiten aus Azure Blob Storage ausgewählt werden sollen. Beispielsweise könnten Sie sich auf die Indizierung bestimmter Anwendungsdateien ".docx, .pptx, .msg" konzentrieren, um diese Dateitypen speziell einzuschließen.

parsingMode

BlobIndexerParsingMode

default

Stellt den Analysemodus für die Indizierung aus einer Azure-Blob-Datenquelle dar.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Bestimmt den Algorithmus für die Textextraktion aus PDF-Dateien im Azure Blob Storage.

queryTimeout

string

00:05:00

Erhöht das Timeout über die 5-Minuten-Standardeinstellung für Azure SQL-Datenbankdatenquellen, die im Format "hh:mm:ss" angegeben sind.

IndexingSchedule

Stellt einen Zeitplan für die Indizierungsausführung dar.

Name Typ Beschreibung
interval

string

Das Zeitintervall zwischen Indizierungsausführungen.

startTime

string

Die Zeit, zu der ein Indexer ausgeführt werden soll.

SearchIndexer

Stellt einen Indexer dar.

Name Typ Standardwert Beschreibung
@odata.etag

string

Das ETag des Indexers.

dataSourceName

string

Der Name der Datenquelle, aus der dieser Indexer Daten liest.

description

string

Die Beschreibung des Indexers.

disabled

boolean

False

Ein Wert, der angibt, ob der Indexer deaktiviert ist. Der Standardwert ist "false".

encryptionKey

SearchResourceEncryptionKey

Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Stufe der verschlüsselungsinternen Verschlüsselung für Ihre Indexerdefinition (sowie den Indexerausführungsstatus) bereitzustellen, wenn Sie vollständige Sicherheit wünschen, dass niemand, nicht einmal Microsoft, sie entschlüsseln kann. Nachdem Sie Ihre Indexerdefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft nach Bedarf ändern, wenn Sie den Verschlüsselungsschlüssel drehen möchten. Ihre Indexerdefinition (und der Indexerausführungsstatus) sind davon unberührt. Verschlüsselung mit vom Kunden verwalteten Schlüsseln steht nicht für kostenlose Suchdienste zur Verfügung und ist nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden.

fieldMappings

FieldMapping[]

Definiert Zuordnungen zwischen Feldern in der Datenquelle und entsprechenden Zielfeldern im Index.

name

string

Der Name des Indexers.

outputFieldMappings

FieldMapping[]

Ausgabefeldzuordnungen werden nach Anreicherung und unmittelbar vor der Indizierung angewendet.

parameters

IndexingParameters

Parameter für die Indizierungsausführung.

schedule

IndexingSchedule

Der Zeitplan für diesen Indexer.

skillsetName

string

Der Name des mit diesem Indexer ausgeführten Skillsets.

targetIndexName

string

Der Name des Indexes, in den dieser Indexer Daten schreibt.

SearchResourceEncryptionKey

Ein vom Kunden verwalteter Verschlüsselungsschlüssel im Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten verwendet werden, z. B. Indizes und Synonymzuordnungen.

Name Typ Beschreibung
accessCredentials

AzureActiveDirectoryApplicationCredentials

Optionale Azure Active Directory-Anmeldeinformationen, die für den Zugriff auf Ihren Azure Key Vault verwendet werden. Ist nicht erforderlich, wenn stattdessen verwaltete Identität verwendet wird.

keyVaultKeyName

string

Der Name Ihres Azure Key Vault-Schlüssels, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll.

keyVaultKeyVersion

string

Die Version Ihres Azure Key Vault-Schlüssels, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll.

keyVaultUri

string

Der URI Ihres Azure Key Vault, auch als DNS-Name bezeichnet, der den Schlüssel enthält, der zum Verschlüsseln Ihrer ruhenden Daten verwendet werden soll. Ein Beispiel-URI kann https://my-keyvault-name.vault.azure.netsein.