Skapa eller uppdatera indexeraren (förhandsversion av REST API)

Gäller för: 2023-07-01-Preview, 2021-04-30-Preview, 2020-06-30-Preview

Viktigt

2023-07-01-Preview (inga ändringar).

2021-04-30-Preview lägger till stöd för hanterad identitet för berikningscache och krypteringsnycklar:

  • "storageConnectionString" accepterar ett resurs-ID för en systemtilldelad hanterad identitetsanslutning till Azure Storage. Den här egenskapen finns under "cache". Användartilldelad hanterad identitet stöds inte.
  • "identitet" accepterar en användartilldelad hanterad identitet.

2020-06-30-Preview lägger till:

En indexerare automatiserar indexering från datakällor som stöds genom att ansluta till en fördefinierad datakälla, hämta och serialisera data och skicka dem till en söktjänst för datainmatning. För AI-berikning av bild och ostrukturerad text kan indexerare också acceptera en kompetensuppsättning som lägger till bild- och bearbetning av naturligt språk.

Du kan använda post eller PUT på en create-begäran. För båda två innehåller begärandetexten objektdefinitionen.

POST https://[service name].search.windows.net/indexers?api-version=[api-version]
    Content-Type: application/json  
    api-key: [admin key]  

För uppdateringsbegäranden använder du PUT och anger indexerarens namn på URI:n.

PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=[api-version]
    Content-Type: application/json  
    api-key: [admin key]    

HTTPS krävs för alla tjänstbegäranden. Om indexeraren inte finns skapas den. Om den redan finns uppdateras den till den nya definitionen, men du måste utfärda en Run Indexer-begäran om du vill köra indexeraren.

När du skapar en indexerare läggs den till i söktjänsten och körs. Om begäran lyckas fylls indexet i med sökbart innehåll från datakällan.

När du uppdaterar en indexerare körs den inte automatiskt, men beroende på dina ändringar och den associerade datakällan kan en återställning och omkörning krävas. När du uppdaterar en befintlig indexerare ersätts hela definitionen med innehållet i begärandetexten. I allmänhet är det bästa mönstret att använda för uppdateringar att hämta indexerarens definition med en GET, ändra den och sedan uppdatera den med PUT.

Indexerarkonfigurationen varierar beroende på typen av datakälla. För dataplattformsspecifik vägledning om hur du skapar indexerare börjar du med indexeringsöversikten, som innehåller den fullständiga listan över relaterade artiklar.

Anteckning

Det maximala antalet indexerare som du kan skapa varierar beroende på prisnivå. Mer information finns i Tjänstbegränsningar för Azure AI Search.

URI-parametrar

Parameter Beskrivning
tjänstnamn Krävs. Ange det unika, användardefinierade namnet på söktjänsten.
indexerarens namn Krävs på URI:n om du använder PUT. Namnet måste vara gemener, börja med en bokstav eller siffra, har inga snedstreck eller punkter och får innehålla färre än 128 tecken. När du har startat namnet med en bokstav eller siffra kan resten av namnet innehålla valfri bokstav, siffra och bindestreck, så länge bindestrecken inte är i följd.
api-version Krävs. Den aktuella förhandsversionen är 2023-07-01-Preview. Fler versioner finns i API-versioner .

Rubriker för begäran

I följande tabell beskrivs de obligatoriska och valfria begärandehuvudena.

Fält Description
Content-Type Krävs. Ange detta till application/json
api-key Valfritt om du använder Azure-roller och en ägartoken anges i begäran, annars krävs en nyckel. En API-nyckel är en unik, systemgenererad sträng som autentiserar begäran till söktjänsten. Skapa begäranden måste innehålla en api-key rubrik som är inställd på din administratörsnyckel (till skillnad från en frågenyckel). Mer information finns i Ansluta till Azure AI Search med nyckelautentisering .

Begärandetext

En datakälla, ett index och en kompetensuppsättning ingår i en indexeringsdefinition , men var och en är en oberoende komponent som kan användas i olika kombinationer. Du kan till exempel använda samma datakälla med flera indexerare, samma index med flera indexerare eller flera indexerare som skriver till ett enda index.

Följande JSON är en övergripande representation av de viktigaste delarna i definitionen.

{   
    "name" : (optional on PUT; required on POST) "Name of the indexer",  
    "description" : (optional) "Anything you want, or nothing at all", 
    "dataSourceName" : (required) "Name of an existing data source",  
    "targetIndexName" : (required) "Name of an existing index",  
    "skillsetName" : (required for AI enrichment) "Name of an existing skillset",
    "cache":  { ... },
    "schedule" : (optional but runs once immediately if unspecified) { ... },  
    "parameters" : (optional) {
        "batchSize": null,
        "maxFailedItems": 0,
        "maxFailedItemsPerBatch": 0,
        "base64EncodeKeys": null,
        "configuration": { }
    },
    "fieldMappings" : (optional) { ... },
    "outputFieldMappings" : (required for AI enrichment) { ... },
    "encryptionKey":(optional) { },
    "disabled" : (optional) Boolean value indicating whether the indexer is disabled. False by default.
}  

Begäran innehåller följande egenskaper:

Egenskap Beskrivning
name Krävs. Namnet måste vara gemener, börja med en bokstav eller siffra, har inga snedstreck eller punkter och får innehålla färre än 128 tecken. När du har startat namnet med en bokstav eller siffra kan resten av namnet innehålla valfri bokstav, siffra och bindestreck, så länge bindestrecken inte är i följd.
beskrivning Valfritt. Beskrivning av indexeraren.
dataSourceName Krävs. Namnet på en befintlig datakälla som tillhandahåller anslutningsinformation och andra egenskaper.
targetIndexName Krävs. Namnet på ett befintligt index.
skillsetName Krävs för AI-berikning. Namnet på en befintlig kompetensuppsättning.
Cache Valfritt för AI-berikning möjliggör återanvändning av oförändrade dokument.
Schema Valfritt, men körs en gång omedelbart om det är ospecificerat.
parameters Valfritt. Egenskaper för att ändra körningsbeteende.
fieldMappings Valfritt. Används när käll- och målfält har olika namn.
outputFieldMappings Krävs för AI-berikning. Mappar utdata från en kompetensuppsättning till ett index eller en projektion.
encryptionKey Valfritt. Används för att kryptera vilande indexeringsdata med dina egna nycklar som hanteras i azure-Key Vault. Mer information finns i Azure AI Search-kryptering med kundhanterade nycklar i Azure Key Vault.
Inaktiverad Valfritt. Booleskt värde som anger om indexeraren är inaktiverad. Falskt som standard.

Svarsåtgärder

201 Skapades för en lyckad begäran.

Exempel

Exempel: Textbaserad indexerare med schema och parameter

Det här exemplet skapar en indexerare som kopierar data från tabellen som datakällan refererar order-sds till till indexet enligt ett schema som börjar den orders-idx 1 januari 2022 UTC och körs varje timme. Varje anrop av indexerare lyckas om högst 5 objekt inte kan indexeras i varje batch och högst 10 objekt inte kan indexeras totalt. Fältmappningar ger en datasökväg när fältnamn och typer inte matchar.

{
    "name" : "myindexer",  
    "description" : "a cool indexer",  
    "dataSourceName" : "orders-ds",  
    "targetIndexName" : "orders-idx", 
    "fieldMappings" : [
      {
          "sourceFieldName" : "content",
          "targetFieldName" : "sourceContent"
      }
    ], 
    "schedule" : { "interval" : "PT1H", "startTime" : "2022-01-01T00:00:00Z" },  
    "parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 5 }  
}

Exempel: Kunskapsuppsättningsindexerare

Det här exemplet visar en AI-berikning, vilket anges av referensen till en kompetensuppsättning och outputFieldMappings som mappar kunskapsutdata till fält i ett sökindex. Kompetensuppsättningar är resurser på hög nivå som definieras separat.

Ny i den här förhandsversionen och gäller endast för kompetensuppsättningar, kan du ange cacheegenskapen för att återanvända dokument som inte påverkas av ändringar i din kompetensuppsättningsdefinition.

{
  "name":"demo-indexer",	
  "dataSourceName" : "demo-data",
  "targetIndexName" : "demo-index",
  "skillsetName" : "demo-skillset",
  "cache" : 
    {
      "storageConnectionString" : "DefaultEndpointsProtocol=https;AccountName=<storage-account-name>;AccountKey=<storage-account-key>;EndpointSuffix=core.windows.net",
      "enableReprocessing": true
    },
  "fieldMappings" : [ ],
  "outputFieldMappings" : 
  [
    {
        "sourceFieldName" : "/document/organizations", 
        "targetFieldName" : "organizations"
    },
  ],
  "parameters":
  {
  	"maxFailedItems":-1,
  	"configuration": 
    {
    "dataToExtract": "contentAndMetadata",
    "imageAction": "generateNormalizedImages"
    }
  }
}

Exempel: Berikningscache med en hanterad identitetsanslutning

Det här exemplet illustrerar det anslutningssträng formatet när du använder Azure Active Directory för autentisering. Söktjänsten måste konfigureras för att använda en hanterad identitet. Identiteten måste ha behörigheten "Storage Blob Data Contributor" så att den kan skriva till cachen. Anslutningssträng är det unika resurs-ID:t för ditt lagringskonto och måste innehålla containern som används för att lagra den cachelagrade berikningen.

{
  "name":"demo-indexer",
  "dataSourceName" : "demodata-ds",
  "targetIndexName" : "demo-index",
  "skillsetName" : "demo-skillset",
  "cache" : 
    {
      "storageConnectionString" : "ResourceId=/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/<container-name>;",
      "enableReprocessing": true
    },
  "fieldMappings" : [  ],
  "outputFieldMappings" :  [  ],
  "parameters": {  }
}

Definitioner

Länk Description
Cache Konfigurerar cachelagring för AI-berikning och körning av kompetensuppsättningar.
encryptionKey Konfigurerar en anslutning till Azure Key Vault för kundhanterad kryptering.
fieldMappings Käll-till-mål-fältmappningar för fält som inte matchar efter namn och typ.
outputFieldMappings Mappar noder i ett berikat dokument till fält i ett index. Krävs om du använder kompetensuppsättningar.
parameters Konfigurerar en indexerare. Parametrarna omfattar allmänna parametrar och källspecifika parametrar.
Schema Anger intervall och frekvens för schemalagd indexeringskörning.

cache (förhandsversion)

Inkrementell indexering är möjligheten att återanvända berikade dokument i cacheminnet när du bearbetar en kompetensuppsättning. Det vanligaste scenariot är återanvändning av OCR eller bildanalys av bildfiler, vilket kan vara kostsamt och tidskrävande att bearbeta.

"cache" : 
  {
    "storageConnectionString" : "<YOUR-STORAGE-ACCOUNT-CONNECTION-STRING>",
    "enableReprocessing": true
  }

Cacheobjektet har obligatoriska och valfria egenskaper.

Egenskap Beskrivning
storageConnectionString Krävs. Anger det lagringskonto som används för att cachelagra mellanliggande resultat. Med det konto som du anger skapar söktjänsten en blobcontainer med ms-az-search-indexercache prefixet och slutförs med ett GUID som är unikt för indexeraren. Den måste vara inställd på antingen en fullständig åtkomst anslutningssträng som innehåller en nyckel eller det unika resurs-ID:t för ditt lagringskonto för begäranden som autentiseras med hjälp av Azure AD.

För att autentisera via Azure AD måste söktjänsten konfigureras för att använda en hanterad identitet och identiteten måste ha behörigheten "Storage Blob Data Contributor".
enableReprocessing Valfritt. Boolesk egenskap (true som standard) för att styra bearbetningen av inkommande dokument som redan representeras i cacheminnet. När true (standard) bearbetas dokument som redan finns i cacheminnet när du kör indexeraren igen, förutsatt att kunskapsuppdateringen påverkar dokumentet. När false, bearbetas inte befintliga dokument på nytt, vilket effektivt prioriterar nytt inkommande innehåll framför befintligt innehåll. Du bör bara ange enableReprocessing till false tillfälligt. För att säkerställa konsekvens i hela korpus enableReprocessing bör vara true för det mesta, se till att alla dokument, både nya och befintliga, är giltiga enligt den aktuella kompetensuppsättningsdefinitionen.
ID Skrivskyddad. Genereras när cachen har skapats. ID är identifieraren för containern i lagringskontot som ska användas som cache för den här indexeraren. Den här cachen är unik för den här indexeraren och om indexeraren tas bort och återskapas med samma namn ID återskapas den. ID Kan inte anges, den genereras alltid av tjänsten.

schedule

En indexerare kan också ange ett schema. Utan ett schema körs indexeraren omedelbart när du skickar begäran: ansluta till, crawla och indexera datakällan. I vissa scenarier, inklusive långvariga indexeringsjobb, används scheman för att utöka bearbetningsperioden utöver maxgränsen på 24 timmar. Om det finns ett schema körs indexeraren regelbundet enligt schema. Schemaläggaren är inbyggd. Du kan inte använda en extern schemaläggare. Ett schema har följande attribut:

  • interval: Krävs. Ett varaktighetsvärde som anger ett intervall eller en period för indexerarens körningar. Det minsta tillåtna intervallet är fem minuter. den längsta är en dag. Det måste formateras som ett XSD-värde för "dayTimeDuration" (en begränsad delmängd av ett ISO 8601-varaktighetsvärde ). Mönstret för detta är: "P[nD][T[nH][nM]]". Exempel: PT15M var 15:e minut, PT2H var 2:e timme.

  • startTime: Valfritt. En UTC-datetime när indexeraren ska börja köras.

Anteckning

Om en indexerare är inställd på ett visst schema men upprepade gånger misslyckas i samma dokument om och om igen varje gång den körs, börjar indexeraren köras med ett mindre frekvent intervall (upp till maximalt minst en gång var 24:e timme) tills den lyckas igen. Om du tror att du har åtgärdat det problem som gjorde att indexeraren fastnade vid en viss tidpunkt kan du utföra en körning på begäran av indexeraren, och om det lyckas återgår indexeraren till sitt angivna schemaintervall igen.

parametrar

En indexerare kan välja att använda konfigurationsparametrar som ändrar körningsbeteenden. Konfigurationsparametrar avgränsas med kommatecken i indexerarbegäran.

{
  "name" : "my-blob-indexer-for-cognitive-search",
  ... other indexer properties
  "parameters" : { 
        "batchSize": null,
        "maxFailedItems": 0,
        "maxFailedItemsPerBatch": 0,
        "base64EncodeKeys": null,
        "configuration" : { 
            "parsingMode" : "json", 
            "indexedFileNameExtensions" : ".json, .jpg, .png", 
            "imageAction" : "generateNormalizedImages", 
            "dataToExtract" : "contentAndMetadata" } }
}

Allmänna parametrar för alla indexerare

Parameter Ange och tillåtna värden Användning
"batchSize" Integer
Standardvärdet är källspecifikt (1 000 för Azure SQL Database och Azure Cosmos DB, 10 för Azure Blob Storage)
Anger antalet objekt som läss från datakällan och indexeras som en enda batch för att förbättra prestandan.
"maxFailedItems" Integer
Standardvärdet är 0
Antalet fel som ska tolereras innan en indexerare körs betraktas som ett fel. Ange till -1 om du inte vill att några fel ska stoppa indexeringsprocessen. Du kan hämta information om misslyckade objekt med hjälp av Hämta indexeringsstatus.
"maxFailedItemsPerBatch" Integer
Standardvärdet är 0
Antalet fel som ska tolereras i varje batch innan en indexerare körs betraktas som ett fel. Ange till -1 om du inte vill att några fel ska stoppa indexeringsprocessen.
"base64EncodeKeys" Boolesk
Standardvärdet är sant
Giltiga värden är null, true eller false. När värdet är falskt kommer indexeraren inte automatiskt att base64 koda värdena för fältet som har angetts som dokumentnyckel. Om du anger den här egenskapen behöver du inte ange en mappningsfunktion som base64 kodar nyckelvärden (till exempel bindestreck) som annars inte är giltiga i en dokumentnyckel.

Blobkonfigurationsparametrar

Flera parametrar är exklusiva för en viss indexerare, till exempel Azure-blobindexering.

Parameter Ange och tillåtna värden Användning
"parsingMode" Sträng
"text"
"delimitedText"
"json"
"jsonArray"
"jsonLines"
För Azure-blobar anger du till text för att förbättra indexeringsprestanda för oformaterade textfiler i Blob Storage.
För CSV-blobar anger du till delimitedText när blobar är vanliga CSV-filer.
För JSON-blobar anger du till json för att extrahera strukturerat innehåll eller för att jsonArray extrahera enskilda element i en matris som separata dokument i Azure AI Search. Använd jsonLines för att extrahera enskilda JSON-entiteter, avgränsade med en ny rad, som separata dokument i Azure AI Search.
"excludedFileNameExtensions" Sträng
kommaavgränsad lista
Användardefinierade
Ignorera alla filtyper i listan för Azure-blobar. Du kan till exempel exkludera ".png, .png, .mp4" för att hoppa över dessa filer under indexeringen.
"indexedFileNameExtensions" Sträng
kommaavgränsad lista
Användardefinierade
För Azure-blobar väljer du blobar om filnamnstillägget finns i listan. Du kan till exempel fokusera indexeringen på specifika programfiler ".docx, .pptx, .msg" för att specifikt inkludera dessa filtyper.
"failOnUnsupportedContentType" Boolesk
true
false (standard)
För Azure-blobar anger du till false om du vill fortsätta indexeringen 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.
"failOnUnprocessableDocument" Boolesk
true
false (standard)
För Azure-blobar anger du till false om du vill fortsätta indexeringen om ett dokument inte indexerar.
"indexStorageMetadataOnly
ForOversizedDocuments"
Boolesk true
false (standard)
För Azure-blobar anger du den här egenskapen till true att fortfarande indexeras lagringsmetadata för blobinnehåll som är för stort för att bearbetas. Överdimensionerade blobbar behandlas som fel som standard. Begränsningar för blobstorlek finns i Tjänstbegränsningar.
"delimitedTextHeaders" Sträng
kommaavgränsad lista
Användardefinierade
För CSV-blobar anger en kommaavgränsad lista med kolumnrubriker som är användbar för att mappa källfält till målfält i ett index.
"delimitedTextDelimiter" Sträng
enstaka tecken
Användardefinierade
För CSV-blobar anger avgränsare i slutet av raden för CSV-filer där varje rad startar ett nytt dokument (till exempel "|").
"firstLineContainsHeaders" Boolesk
true (standard)
falskt
För CSV-blobar anger att den första raden (icke-tom) för varje blob innehåller rubriker.
"documentRoot" Sträng
användardefinierad sökväg
För JSON-matriser, givet ett strukturerat eller halvstrukturerat dokument, kan du ange en sökväg till matrisen med den här egenskapen.
"dataToExtract" Sträng
"storageMetadata"
"allMetadata"
"contentAndMetadata" (standard)
För Azure-blobar:
Ange till för "storageMetadata" att index bara indexeras standardblobegenskaperna och användardefinierade metadata.
Ange till "allMetadata" för att extrahera metadata som tillhandahålls av Azure Blob Storage-undersystemet och innehållstypspecifika metadata (till exempel metadata som är unika för bara .png filer) indexeras.
Ange till för "contentAndMetadata" att extrahera alla metadata och textinnehåll från varje blob.

För bildanalys i AI-berikning, när "imageAction" är inställt på ett annat värde än "none", "dataToExtract" anger inställningen för indexeraren vilka data som ska extraheras från bildinnehåll. Gäller för inbäddat bildinnehåll i ett .PDF eller annat program, eller bildfiler som .jpg och .png, i Azure-blobar.
"imageAction" Sträng
"none"
"generateNormalizedImages"
"generateNormalizedImagePerPage"
För Azure-blobar anger du till"none" för att ignorera inbäddade bilder eller bildfiler i datauppsättningen. Det här är standardinställningen.

För bildanalys i AI-berikning anger du till"generateNormalizedImages" för att extrahera text från bilder (till exempel ordet "stoppa" från en trafikstoppskylt) och bädda in den som en del av innehållsfältet. Under bildanalysen skapar indexeraren en matris med normaliserade bilder som en del av dokumentknäckningen och bäddar in den genererade informationen i innehållsfältet. Den här åtgärden kräver att "dataToExtract" är inställd 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 (till exempel fotografier av samma storlek i en grafkontroll som visas i JFK-demonstrationen). Den här informationen genereras för varje bild när du använder det här alternativet.

Om du anger till "generateNormalizedImagePerPage"behandlas PDF-filer på olika sätt i stället för att extrahera inbäddade bilder, så renderas varje sida som en bild och normaliseras därefter. Filtyper som inte är PDF-filer behandlas på samma sätt som om "generateNormalizedImages" de angavs.

Om du ställer in konfigurationen "imageAction" på ett annat värde än "none" kräver det att en kompetensuppsättning också kopplas till indexeraren.
"normalizedImageMaxWidth"
"normalizedImageMaxHeight"
Alla heltal mellan 50-10000 Den maximala bredden eller höjden (i bildpunkter) för normaliserade bilder som genereras när en "imageAction" anges. Standardvärdet är 2 000.

Standardvärdet på 2 000 bildpunkter för normaliserade bilders maximala bredd och höjd baseras på de maximala storlekar som stöds av OCR-färdigheten och bildanalysfärdigheten. OCR-färdigheten stöder en maximal bredd och höjd på 4 200 för icke-engelska språk och 1 0000 för engelska. Om du ökar maxgränserna kan bearbetningen misslyckas på större bilder beroende på din definition av kompetensuppsättningen och språket i dokumenten.
"allowSkillsetToReadFileData" Boolesk
true
false (standard)
Om du anger parametern "allowSkillsetToReadFileData" till true skapas en sökväg /document/file_data som är ett objekt som representerar ursprungliga fildata som laddats ned från din blobdatakälla. På så sätt kan du skicka ursprungliga fildata till en anpassad färdighet för bearbetning i berikningspipelinen eller till färdigheten Extrahering av dokument. Objektet som genereras definieras på följande sätt: { "$type": "file", "data": "BASE64 encoded string of the file" }

Om parametern "allowSkillsetToReadFileData" anges till true måste en kompetensuppsättning kopplas till indexeraren, att parametern "parsingMode" är inställd på "default", "text" eller "json"och att parametern "dataToExtract" är inställd på "contentAndMetadata" eller "allMetadata".
"pdfTextRotationAlgorithm" Sträng
"none" (standard)
"detectAngles"
Om du anger parametern "pdfTextRotationAlgorithm" till "detectAngles" kan det 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.

Om parametern "pdfTextRotationAlgorithm" ska anges till "detectAngles" krävs att parametern "parsingMode" är inställd på "default".

Konfigurationsparametrar för Azure Cosmos DB

Följande parametrar är specifika för Cosmos DB-indexerare.

Parameter Ange och tillåtna värden Användning
"assumeOrderByHighWaterMarkColumn" Boolesk För Cosmos DB-indexerare med SQL API anger du den här parametern för att ge ett tips till Cosmos DB om att frågan som används för att returnera dokument för indexering i själva verket sorteras _ts efter kolumnen. Om du anger den här parametern får du bättre resultat för scenarier med inkrementell indexering.

Azure SQL konfigurationsparametrar

Följande parametrar är specifika för Azure SQL Database.

Parameter Ange och tillåtna värden Användning
"queryTimeout" Sträng
"hh:mm:ss"
"00:05:00"
Ange att den här parametern ska åsidosätta standardvärdet på 5 minuter.
"convertHighWaterMarkToRowVersion" Boolesk Ställ in den här parametern på "true" om du vill använda datatypen rowversion för kolumnen högvattenmärke. När den här egenskapen är inställd på true subtraherar indexeraren en från radversionsvärdet innan indexeraren körs. Det gör det eftersom vyer med en-till-många-kopplingar kan ha rader med dubbla radversionsvärden. Genom att subtrahera en ser du till att indexerarfrågan inte missar dessa rader.
"disableOrderByHighWaterMarkColumn" Boolesk Ange den här parametern till "true" om du vill inaktivera beteendet ORDER BY i frågan som används för ändringsidentifiering. Om du använder principen för ändringsidentifiering av högvattenmärke använder indexeraren WHERE- och ORDER BY-satser för att spåra vilka rader som behöver indexering (WHERE [High Water Mark Column] > [Current High Water Mark Value] ORDER BY [High Water Mark Column]). Den här parametern inaktiverar beteendet ORDER BY. Indexeringen avslutas snabbare, men kompromissen är att om indexeraren avbryts av någon anledning måste hela indexerarjobbet upprepas i sin helhet.

fieldMappings

Skapa dessa när fältnamn eller typer för källmål inte matchar, eller när du vill ange en funktion. Fältmappningar är skiftlägesokänsliga. Se Definiera fältmappningar.

Attribut Beskrivning
sourceFieldName Krävs. Namnet på källkolumnen.
targetFieldName Krävs. Namnet på motsvarande fält i sökindexet.
mappingFunction Valfritt. Lägger till bearbetning i källvärden på väg till sökmotorn. Ett godtyckligt strängvärde kan till exempel vara base64-kodat så att det kan användas för att fylla i ett dokumentnyckelfält. En mappningsfunktion har ett namn och parametrar. Giltiga värden är:

base64Encode
base64Decode
extractTokenAtPosition
jsonArrayToStringCollection
urlEncode
urlDecode

outputFieldMappings

Anger kunskapsutdata (eller noder i ett berikande träd) till fält i ett sökindex.

  "outputFieldMappings" : [
        {
          "sourceFieldName" : "/document/organizations", 
          "targetFieldName" : "organizations"
        },
        {
          "sourceFieldName" : "/document/pages/*/keyPhrases/*", 
          "targetFieldName" : "keyphrases"
        },
        {
            "sourceFieldName": "/document/languageCode",
            "targetFieldName": "language",
            "mappingFunction": null
        }      
   ],

encryptionKey

Konfigurerar en anslutning till Azure Key Vault för kompletterande kundhanterade krypteringsnycklar (CMK). Kryptering med kundhanterade nycklar är inte tillgängligt för kostnadsfria tjänster. För fakturerbara tjänster är det bara tillgängligt för söktjänster som skapats på eller efter 2019-01-01.

En anslutning till nyckelvalvet måste autentiseras. Du kan använda antingen "accessCredentials" eller en hanterad identitet för detta ändamål.

Hanterade identiteter kan vara system- eller användartilldelade (förhandsversion). Om söktjänsten har både en systemtilldelad hanterad identitet och en rolltilldelning som ger läsåtkomst till nyckelvalvet kan du utelämna både "identitet" och "accessCredentials", och begäran autentiseras med hjälp av den systemhanterade identiteten. Om söktjänsten har användartilldelad identitet och rolltilldelning anger du egenskapen "identitet" till resurs-ID för den identiteten.

Attribut Beskrivning
keyVaultKeyName Krävs. Namnet på Den Azure Key Vault-nyckel som används för kryptering.
keyVaultKeyVersion Krävs. Version av Azure Key Vault-nyckeln.
keyVaultUri Krävs. URI för Azure Key Vault (kallas även DNS-namn) som tillhandahåller nyckeln. Ett exempel på en URI kan vara https://my-keyvault-name.vault.azure.net
accessCredentials Utelämna om du använder en hanterad identitet. Annars inkluderar egenskaperna accessCredentials för applicationId (ett Azure Active Directory-program-ID som har åtkomstbehörighet till din angivna Azure-Key Vault) och applicationSecret (autentiseringsnyckeln för det angivna Azure AD-programmet).
identity Valfritt om du inte använder en användartilldelad hanterad identitet för söktjänstens anslutning till Azure Key Vault. Formatet är "/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[managed identity name]".

Se även