Megosztás a következőn keresztül:


Indexers - Create Or Update

Létrehoz egy új indexelőt, vagy frissíti az indexelőt, ha már létezik.

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

URI-paraméterek

Name In Kötelező Típus Description
endpoint
path True

string

A keresési szolgáltatás végponti URL-címe.

indexerName
path True

string

A létrehozni vagy frissíteni kívánt indexelő neve.

api-version
query True

string

Ügyfél API-verziója.

Kérelem fejléce

Name Kötelező Típus Description
x-ms-client-request-id

string

uuid

A kéréssel együtt küldött nyomkövetési azonosító, amely segít a hibakeresésben.

If-Match

string

Meghatározza a If-Match feltételt. A művelet csak akkor lesz végrehajtva, ha a kiszolgálón lévő ETag megfelel ennek az értéknek.

If-None-Match

string

Meghatározza az If-None-Match feltételt. A műveletet csak akkor hajtja végre a rendszer, ha a kiszolgálón lévő ETag nem egyezik meg ezzel az értékkel.

Prefer True

string

HTTP PUT-kérések esetén a szolgáltatás utasítja a létrehozott/frissített erőforrás sikeres visszaadására.

Kérelem törzse

Name Kötelező Típus Description
dataSourceName True

string

Annak az adatforrásnak a neve, amelyből az indexelő adatokat olvas be.

name True

string

Az indexelő neve.

targetIndexName True

string

Annak az indexnek a neve, amelyre az indexelő adatokat ír.

@odata.etag

string

Az indexelő ETagje.

description

string

Az indexelő leírása.

disabled

boolean

Érték, amely jelzi, hogy az indexelő le van-e tiltva. Az alapértelmezett érték a false (hamis).

encryptionKey

SearchResourceEncryptionKey

Az Azure Key Vault-ben létrehozott titkosítási kulcs leírása. Ez a kulcs további inaktív titkosítási szintet biztosít az indexelő definíciójához (valamint az indexelő végrehajtási állapotához), ha teljes körű biztosítékot szeretne kapni arról, hogy senki, még a Microsoft sem tudja visszafejteni őket. Miután titkosította az indexelő definícióját, az mindig titkosítva marad. A keresési szolgáltatás figyelmen kívül hagyja a tulajdonság null értékűre történő beállítására tett kísérleteket. Szükség szerint módosíthatja ezt a tulajdonságot, ha el szeretné forgatni a titkosítási kulcsot; Az indexelő definíciója (és az indexelő végrehajtási állapota) nem lesz hatással. Az ügyfél által felügyelt kulcsokkal történő titkosítás nem érhető el az ingyenes keresési szolgáltatásokhoz, és csak a 2019. január 1-jén vagy azt követően létrehozott fizetős szolgáltatásokhoz érhető el.

fieldMappings

FieldMapping[]

Az adatforrás mezői és az index megfelelő célmezői közötti leképezéseket határozza meg.

outputFieldMappings

FieldMapping[]

A kimeneti mezőleképezések a bővítés után és közvetlenül az indexelés előtt lesznek alkalmazva.

parameters

IndexingParameters

Az indexelő végrehajtásának paraméterei.

schedule

IndexingSchedule

Az indexelő ütemezése.

skillsetName

string

Az indexelővel végrehajtott képességcsoport neve.

Válaszok

Name Típus Description
200 OK

SearchIndexer

201 Created

SearchIndexer

Other Status Codes

SearchError

Hibaválasz.

Példák

SearchServiceCreateOrUpdateIndexer

Mintakérelem

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

Mintaválasz

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

Definíciók

Name Description
AzureActiveDirectoryApplicationCredentials

A keresési szolgáltatáshoz létrehozott regisztrált alkalmazás hitelesítő adatai, amelyet az Azure Key Vault tárolt titkosítási kulcsokhoz való hitelesített hozzáféréshez használnak.

BlobIndexerDataToExtract

Megadja az Azure Blob Storage-ból kinyerni kívánt adatokat, és közli az indexelővel, hogy mely adatokat kell kinyerni a képtartalomból, ha az "imageAction" értéke nem "none". Ez a .PDF vagy más alkalmazásokba beágyazott képtartalmakra, illetve az Azure-blobokban lévő képfájlokra, például .jpg és .png vonatkozik.

BlobIndexerImageAction

Meghatározza, hogyan dolgozhatja fel a beágyazott képeket és képfájlokat az Azure Blob Storage-ban. Az "imageAction" konfigurációnak a "none" értéken kívül más értékre való beállításához egy képességcsoportot is hozzá kell csatolni az indexelőhöz.

BlobIndexerParsingMode

Az Azure Blob-adatforrásból történő indexelés elemzési módját jelöli.

BlobIndexerPDFTextRotationAlgorithm

Meghatározza az Azure Blob Storage-beli PDF-fájlokból való szövegkivétel algoritmusát.

FieldMapping

Egy adatforrás mezője és egy index célmezője közötti leképezést definiál.

FieldMappingFunction

Olyan függvényt jelöl, amely az indexelés előtt átalakít egy értéket egy adatforrásból.

IndexerExecutionEnvironment

Meghatározza azt a környezetet, amelyben az indexelőnek végre kell hajtania.

IndexingParameters

Az indexelő végrehajtásának paramétereit jelöli.

IndexingParametersConfiguration

Az indexelőspecifikus konfigurációs tulajdonságok szótára. Minden név egy adott tulajdonság neve. Minden értéknek primitív típusúnak kell lennie.

IndexingSchedule

Az indexelő végrehajtásának ütemezését jelöli.

SearchError

Az API hibafeltételét ismerteti.

SearchIndexer

Egy indexelőt jelöl.

SearchResourceEncryptionKey

Ügyfél által felügyelt titkosítási kulcs az Azure Key Vault. A létrehozott és kezelt kulcsokkal titkosíthatja vagy visszafejtheti a keresési szolgáltatás inaktív adatait, például indexeket és szinonimaleképeket.

AzureActiveDirectoryApplicationCredentials

A keresési szolgáltatáshoz létrehozott regisztrált alkalmazás hitelesítő adatai, amelyet az Azure Key Vault tárolt titkosítási kulcsokhoz való hitelesített hozzáféréshez használnak.

Name Típus Description
applicationId

string

Egy AAD-alkalmazásazonosító, amely megkapta a szükséges hozzáférési engedélyeket az Azure Key Vault, amelyet az inaktív adatok titkosításához kell használni. Az alkalmazásazonosító nem tévesztendő össze az AAD-alkalmazás objektumazonosítójával.

applicationSecret

string

A megadott AAD-alkalmazás hitelesítési kulcsa.

BlobIndexerDataToExtract

Megadja az Azure Blob Storage-ból kinyerni kívánt adatokat, és közli az indexelővel, hogy mely adatokat kell kinyerni a képtartalomból, ha az "imageAction" értéke nem "none". Ez a .PDF vagy más alkalmazásokba beágyazott képtartalmakra, illetve az Azure-blobokban lévő képfájlokra, például .jpg és .png vonatkozik.

Name Típus Description
allMetadata

string

Kinyeri az Azure Blob Storage alrendszer által biztosított metaadatokat és a tartalomtípus-specifikus metaadatokat (például a csak .png fájlokra jellemző metaadatokat indexeli).

contentAndMetadata

string

Kinyeri az összes metaadatot és szöveges tartalmat az egyes blobokból.

storageMetadata

string

Csak a standard blobtulajdonságokat és a felhasználó által megadott metaadatokat indexeli.

BlobIndexerImageAction

Meghatározza, hogyan dolgozhatja fel a beágyazott képeket és képfájlokat az Azure Blob Storage-ban. Az "imageAction" konfigurációnak a "none" értéken kívül más értékre való beállításához egy képességcsoportot is hozzá kell csatolni az indexelőhöz.

Name Típus Description
generateNormalizedImagePerPage

string

Kinyeri a képek szövegét (például a "STOP" szót egy forgalommegálló jelből), és beágyazza a tartalommezőbe, de a PDF-fájlokat másként kezeli, mivel minden oldal képként jelenik meg, és ennek megfelelően normalizálódik a beágyazott képek kinyerése helyett. A nem PDF-fájltípusok ugyanúgy lesznek kezelve, mintha a "generateNormalizedImages" be lett volna állítva.

generateNormalizedImages

string

Kinyeri a képek szövegét (például a "STOP" szót egy forgalommegálló jelből), és beágyazza a tartalommezőbe. Ehhez a művelethez a "dataToExtract" érték "contentAndMetadata" értékre van állítva. A normalizált képek további feldolgozásra utalnak, amelyek egységes képkimenetet eredményeznek, méretezve és elforgatva, hogy elősegítsék az egységes renderelést, amikor képeket ad hozzá a vizuális keresési eredményekhez. Ez az információ minden képhez létrejön, amikor ezt a beállítást használja.

none

string

Figyelmen kívül hagyja a beágyazott képeket vagy képfájlokat az adatkészletben. Ez az alapértelmezett beállítás.

BlobIndexerParsingMode

Az Azure Blob-adatforrásból történő indexelés elemzési módját jelöli.

Name Típus Description
default

string

A normál fájlfeldolgozás alapértelmezett értékére van állítva.

delimitedText

string

Ha a blobok egyszerű CSV-fájlok, akkor a delimitedText értékre van állítva.

json

string

Állítsa json értékre a strukturált tartalom JSON-fájlokból való kinyeréséhez.

jsonArray

string

A JSON-tömb egyes elemeinek különálló dokumentumokként való kinyeréséhez állítsa jsonArray értékre.

jsonLines

string

Állítsa jsonLines értékre az egyes JSON-entitások új sorokkal elválasztott, különálló dokumentumokként történő kinyeréséhez.

text

string

Állítsa szövegre a blobtárolóban lévő egyszerű szöveges fájlok indexelési teljesítményének javításához.

BlobIndexerPDFTextRotationAlgorithm

Meghatározza az Azure Blob Storage-beli PDF-fájlokból való szövegkivétel algoritmusát.

Name Típus Description
detectAngles

string

Jobb és olvashatóbb szövegkivételt eredményezhet olyan PDF-fájlokból, amelyekben a szöveg elfordult. Vegye figyelembe, hogy ennek a paraméternek a használata kis teljesítménysebesség-hatással járhat. Ez a paraméter csak PDF-fájlokra vonatkozik, és csak beágyazott szöveggel rendelkező PDF-fájlokra. Ha az elforgatott szöveg egy beágyazott képben jelenik meg a PDF-ben, ez a paraméter nem érvényes.

none

string

A normál szövegkiemelést használja. Ez az alapértelmezett beállítás.

FieldMapping

Egy adatforrás mezője és egy index célmezője közötti leképezést definiál.

Name Típus Description
mappingFunction

FieldMappingFunction

Az indexelés előtt az egyes forrásmező-értékekre alkalmazandó függvény.

sourceFieldName

string

Az adatforrásban lévő mező neve.

targetFieldName

string

Az index célmezőjének neve. Alapértelmezés szerint megegyezik a forrásmező nevével.

FieldMappingFunction

Olyan függvényt jelöl, amely az indexelés előtt átalakít egy értéket egy adatforrásból.

Name Típus Description
name

string

A mezőleképezési függvény neve.

parameters

object

A függvénynek átadni kívánt paraméternév-érték párok szótára. Minden értéknek primitív típusúnak kell lennie.

IndexerExecutionEnvironment

Meghatározza azt a környezetet, amelyben az indexelőnek végre kell hajtania.

Name Típus Description
private

string

Azt jelzi, hogy az indexelőnek a kifejezetten a keresési szolgáltatáshoz kiépített környezettel kell futnia. Ezt csak akkor szabad végrehajtási környezetként megadni, ha az indexelőnek biztonságosan kell hozzáférnie az erőforrásokhoz megosztott privát kapcsolati erőforrásokon keresztül.

standard

string

Azt jelzi, hogy a keresési szolgáltatás meghatározhatja, hogy az indexelő hol futjon. Ez az alapértelmezett környezet, ha nincs megadva semmi, és ez az ajánlott érték.

IndexingParameters

Az indexelő végrehajtásának paramétereit jelöli.

Name Típus Alapértelmezett érték Description
batchSize

integer

Az adatforrásból beolvasott és egyetlen kötegként indexelt elemek száma a teljesítmény javítása érdekében. Az alapértelmezett érték az adatforrás típusától függ.

configuration

IndexingParametersConfiguration

Az indexelőspecifikus konfigurációs tulajdonságok szótára. Minden név egy adott tulajdonság neve. Minden értéknek primitív típusúnak kell lennie.

maxFailedItems

integer

0

Az indexelő végrehajtásához sikertelen indexelést meghiúsuló elemek maximális száma továbbra is sikeresnek tekinthető. A -1 azt jelenti, hogy nincs korlát. Az alapértelmezett érték 0.

maxFailedItemsPerBatch

integer

0

Az egyetlen kötegben lévő elemek maximális száma, amely sikertelen indexelést okozhat ahhoz, hogy a köteg továbbra is sikeresnek minősüljön. A -1 azt jelenti, hogy nincs korlát. Az alapértelmezett érték 0.

IndexingParametersConfiguration

Az indexelőspecifikus konfigurációs tulajdonságok szótára. Minden név egy adott tulajdonság neve. Minden értéknek primitív típusúnak kell lennie.

Name Típus Alapértelmezett érték Description
allowSkillsetToReadFileData

boolean

False

Ha igaz, létrehoz egy elérési utat //document//file_data, amely a blob adatforrásából letöltött eredeti fájladatokat képviselő objektum. Ez lehetővé teszi, hogy az eredeti fájladatokat átadhassa egy egyéni feldolgozási képességnek a bővítési folyamaton belül, vagy a Dokumentumkinyerési képességnek.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Megadja az Azure Blob Storage-ból kinyerni kívánt adatokat, és közli az indexelővel, hogy mely adatokat kell kinyerni a képtartalomból, ha az "imageAction" értéke nem "none". Ez a .PDF vagy más alkalmazásokba beágyazott képtartalmakra, illetve az Azure-blobokban lévő képfájlokra, például .jpg és .png vonatkozik.

delimitedTextDelimiter

string

CSV-blobok esetén a csv-fájlok sorvégi egykarakteres elválasztóját adja meg, ahol minden sor új dokumentumot indít el (például "|").

delimitedTextHeaders

string

CSV-blobok esetén az oszlopfejlécek vesszővel tagolt listáját adja meg, amely hasznos lehet az index célmezőinek megfeleltetéséhez.

documentRoot

string

JSON-tömbök esetén, strukturált vagy részben strukturált dokumentum esetén a tulajdonság használatával megadhatja a tömb elérési útját.

excludedFileNameExtensions

string

Az Azure Blob Storage-ból történő feldolgozáskor figyelmen kívül hagyandó fájlnévkiterjesztések vesszőkkel tagolt listája. Kizárhatja például a ".png, .mp4" lehetőséget, hogy átugorja ezeket a fájlokat az indexelés során.

executionEnvironment

IndexerExecutionEnvironment

standard

Meghatározza azt a környezetet, amelyben az indexelőnek végre kell hajtania.

failOnUnprocessableDocument

boolean

False

Azure-blobok esetén állítsa false (hamis) értékre, ha folytatni szeretné az indexelést, ha egy dokumentum indexelése sikertelen.

failOnUnsupportedContentType

boolean

False

Az Azure-blobok esetében állítsa false (hamis) értékre, ha nem támogatott tartalomtípus esetén szeretné folytatni az indexelést, és nem ismeri előre az összes tartalomtípust (fájlkiterjesztést).

firstLineContainsHeaders

boolean

True

A CSV-blobok esetében az azt jelzi, hogy az egyes blobok első (nem üres) sora fejléceket tartalmaz.

imageAction

BlobIndexerImageAction

none

Meghatározza, hogyan dolgozhatja fel a beágyazott képeket és képfájlokat az Azure Blob Storage-ban. Az "imageAction" konfigurációnak a "none" értéken kívül más értékre való beállításához egy képességcsoportot is hozzá kell csatolni az indexelőhöz.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

Azure-blobok esetén állítsa ezt a tulajdonságot true (igaz) értékre, hogy továbbra is indexelje a tároló metaadatait a túl nagy méretű blobtartalmak esetében a feldolgozáshoz. A túlméretezett blobok alapértelmezés szerint hibákként vannak kezelve. A blob méretére vonatkozó korlátozásokért lásd: https://docs.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Az Azure Blob Storage-ból történő feldolgozáskor kiválasztandó fájlnévkiterjesztések vesszőkkel tagolt listája. A ".docx, .pptx, .msg" alkalmazásfájlok indexelésével például kifejezetten belefoglalhatja ezeket a fájltípusokat.

parsingMode

BlobIndexerParsingMode

default

Az Azure Blob-adatforrásból történő indexelés elemzési módját jelöli.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Meghatározza az Azure Blob Storage-beli PDF-fájlokból való szövegkinyerési algoritmust.

queryTimeout

string

00:05:00

Növeli az időtúllépést az Azure SQL adatbázis-adatforrások alapértelmezett 5 perces alapértelmezett értékén túl, "óó:mm:ss" formátumban megadva.

IndexingSchedule

Az indexelő végrehajtásának ütemezését jelöli.

Name Típus Description
interval

string

Az indexelő-végrehajtások közötti időintervallum.

startTime

string

Az az idő, amikor egy indexelőnek futnia kell.

SearchError

Az API hibafeltételét ismerteti.

Name Típus Description
code

string

A kiszolgáló által definiált hibakódok egyike.

details

SearchError[]

A jelentett hibához vezető konkrét hibák részleteinek tömbje.

message

string

A hiba emberi olvasásra alkalmas ábrázolása.

SearchIndexer

Egy indexelőt jelöl.

Name Típus Alapértelmezett érték Description
@odata.etag

string

Az indexelő ETagje.

dataSourceName

string

Annak az adatforrásnak a neve, amelyből az indexelő adatokat olvas be.

description

string

Az indexelő leírása.

disabled

boolean

False

Egy érték, amely azt jelzi, hogy az indexelő le van-e tiltva. Az alapértelmezett érték a false (hamis).

encryptionKey

SearchResourceEncryptionKey

Az Azure Key Vault-ben létrehozott titkosítási kulcs leírása. Ez a kulcs további inaktív titkosítási szintet biztosít az indexelő definíciójához (valamint az indexelő végrehajtási állapotához), ha teljes bizonyosságot szeretne kapni arról, hogy senki, még a Microsoft sem tudja visszafejteni őket. Miután titkosította az indexelő definícióját, az mindig titkosítva marad. A keresési szolgáltatás figyelmen kívül hagyja a tulajdonság null értékre történő beállítására tett kísérleteket. Ezt a tulajdonságot szükség szerint módosíthatja, ha el szeretné forgatni a titkosítási kulcsot; Az indexelő definíciója (és az indexelő végrehajtási állapota) nem lesz hatással. Az ügyfél által felügyelt kulcsokkal történő titkosítás nem érhető el az ingyenes keresési szolgáltatásokhoz, és csak a 2019. január 1-jén vagy azt követően létrehozott fizetős szolgáltatásokhoz érhető el.

fieldMappings

FieldMapping[]

Az adatforrás mezői és az index megfelelő célmezői közötti leképezéseket definiálja.

name

string

Az indexelő neve.

outputFieldMappings

FieldMapping[]

A kimeneti mezőleképezések a bővítés után és közvetlenül az indexelés előtt lesznek alkalmazva.

parameters

IndexingParameters

Az indexelő végrehajtásának paraméterei.

schedule

IndexingSchedule

Az indexelő ütemezése.

skillsetName

string

Az indexelővel végrehajtott képességcsoport neve.

targetIndexName

string

Annak az indexnek a neve, amelybe az indexelő adatokat ír.

SearchResourceEncryptionKey

Ügyfél által felügyelt titkosítási kulcs az Azure Key Vault. A létrehozott és kezelt kulcsokkal titkosíthatja vagy visszafejtheti a keresési szolgáltatás inaktív adatait, például indexeket és szinonimaleképeket.

Name Típus Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Az Azure Key Vault eléréséhez használt opcionális Azure Active Directory-hitelesítő adatok. Nem kötelező, ha felügyelt identitást használ helyette.

keyVaultKeyName

string

Az Inaktív adatok titkosításához használandó Azure-Key Vault kulcs neve.

keyVaultKeyVersion

string

Az Inaktív adatok titkosításához használandó Azure-Key Vault kulcs verziója.

keyVaultUri

string

Az Azure Key Vault ( más néven DNS-név) URI-ja, amely az inaktív adatok titkosításához használandó kulcsot tartalmazza. Példa URI-ra: https://my-keyvault-name.vault.azure.net.