Indexers - Create

Hiermee maakt u een nieuwe indexeerfunctie.

POST {endpoint}/indexers?api-version=2023-11-01

URI-parameters

Name In Vereist Type Description
endpoint
path True

string

De eindpunt-URL van de zoekservice.

api-version
query True

string

Client-API-versie.

Aanvraagkoptekst

Name Vereist Type Description
x-ms-client-request-id

string

uuid

De tracerings-id die met de aanvraag is verzonden om te helpen bij foutopsporing.

Aanvraagbody

Name Vereist Type Description
dataSourceName True

string

De naam van de gegevensbron waaruit deze indexeerfunctie gegevens leest.

name True

string

De naam van de indexeerfunctie.

targetIndexName True

string

De naam van de index waarnaar deze indexeerfunctie gegevens schrijft.

@odata.etag

string

De ETag van de indexeerfunctie.

description

string

De beschrijving van de indexeerfunctie.

disabled

boolean

Een waarde die aangeeft of de indexeerfunctie is uitgeschakeld. De standaardinstelling is onwaar.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw indexeerfunctie (evenals de uitvoeringsstatus van de indexeerfunctie) als u volledige zekerheid wilt dat niemand, zelfs Microsoft, ze niet kan ontsleutelen. Nadat u de definitie van uw indexeerfunctie hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap in te stellen op null. U kunt deze eigenschap indien nodig wijzigen als u uw versleutelingssleutel wilt roteren; De definitie van de indexeerfunctie (en de uitvoeringsstatus van de indexeerfunctie) blijft ongewijzigd. Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die zijn gemaakt op of na 1 januari 2019.

fieldMappings

FieldMapping[]

Hiermee definieert u toewijzingen tussen velden in de gegevensbron en de bijbehorende doelvelden in de index.

outputFieldMappings

FieldMapping[]

Toewijzingen van uitvoervelden worden toegepast na verrijking en direct vóór indexering.

parameters

IndexingParameters

Parameters voor het uitvoeren van de indexeerfunctie.

schedule

IndexingSchedule

Het schema voor deze indexeerfunctie.

skillsetName

string

De naam van de vaardighedenset die wordt uitgevoerd met deze indexeerfunctie.

Antwoorden

Name Type Description
201 Created

SearchIndexer

Other Status Codes

SearchError

Foutreactie.

Voorbeelden

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

Definities

Name Description
AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice, die wordt gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

BlobIndexerDataToExtract

Hiermee geeft u de gegevens op die uit Azure Blob Storage moeten worden geëxtraheerd en wordt aan de indexeerfunctie aangegeven welke gegevens moeten worden geëxtraheerd uit afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit geldt voor ingesloten afbeeldingsinhoud in een .PDF of een andere toepassing, of afbeeldingsbestanden zoals .jpg en .png, in Azure-blobs.

BlobIndexerImageAction

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden moeten worden verwerkt in Azure Blob Storage. Als u de configuratie 'imageAction' instelt op een andere waarde dan 'geen', moet er ook een vaardighedenset aan die indexeerfunctie worden gekoppeld.

BlobIndexerParsingMode

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

BlobIndexerPDFTextRotationAlgorithm

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

FieldMapping

Hiermee definieert u een toewijzing tussen een veld in een gegevensbron en een doelveld in een index.

FieldMappingFunction

Vertegenwoordigt een functie die een waarde uit een gegevensbron transformeert vóór het indexeren.

IndexerExecutionEnvironment

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

IndexingParameters

Vertegenwoordigt parameters voor de uitvoering van de indexeerfunctie.

IndexingParametersConfiguration

Een woordenlijst met configuratie-eigenschappen die specifiek zijn voor de indexeerfunctie. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

IndexingSchedule

Vertegenwoordigt een schema voor het uitvoeren van de indexeerfunctie.

SearchError

Beschrijft een foutvoorwaarde voor de API.

SearchIndexer

Vertegenwoordigt een indexeerfunctie.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt voor het versleutelen of ontsleutelen van data-at-rest in uw zoekservice, zoals indexen en synoniemenkaarten.

AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice, die wordt gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

Name Type Description
applicationId

string

Een AAD-toepassings-id waaraan de vereiste toegangsmachtigingen zijn verleend voor de Azure Key Vault die moet worden gebruikt bij het versleutelen van uw data-at-rest. De toepassings-id moet niet worden verward met de object-id voor uw AAD-toepassing.

applicationSecret

string

De verificatiesleutel van de opgegeven AAD-toepassing.

BlobIndexerDataToExtract

Hiermee geeft u de gegevens op die uit Azure Blob Storage moeten worden geëxtraheerd en wordt aan de indexeerfunctie aangegeven welke gegevens moeten worden geëxtraheerd uit afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit geldt voor ingesloten afbeeldingsinhoud in een .PDF of een andere toepassing, of afbeeldingsbestanden zoals .jpg en .png, in Azure-blobs.

Name Type Description
allMetadata

string

Extraheert metagegevens die worden geleverd door het Azure Blob Storage-subsysteem en de specifieke metagegevens van het inhoudstype (bijvoorbeeld metagegevens die uniek zijn voor alleen .png bestanden worden geïndexeerd).

contentAndMetadata

string

Hiermee worden alle metagegevens en tekstuele inhoud uit elke blob geëxtraheerd.

storageMetadata

string

Indexeert alleen de standaard blobeigenschappen en door de gebruiker opgegeven metagegevens.

BlobIndexerImageAction

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden moeten worden verwerkt in Azure Blob Storage. Als u de configuratie 'imageAction' instelt op een andere waarde dan 'geen', moet er ook een vaardighedenset aan die indexeerfunctie worden gekoppeld.

Name Type Description
generateNormalizedImagePerPage

string

Extraheert tekst uit afbeeldingen (bijvoorbeeld het woord 'STOP' van een verkeersstopteken) en sluit deze in het inhoudsveld in, maar behandelt PDF-bestanden anders omdat elke pagina wordt weergegeven als een afbeelding en dienovereenkomstig wordt genormaliseerd, in plaats van dat ingesloten afbeeldingen worden geëxtraheerd. Niet-PDF-bestandstypen worden op dezelfde wijze behandeld als wanneer 'generateNormalizedImages' is ingesteld.

generateNormalizedImages

string

Extraheert tekst uit afbeeldingen (bijvoorbeeld het woord 'STOP' van een verkeersstopteken) en sluit deze in het inhoudsveld in. Voor deze actie moet 'dataToExtract' zijn ingesteld op 'contentAndMetadata'. Een genormaliseerde afbeelding verwijst naar aanvullende verwerking die resulteert in een uniforme afbeeldingsuitvoer, waarbij de grootte ervan wordt aangepast en gedraaid om een consistente weergave te bevorderen wanneer u afbeeldingen in visuele zoekresultaten opneemt. Deze informatie wordt gegenereerd voor elke afbeelding wanneer u deze optie gebruikt.

none

string

Ingesloten afbeeldingen of afbeeldingsbestanden in de gegevensset negeren. Dit is de standaardinstelling.

BlobIndexerParsingMode

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

Name Type Description
default

string

Ingesteld op standaard voor normale bestandsverwerking.

delimitedText

string

Ingesteld op delimitedText wanneer blobs gewone CSV-bestanden zijn.

json

string

Stel in op json om gestructureerde inhoud uit JSON-bestanden te extraheren.

jsonArray

string

Stel in op jsonArray om afzonderlijke elementen van een JSON-matrix als afzonderlijke documenten te extraheren.

jsonLines

string

Stel in op jsonLines om afzonderlijke JSON-entiteiten, gescheiden door een nieuwe regel, als afzonderlijke documenten te extraheren.

text

string

Ingesteld op tekst om de indexeringsprestaties voor tekstbestanden zonder opmaak in blobopslag te verbeteren.

BlobIndexerPDFTextRotationAlgorithm

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

Name Type Description
detectAngles

string

Kan betere en beter leesbare tekstextractie produceren uit PDF-bestanden met gedraaide tekst erin. Houd er rekening mee dat er een kleine invloed kan zijn op de snelheid van de prestaties wanneer deze parameter wordt gebruikt. Deze parameter is alleen van toepassing op PDF-bestanden en alleen op PDF-bestanden met ingesloten tekst. Als de gedraaide tekst wordt weergegeven in een ingesloten afbeelding in het PDF-bestand, is deze parameter niet van toepassing.

none

string

Maakt gebruik van normale tekstextractie. Dit is de standaardinstelling.

FieldMapping

Hiermee definieert u een toewijzing tussen een veld in een gegevensbron en een doelveld in een index.

Name Type Description
mappingFunction

FieldMappingFunction

Een functie die moet worden toegepast op elke waarde van het bronveld vóór het indexeren.

sourceFieldName

string

De naam van het veld in de gegevensbron.

targetFieldName

string

De naam van het doelveld in de index. Standaard hetzelfde als de naam van het bronveld.

FieldMappingFunction

Vertegenwoordigt een functie die een waarde uit een gegevensbron transformeert vóór het indexeren.

Name Type Description
name

string

De naam van de veldtoewijzingsfunctie.

parameters

object

Een woordenlijst met parameternaam/waardeparen die moeten worden doorgegeven aan de functie. Elke waarde moet van een primitief type zijn.

IndexerExecutionEnvironment

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

Name Type Description
private

string

Geeft aan dat de indexeerfunctie moet worden uitgevoerd met de omgeving die specifiek is ingericht voor de zoekservice. Dit moet alleen worden opgegeven als de uitvoeringsomgeving als de indexeerfunctie veilig toegang moet hebben tot resources via gedeelde Private Link-resources.

standard

string

Geeft aan dat de zoekservice kan bepalen waar de indexeerfunctie moet worden uitgevoerd. Dit is de standaardomgeving wanneer niets is opgegeven en de aanbevolen waarde is.

IndexingParameters

Vertegenwoordigt parameters voor de uitvoering van de indexeerfunctie.

Name Type Standaardwaarde Description
batchSize

integer

Het aantal items dat wordt gelezen uit de gegevensbron en geïndexeerd als één batch om de prestaties te verbeteren. De standaardwaarde is afhankelijk van het gegevensbrontype.

configuration

IndexingParametersConfiguration

Een woordenlijst met configuratie-eigenschappen die specifiek zijn voor de indexeerfunctie. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

maxFailedItems

integer

0

Het maximum aantal items dat kan mislukken bij het indexeren, zodat de uitvoering van de indexeerfunctie nog steeds als geslaagd wordt beschouwd. -1 betekent geen limiet. De standaardwaarde is 0.

maxFailedItemsPerBatch

integer

0

Het maximum aantal items in één batch dat niet kan worden geïndexeerd, zodat de batch nog steeds als geslaagd wordt beschouwd. -1 betekent geen limiet. De standaardwaarde is 0.

IndexingParametersConfiguration

Een woordenlijst met configuratie-eigenschappen die specifiek zijn voor de indexeerfunctie. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

Name Type Standaardwaarde Description
allowSkillsetToReadFileData

boolean

False

Indien waar, wordt een pad //document//file_data gemaakt dat een object is dat de oorspronkelijke bestandsgegevens vertegenwoordigt die zijn gedownload uit uw blobgegevensbron. Hiermee kunt u de oorspronkelijke bestandsgegevens doorgeven aan een aangepaste vaardigheid voor verwerking binnen de verrijkingspijplijn of aan de vaardigheid Documentextractie.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Hiermee geeft u de gegevens op die uit Azure Blob Storage moeten worden geëxtraheerd en wordt aan de indexeerfunctie aangegeven welke gegevens moeten worden geëxtraheerd uit afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit geldt voor ingesloten afbeeldingsinhoud in een .PDF of een andere toepassing, of afbeeldingsbestanden zoals .jpg en .png, in Azure-blobs.

delimitedTextDelimiter

string

Voor CSV-blobs geeft u het scheidingsteken voor het einde van regel met één teken op voor CSV-bestanden waarbij elke regel een nieuw document start (bijvoorbeeld |).

delimitedTextHeaders

string

Voor CSV-blobs geeft u een door komma's gescheiden lijst met kolomkoppen op, handig voor het toewijzen van bronvelden aan doelvelden in een index.

documentRoot

string

Voor JSON-matrices kunt u op basis van een gestructureerd of semi-gestructureerd document een pad naar de matrix opgeven met behulp van deze eigenschap.

excludedFileNameExtensions

string

Door komma's gescheiden lijst met bestandsnaamextensies die moeten worden genegeerd bij het verwerken vanuit Azure Blob Storage. U kunt bijvoorbeeld '.png, .mp4' uitsluiten om deze bestanden over te slaan tijdens het indexeren.

executionEnvironment

IndexerExecutionEnvironment

standard

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

failOnUnprocessableDocument

boolean

False

Voor Azure-blobs stelt u in op false als u wilt doorgaan met indexeren als het indexeren van een document mislukt.

failOnUnsupportedContentType

boolean

False

Voor Azure-blobs stelt u in op false als u wilt doorgaan met indexeren wanneer er een niet-ondersteund inhoudstype wordt aangetroffen en u niet alle inhoudstypen (bestandsextensies) van tevoren kent.

firstLineContainsHeaders

boolean

True

Voor CSV-blobs geeft aan dat de eerste (niet-lege) regel van elke blob headers bevat.

imageAction

BlobIndexerImageAction

none

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden moeten worden verwerkt in Azure Blob Storage. Als u de configuratie 'imageAction' instelt op een andere waarde dan 'geen', moet er ook een vaardighedenset aan die indexeerfunctie worden gekoppeld.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

Voor Azure-blobs stelt u deze eigenschap in op True om nog steeds opslagmetagegevens te indexeren voor blobinhoud die te groot is om te verwerken. Te grote blobs worden standaard behandeld als fouten. Zie voor limieten voor blobgrootte https://docs.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Door komma's gescheiden lijst met bestandsnaamextensies die moeten worden geselecteerd bij het verwerken vanuit Azure Blob Storage. U kunt het indexeren bijvoorbeeld richten op specifieke toepassingsbestanden '.docx, .pptx .msg' om deze bestandstypen specifiek op te nemen.

parsingMode

BlobIndexerParsingMode

default

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

queryTimeout

string

00:05:00

Hiermee wordt de time-out groter dan de standaardwaarde van 5 minuten voor Azure SQL databasegegevensbronnen, opgegeven in de indeling 'uu:mm:ss'.

IndexingSchedule

Vertegenwoordigt een schema voor het uitvoeren van de indexeerfunctie.

Name Type Description
interval

string

Het tijdsinterval tussen de uitvoeringen van de indexeerfunctie.

startTime

string

Het tijdstip waarop een indexeerfunctie moet worden uitgevoerd.

SearchError

Beschrijft een foutvoorwaarde voor de API.

Name Type Description
code

string

Een van een door de server gedefinieerde set foutcodes.

details

SearchError[]

Een matrix met details over specifieke fouten die tot deze gerapporteerde fout hebben geleid.

message

string

Een door mensen leesbare weergave van de fout.

SearchIndexer

Vertegenwoordigt een indexeerfunctie.

Name Type Standaardwaarde Description
@odata.etag

string

De ETag van de indexeerfunctie.

dataSourceName

string

De naam van de gegevensbron waaruit deze indexeerfunctie gegevens leest.

description

string

De beschrijving van de indexeerfunctie.

disabled

boolean

False

Een waarde die aangeeft of de indexeerfunctie is uitgeschakeld. De standaardinstelling is onwaar.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw indexeerfunctie (evenals de uitvoeringsstatus van de indexeerfunctie) als u volledige zekerheid wilt dat niemand, zelfs Microsoft, ze niet kan ontsleutelen. Nadat u de definitie van uw indexeerfunctie hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap in te stellen op null. U kunt deze eigenschap indien nodig wijzigen als u uw versleutelingssleutel wilt roteren; De definitie van de indexeerfunctie (en de uitvoeringsstatus van de indexeerfunctie) blijft ongewijzigd. Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die zijn gemaakt op of na 1 januari 2019.

fieldMappings

FieldMapping[]

Hiermee definieert u toewijzingen tussen velden in de gegevensbron en de bijbehorende doelvelden in de index.

name

string

De naam van de indexeerfunctie.

outputFieldMappings

FieldMapping[]

Toewijzingen van uitvoervelden worden toegepast na verrijking en direct vóór indexering.

parameters

IndexingParameters

Parameters voor het uitvoeren van de indexeerfunctie.

schedule

IndexingSchedule

Het schema voor deze indexeerfunctie.

skillsetName

string

De naam van de vaardighedenset die wordt uitgevoerd met deze indexeerfunctie.

targetIndexName

string

De naam van de index waarnaar deze indexeerfunctie gegevens schrijft.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt voor het versleutelen of ontsleutelen van data-at-rest in uw zoekservice, zoals indexen en synoniemenkaarten.

Name Type Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Optionele Azure Active Directory-referenties die worden gebruikt voor toegang tot uw Azure Key Vault. Niet vereist als u in plaats daarvan een beheerde identiteit gebruikt.

keyVaultKeyName

string

De naam van uw Azure Key Vault sleutel die moet worden gebruikt om uw data-at-rest te versleutelen.

keyVaultKeyVersion

string

De versie van uw Azure Key Vault sleutel die moet worden gebruikt voor het versleutelen van uw data-at-rest.

keyVaultUri

string

De URI van uw Azure Key Vault, ook wel DNS-naam genoemd, die de sleutel bevat die moet worden gebruikt om uw data-at-rest te versleutelen. Een voorbeeld van een URI kan zijn https://my-keyvault-name.vault.azure.net.