Adatimportálás az Azure AI Searchben

Az Azure AI Searchben a lekérdezések a keresési indexbe betöltött, felhasználó által birtokolt tartalomon futnak. Ez a cikk az indexek feltöltésének két alapvető munkafolyamatát ismerteti: az adatokat programozott módon kell leküldni az indexbe, vagy lekérni az adatokat egy keresési indexelő használatával.

Mindkét módszer egy külső adatforrásból tölti be a dokumentumokat. Bár létrehozhat egy üres indexet, a tartalom hozzáadásáig nem kérdezhető le.

Feljegyzés

Ha az AI-bővítés megoldási követelmény, az index betöltéséhez a lekéréses modellt (indexelőket) kell használnia. A képességkészletek indexelőhöz vannak csatolva, és nem futnak egymástól függetlenül.

Adatok elküldése egy indexbe

A leküldéses modell egy olyan megközelítés, amely API-kkal tölti fel a dokumentumokat egy meglévő keresési indexbe. A dokumentumokat kötegenként egyenként vagy kötegenként legfeljebb 1000, kötegenként 16 MB-ig töltheti fel, attól függően, hogy melyik korlát az első.

A következő fő előnyöket nyújtják:

  • Nincs korlátozás az adatforrás típusára. A hasznos adatoknak olyan JSON-dokumentumokból kell állniuk, amelyek megfeleltetik az indexsémát, de az adatok bárhonnan származhatnak.

  • Nincs korlátozás a végrehajtás gyakoriságára. Tetszőleges gyakorisággal továbbíthat módosításokat az indexeknek. Az alacsony késési követelményekkel rendelkező alkalmazások esetében (például ha az indexnek szinkronban kell lennie a termékleltár-ingadozásokkal), a leküldéses modell az egyetlen lehetőség.

  • Csatlakozás és a dokumentumok biztonságos lekérése teljes mértékben az Ön felügyelete alatt áll. Ezzel szemben az indexelő kapcsolatok hitelesítése az Azure AI Searchben biztosított biztonsági funkciókkal történik.

Adatok leküldése Azure AI Search-indexbe

Az alábbi API-k segítségével tölthet be egy vagy több dokumentumot egy indexbe:

Az Adatok az Azure Portalon keresztül történő leküldése nem támogatott.

A leküldéses API-k bemutatása:

Indexelési műveletek: feltöltés, egyesítés, mergeOrUpload, törlés

Az indexelési művelet típusát dokumentumonként szabályozhatja, megadva, hogy a dokumentumot teljes egészében fel kell-e tölteni, össze kell-e egyesíteni a meglévő dokumentumtartalommal, vagy törölni kell őket.

Akár REST API-t, akár Azure SDK-t használ, az adatimportáláshoz a következő dokumentumműveletek támogatottak:

  • Feltöltés, hasonló egy "upsert"-hez, ahol a dokumentum be lesz szúrva, ha új, és ha létezik, frissítve vagy lecserélve. Ha a dokumentum nem rendelkezik az index által igényelt értékekkel, a dokumentummező értéke null értékre van állítva.

  • az egyesítés frissíti a már létező dokumentumot, és nem találja a dokumentumot. Az egyesítés lecseréli a meglévő értékeket. Ezért mindenképpen ellenőrizze, hogy a gyűjteménymezők több értéket tartalmaznak-e, például a típusmezőket Collection(Edm.String). Ha például egy tags mező egy értékével ["budget"] kezdődik, és egyesítést ["economy", "pool"]hajt végre, akkor a tags mező végső értéke .["economy", "pool"] Nem lesz ["budget", "economy", "pool"].

  • A mergeOrUpload úgy viselkedik, mint az egyesítés , ha a dokumentum létezik, és feltölti , ha a dokumentum új.

  • törlés eltávolítja a teljes dokumentumot az indexből. Ha el szeretne távolítani egy egyéni mezőt, használja az egyesítést , és állítsa a kérdéses mezőt null értékre.

Adatok lekérése indexbe

A lekéréses modell egy támogatott adatforráshoz csatlakozó indexelőket használ, és automatikusan feltölti az adatokat az indexbe. A Microsoft indexelői az alábbi platformokon érhetők el:

Használhat külső összekötőket, amelyeket a Microsoft-partnerek fejlesztettek ki és tartanak karban. További információkért és hivatkozásokért tekintse meg az Adatforrástárat.

Az indexelők indexeket csatlakoztatnak az adatforrásokhoz (általában táblákhoz, nézetekhez vagy ezekkel egyenértékű struktúrákhoz), és leképezik a forrásmezőket a megfelelő mezőkre az indexben. A végrehajtás során a sorkészlet automatikusan át lesz alakítva JSON formátumba, és be lesz töltve a meghatározott indexbe. Minden indexelő támogatja az ütemezést, így megadhatja, hogy milyen gyakran kell frissíteni az adatokat. A legtöbb indexelő biztosít változáskövetési funkciókat, ha az adatforrás támogatja azokat. Az új dokumentumok felismerésén kívül az indexelők a meglévő dokumentumok módosításainak és a törléseinek nyomon követésével küszöbölik ki az aktív adatkezelés szükségességét az indexben.

Adatok lekérése Azure AI Search-indexbe

Az indexelőalapú indexeléshez használja az alábbi eszközöket és API-kat:

Az indexelő funkciója az [Azure Portalon], a REST API-ban és a .NET SDK-ban érhető el.

A portál használatának előnye, hogy az Azure AI Search általában létrehozhat egy alapértelmezett indexsémát a forrásadatkészlet metaadatainak olvasásával.

Adatimportálás ellenőrzése a Kereséskezelővel

A dokumentumfeltöltés előzetes ellenőrzésének gyors módja a Kereséskezelő használata a portálon.

Screenshot of Search Explorer command in the Azure portal.

A keresési ablak segítségével bármiféle kód írása nélkül kérdezheti le az indexeket. A keresési funkció alapértelmezett beállításokon alapul, mint az egyszerű szintaxis és az alapértelmezett searchMode lekérdezési paraméter. A rendszer az eredményeket JSON-formátumban adja vissza, így a teljes dokumentum vizsgálható.

Íme egy példa lekérdezés, amelyet a Search Explorerben futtathat JSON nézetben. A "HotelId" a hotels-sample-index dokumentumkulcsa. A szűrő egy adott dokumentum dokumentumazonosítóját adja meg:

{
  "search": "*",
  "filter": "HotelId eq '50'"
}

Ha REST-et használ, ez a Keresési lekérdezés ugyanazt a célt szolgálja.

Lásd még