Indexers - Create Or Update

Skapar en ny indexerare eller uppdaterar en indexerare om den redan finns.

PUT {endpoint}/indexers('{indexerName}')?api-version=2023-11-01

URI-parametrar

Name I Obligatorisk Typ Description
endpoint
path True

string

Slutpunkts-URL:en för söktjänsten.

indexerName
path True

string

Namnet på indexeraren som ska skapas eller uppdateras.

api-version
query True

string

Klient-API-version.

Begärandehuvud

Name Obligatorisk Typ Description
x-ms-client-request-id

string

uuid

Spårnings-ID:t som skickas med begäran för att hjälpa till med felsökning.

If-Match

string

Definierar villkoret If-Match. Åtgärden utförs endast om ETag på servern matchar det här värdet.

If-None-Match

string

Definierar villkoret If-None-Match. Åtgärden utförs endast om ETag på servern inte matchar det här värdet.

Prefer True

string

För HTTP PUT-begäranden instruerar tjänsten att returnera den skapade/uppdaterade resursen när den lyckas.

Begärandetext

Name Obligatorisk Typ Description
dataSourceName True

string

Namnet på den datakälla som indexeraren läser data från.

name True

string

Namnet på indexeraren.

targetIndexName True

string

Namnet på indexet som indexeraren skriver data till.

@odata.etag

string

ETag för indexeraren.

description

string

Beskrivningen av indexeraren.

disabled

boolean

Ett värde som anger om indexeraren är inaktiverad. Standardvärdet är false.

encryptionKey

SearchResourceEncryptionKey

En beskrivning av en krypteringsnyckel som du skapar i Azure Key Vault. Den här nyckeln används för att tillhandahålla ytterligare kryptering i vila för indexerarens definition (samt körningsstatus för indexeraren) när du vill ha fullständig säkerhet för att ingen, inte ens Microsoft, kan dekryptera dem. När du har krypterat indexerarens definition förblir den alltid krypterad. Söktjänsten ignorerar försök att ange den här egenskapen till null. Du kan ändra den här egenskapen efter behov om du vill rotera krypteringsnyckeln. Indexerarens definition (och körningsstatus för indexeraren) påverkas inte. Kryptering med kundhanterade nycklar är inte tillgängligt för kostnadsfria söktjänster och är endast tillgängligt för betaltjänster som skapats den 1 januari 2019 eller senare.

fieldMappings

FieldMapping[]

Definierar mappningar mellan fält i datakällan och motsvarande målfält i indexet.

outputFieldMappings

FieldMapping[]

Mappningar av utdatafält tillämpas efter berikning och omedelbart före indexering.

parameters

IndexingParameters

Parametrar för indexeringskörning.

schedule

IndexingSchedule

Schemat för den här indexeraren.

skillsetName

string

Namnet på den kompetensuppsättning som körs med den här indexeraren.

Svar

Name Typ Description
200 OK

SearchIndexer

201 Created

SearchIndexer

Other Status Codes

SearchError

Felsvar.

Exempel

SearchServiceCreateOrUpdateIndexer

Sample Request

PUT https://myservice.search.windows.net/indexers('myindexer')?api-version=2023-11-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
  }
}

Sample Response

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

Definitioner

Name Description
AzureActiveDirectoryApplicationCredentials

Autentiseringsuppgifter för ett registrerat program som skapats för din söktjänst och som används för autentiserad åtkomst till krypteringsnycklarna som lagras i Azure Key Vault.

BlobIndexerDataToExtract

Anger vilka data som ska extraheras från Azure Blob Storage och talar om för indexeraren vilka data som ska extraheras från bildinnehåll när "imageAction" är inställt på ett annat värde än "none". Detta gäller inbäddat bildinnehåll i ett .PDF eller annat program, eller bildfiler som .jpg och .png, i Azure-blobar.

BlobIndexerImageAction

Avgör hur du bearbetar inbäddade avbildningar och avbildningsfiler i Azure Blob Storage. Om du ställer in konfigurationen "imageAction" på något annat värde än "ingen" måste du också koppla en kompetensuppsättning till indexeraren.

BlobIndexerParsingMode

Representerar parsningsläget för indexering från en Azure-blobdatakälla.

BlobIndexerPDFTextRotationAlgorithm

Avgör algoritmen för textextrahering från PDF-filer i Azure Blob Storage.

FieldMapping

Definierar en mappning mellan ett fält i en datakälla och ett målfält i ett index.

FieldMappingFunction

Representerar en funktion som transformerar ett värde från en datakälla före indexering.

IndexerExecutionEnvironment

Anger i vilken miljö indexeraren ska köras.

IndexingParameters

Representerar parametrar för indexeringskörning.

IndexingParametersConfiguration

En ordlista med indexerarspecifika konfigurationsegenskaper. Varje namn är namnet på en specifik egenskap. Varje värde måste vara av en primitiv typ.

IndexingSchedule

Representerar ett schema för indexeringskörning.

SearchError

Beskriver ett feltillstånd för API:et.

SearchIndexer

Representerar en indexerare.

SearchResourceEncryptionKey

En kundhanterad krypteringsnyckel i Azure Key Vault. Nycklar som du skapar och hanterar kan användas för att kryptera eller dekryptera vilande data i söktjänsten, till exempel index och synonymkartor.

AzureActiveDirectoryApplicationCredentials

Autentiseringsuppgifter för ett registrerat program som skapats för din söktjänst och som används för autentiserad åtkomst till krypteringsnycklarna som lagras i Azure Key Vault.

Name Typ Description
applicationId

string

Ett AAD-program-ID som har beviljats nödvändiga åtkomstbehörigheter till Azure-Key Vault som ska användas när du krypterar dina vilande data. Program-ID:t bör inte förväxlas med objekt-ID:t för ditt AAD-program.

applicationSecret

string

Autentiseringsnyckeln för det angivna AAD-programmet.

BlobIndexerDataToExtract

Anger vilka data som ska extraheras från Azure Blob Storage och talar om för indexeraren vilka data som ska extraheras från bildinnehåll när "imageAction" är inställt på ett annat värde än "none". Detta gäller inbäddat bildinnehåll i ett .PDF eller annat program, eller bildfiler som .jpg och .png, i Azure-blobar.

Name Typ Description
allMetadata

string

Extraherar metadata som tillhandahålls av Azure Blob Storage-undersystemet och specifika metadata av innehållstyp (till exempel metadata som är unika för bara .png filer indexeras).

contentAndMetadata

string

Extraherar alla metadata och textinnehåll från varje blob.

storageMetadata

string

Indexerar bara standardblobegenskaperna och användardefinierade metadata.

BlobIndexerImageAction

Avgör hur du bearbetar inbäddade avbildningar och avbildningsfiler i Azure Blob Storage. Om du ställer in konfigurationen "imageAction" på något annat värde än "ingen" måste du också koppla en kompetensuppsättning till indexeraren.

Name Typ Description
generateNormalizedImagePerPage

string

Extraherar text från bilder (till exempel ordet "STOP" från en trafikstoppskylt) och bäddar in den i innehållsfältet, men behandlar PDF-filer på olika sätt eftersom varje sida återges som en bild och normaliseras därefter, i stället för att extrahera inbäddade bilder. Icke-PDF-filtyper behandlas på samma sätt som om "generateNormalizedImages" angavs.

generateNormalizedImages

string

Extraherar text från bilder (till exempel ordet "STOP" från en trafikstoppskylt) och bäddar in den i innehållsfältet. Den här åtgärden kräver att "dataToExtract" är inställt på "contentAndMetadata". En normaliserad bild refererar till ytterligare bearbetning som resulterar i enhetlig bildutdata, storlek och roterad för att främja konsekvent återgivning när du inkluderar bilder i visuella sökresultat. Den här informationen genereras för varje bild när du använder det här alternativet.

none

string

Ignorerar inbäddade bilder eller bildfiler i datauppsättningen. Det här är standardinställningen.

BlobIndexerParsingMode

Representerar parsningsläget för indexering från en Azure-blobdatakälla.

Name Typ Description
default

string

Ange som standard för normal filbearbetning.

delimitedText

string

Ange till avgränsadText när blobar är vanliga CSV-filer.

json

string

Ange till json för att extrahera strukturerat innehåll från JSON-filer.

jsonArray

string

Ange till jsonArray för att extrahera enskilda element i en JSON-matris som separata dokument.

jsonLines

string

Ange till jsonLines för att extrahera enskilda JSON-entiteter, avgränsade med en ny rad, som separata dokument.

text

string

Ange till text för att förbättra indexeringsprestanda för oformaterade textfiler i Blob Storage.

BlobIndexerPDFTextRotationAlgorithm

Avgör algoritmen för textextrahering från PDF-filer i Azure Blob Storage.

Name Typ Description
detectAngles

string

Kan ge bättre och mer läsbar textextrahering från PDF-filer som har roterad text i dem. Observera att prestandahastigheten kan påverkas i liten grad när den här parametern används. Den här parametern gäller endast PDF-filer och endast pdf-filer med inbäddad text. Om den roterade texten visas i en inbäddad bild i PDF-filen gäller inte den här parametern.

none

string

Utnyttjar normal textextrahering. Det här är standardinställningen.

FieldMapping

Definierar en mappning mellan ett fält i en datakälla och ett målfält i ett index.

Name Typ Description
mappingFunction

FieldMappingFunction

En funktion som ska tillämpas på varje källfältvärde före indexering.

sourceFieldName

string

Namnet på fältet i datakällan.

targetFieldName

string

Namnet på målfältet i indexet. Samma som källfältnamnet som standard.

FieldMappingFunction

Representerar en funktion som transformerar ett värde från en datakälla före indexering.

Name Typ Description
name

string

Namnet på fältmappningsfunktionen.

parameters

object

En ordlista med parameternamn/värdepar som ska skickas till funktionen. Varje värde måste vara av en primitiv typ.

IndexerExecutionEnvironment

Anger i vilken miljö indexeraren ska köras.

Name Typ Description
private

string

Anger att indexeraren ska köras med miljön som etablerats specifikt för söktjänsten. Detta bör endast anges som körningsmiljö om indexeraren behöver komma åt resurser på ett säkert sätt via delade privata länkresurser.

standard

string

Anger att söktjänsten kan avgöra var indexeraren ska köras. Det här är standardmiljön när inget har angetts och är det rekommenderade värdet.

IndexingParameters

Representerar parametrar för indexeringskörning.

Name Typ Standardvärde Description
batchSize

integer

Antalet objekt som läss från datakällan och indexeras som en enda batch för att förbättra prestandan. Standardvärdet beror på datakälltypen.

configuration

IndexingParametersConfiguration

En ordlista med indexerarspecifika konfigurationsegenskaper. Varje namn är namnet på en specifik egenskap. Varje värde måste vara av en primitiv typ.

maxFailedItems

integer

0

Det maximala antalet objekt som inte kan indexeras för att indexerarens körning fortfarande ska betraktas som lyckad. -1 betyder ingen gräns. Standardvärdet är 0.

maxFailedItemsPerBatch

integer

0

Det maximala antalet objekt i en enda batch som kan misslyckas med indexeringen för att batchen fortfarande ska betraktas som lyckad. -1 betyder ingen gräns. Standardvärdet är 0.

IndexingParametersConfiguration

En ordlista med indexerarspecifika konfigurationsegenskaper. Varje namn är namnet på en specifik egenskap. Varje värde måste vara av en primitiv typ.

Name Typ Standardvärde Description
allowSkillsetToReadFileData

boolean

False

Om det är sant skapar en sökväg //document//file_data som är ett objekt som representerar de ursprungliga fildata som laddats ned från blobdatakällan. På så sätt kan du skicka ursprungliga fildata till en anpassad färdighet för bearbetning i berikningspipelinen eller till färdigheten För extrahering av dokument.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Anger vilka data som ska extraheras från Azure Blob Storage och talar om för indexeraren vilka data som ska extraheras från bildinnehåll när "imageAction" är inställt på ett annat värde än "none". Detta gäller inbäddat bildinnehåll i ett .PDF eller annat program, eller bildfiler som .jpg och .png, i Azure-blobar.

delimitedTextDelimiter

string

För CSV-blobar anger slutpunktsgränsaren för enteckensgränsare för CSV-filer där varje rad startar ett nytt dokument (till exempel |).

delimitedTextHeaders

string

För CSV-blobar anger en kommaavgränsad lista över kolumnrubriker, som är användbar för att mappa källfält till målfält i ett index.

documentRoot

string

För JSON-matriser, givet ett strukturerat eller halvstrukturerat dokument, kan du ange en sökväg till matrisen med den här egenskapen.

excludedFileNameExtensions

string

Kommaavgränsad lista över filnamnstillägg som ska ignoreras vid bearbetning från Azure Blob Storage. Du kan till exempel exkludera ".png, .mp4" för att hoppa över filerna under indexeringen.

executionEnvironment

IndexerExecutionEnvironment

standard

Anger i vilken miljö indexeraren ska köras.

failOnUnprocessableDocument

boolean

False

För Azure-blobar anger du false om du vill fortsätta indexera om ett dokument inte indexerar.

failOnUnsupportedContentType

boolean

False

För Azure-blobar anger du till false om du vill fortsätta indexera när en innehållstyp som inte stöds påträffas och du inte känner till alla innehållstyper (filtillägg) i förväg.

firstLineContainsHeaders

boolean

True

För CSV-blobar anger att den första (icke-tomma) raden för varje blob innehåller rubriker.

imageAction

BlobIndexerImageAction

none

Avgör hur du bearbetar inbäddade avbildningar och avbildningsfiler i Azure Blob Storage. Om du ställer in konfigurationen "imageAction" på något annat värde än "ingen" måste du också koppla en kompetensuppsättning till indexeraren.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

För Azure-blobar anger du den här egenskapen till true för att fortfarande indexeras lagringsmetadata för blobinnehåll som är för stort för att bearbetas. Överdimensionerade blobar behandlas som fel som standard. Begränsningar för blobstorlek finns i https://docs.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Kommaavgränsad lista över filnamnstillägg som ska väljas vid bearbetning från Azure Blob Storage. Du kan till exempel fokusera indexering på specifika programfiler ".docx, .pptx, .msg" för att specifikt inkludera dessa filtyper.

parsingMode

BlobIndexerParsingMode

default

Representerar parsningsläget för indexering från en Azure-blobdatakälla.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Avgör algoritmen för textextrahering från PDF-filer i Azure Blob Storage.

queryTimeout

string

00:05:00

Ökar tidsgränsen utöver standardvärdet på 5 minuter för Azure SQL databasdatakällor, som anges i formatet "hh:mm:ss".

IndexingSchedule

Representerar ett schema för indexeringskörning.

Name Typ Description
interval

string

Tidsintervallet mellan indexeringskörningar.

startTime

string

Den tid då en indexerare ska börja köras.

SearchError

Beskriver ett feltillstånd för API:et.

Name Typ Description
code

string

En av en serverdefinierad uppsättning felkoder.

details

SearchError[]

En matris med information om specifika fel som ledde till det rapporterade felet.

message

string

En läsbar återgivning av felet.

SearchIndexer

Representerar en indexerare.

Name Typ Standardvärde Description
@odata.etag

string

Indexerarens ETag.

dataSourceName

string

Namnet på den datakälla som indexeraren läser data från.

description

string

Beskrivningen av indexeraren.

disabled

boolean

False

Ett värde som anger om indexeraren är inaktiverad. Standardvärdet är false.

encryptionKey

SearchResourceEncryptionKey

En beskrivning av en krypteringsnyckel som du skapar i Azure Key Vault. Den här nyckeln används för att ge en ytterligare nivå av kryptering i vila för indexerarens definition (samt indexerarens körningsstatus) när du vill ha fullständig försäkran om att ingen, inte ens Microsoft, kan dekryptera dem. När du har krypterat indexerarens definition förblir den alltid krypterad. Söktjänsten ignorerar försök att ange den här egenskapen till null. Du kan ändra den här egenskapen efter behov om du vill rotera krypteringsnyckeln. Indexerarens definition (och indexerarens körningsstatus) påverkas inte. Kryptering med kundhanterade nycklar är inte tillgängligt för kostnadsfria söktjänster och är endast tillgängligt för betaltjänster som skapats den 1 januari 2019 eller senare.

fieldMappings

FieldMapping[]

Definierar mappningar mellan fält i datakällan och motsvarande målfält i indexet.

name

string

Namnet på indexeraren.

outputFieldMappings

FieldMapping[]

Mappningar av utdatafält tillämpas efter berikning och omedelbart före indexering.

parameters

IndexingParameters

Parametrar för indexeringskörning.

schedule

IndexingSchedule

Schemat för den här indexeraren.

skillsetName

string

Namnet på kompetensuppsättningen som körs med den här indexeraren.

targetIndexName

string

Namnet på indexet som indexeraren skriver data till.

SearchResourceEncryptionKey

En kundhanterad krypteringsnyckel i Azure Key Vault. Nycklar som du skapar och hanterar kan användas för att kryptera eller dekryptera vilande data i söktjänsten, till exempel index och synonymkartor.

Name Typ Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Valfria Azure Active Directory-autentiseringsuppgifter som används för att komma åt din Azure-Key Vault. Krävs inte om du använder hanterad identitet i stället.

keyVaultKeyName

string

Namnet på din Azure-Key Vault nyckel som ska användas för att kryptera dina vilande data.

keyVaultKeyVersion

string

Versionen av din Azure-Key Vault nyckel som ska användas för att kryptera dina vilande data.

keyVaultUri

string

URI:n för din Azure-Key Vault, även kallad DNS-namn, som innehåller nyckeln som ska användas för att kryptera dina vilande data. Ett exempel på URI kan vara https://my-keyvault-name.vault.azure.net.