Külső adatforrásokból származó adatok indexelése az Azure Data Factory használatával

Befejeződött

Az Azure-ban nem található külső adatok hozzáadása gyakori igény a szervezet keresési megoldásában. Az Azure AI Search rugalmas, mivel számos lehetőséget kínál az adatok indexekbe való létrehozására és leküldésére.

Adatok leküldése keresési indexbe az Azure Data Factory (ADF) használatával

Az első megközelítés egy nulla kódú lehetőség az adatok indexbe való beküldéséhez az ADF használatával. Az ADF közel 100 különböző adattárhoz kapcsolódik. Olyan összekötőkkel, mint a HTTP és a REST, amelyek lehetővé teszik korlátlan számú adattár csatlakoztatását. Ezeket az adattárakat forrásként vagy célként (a másolási tevékenység fogadóiként) használják a folyamatokban.

Az Azure AI Search index-összekötője fogadóként használható másolási tevékenységben.

ADF-folyamat létrehozása adatok keresési indexbe való leküldéséhez

A keresési indexbe való adatküldéshez szükséges lépések és az ADF-folyamat a következők:

  1. Hozzon létre egy Azure AI Search-indexet az összes olyan mezővel, amelyben tárolni szeretné az adatokat.
  2. Folyamat létrehozása másolási adatlépéssel.
  3. Hozzon létre egy adatforrás-kapcsolatot az adatok helyéhez.
  4. Hozzon létre egy fogadót a keresési indexhez való csatlakozáshoz.
  5. A forrásadatok mezőinek leképezése a keresési indexre.
  6. Futtassa a folyamatot az adatok indexbe való leküldéséhez.

Tegyük fel például, hogy az ügyféladatok JSON formátumban vannak tárolva, amelyek külsőleg vannak tárolva. Ezeket az ügyfeleket egy keresési indexbe szeretné másolni. A JSON formátuma a következő:

{
  "_id": "5fed1b38309495de1bc4f653",
  "firstName": "Sims",
  "lastName": "Arnold",
  "isAlive": false,
  "age": 35,
  "address": {
    "streetAddress": "Sumner Place",
    "city": "Canoochee",
    "state": "Palau",
    "postalCode": 1558
  },
  "phoneNumbers": [
    {
      "type": "home",
      "number": "+1 (830) 465-2965"
    },
    {
      "type": "home",
      "number": "+1 (889) 439-3632"
    }
  ]
}

Keresési index létrehozása

Hozzon létre egy Azure AI-Search szolgáltatás és egy indexet az információk tárolásához. Ha elvégezte az Azure AI Search-megoldás létrehozása modult, láthatta, hogyan teheti ezt meg. A keresési szolgáltatás létrehozásához kövesse a lépéseket, de az adatok importálásának helyén hagyja abba. Mivel az adatok indexbe való beküldéséhez nincs szükség indexelő vagy képességkészlet létrehozására.

Hozzon létre egy indexet, és adja hozzá a következő mezőket és tulajdonságokat:

A screenshot of the search index field definitions.

Jelenleg először létre kell hoznia az indexet, mivel az ADF nem tud indexeket létrehozni.

Folyamat létrehozása az ADF Adatok másolása eszközzel

Nyissa meg az Azure Data Factory Studiót , és válassza ki az Azure-előfizetését és a data factory nevét.

A screenshot of Azure Data Factory and selecting ingest.

  1. Válassza a Betöltés lehetőséget.

  2. Válassza a Tovább lehetőséget.

    Feljegyzés

    Beállíthatja, hogy ütemezze a folyamatot, ha az adatok változnak, és naprakészen kell tartania az indexet. Ebben a példában egyszer importálja az adatokat.

A forráshoz társított szolgáltatás létrehozása

  1. A forrástípusban válassza a HTTP lehetőséget.

  2. A Csatlakozás ion mellett válassza az + Új kapcsolat lehetőséget.

    A screenshot showing creating an HTTP linked service.

  3. Az Új kapcsolat panel Név elemében adja meg a dataLocation értéket.

  4. Az alap URL-címben adja meg, hogy hol található a JSON-fájl, ebben a példában írja be a következőthttps://raw.githubusercontent.com/Azure-Samples/azure-sql-db-import-data/main/json/user1.json:

  5. Hitelesítési típus esetén válassza a Névtelen lehetőséget.

  6. Válassza a Létrehozás lehetőséget.

  7. Válassza a Tovább lehetőséget.

    A screenshot of the configuration page of the lined service.

  8. Fájlformátumban válassza a JSON lehetőséget.

  9. Válassza a Tovább lehetőséget.

A cél társított szolgáltatás létrehozása

  1. A céltípusban válassza az Azure Search lehetőséget. Ezután válassza az + Új kapcsolat lehetőséget.

    A screenshot showing creating a linked service to AI Search.

  2. Az Új kapcsolat panel Név mezőbe írja be a search_index.

  3. Az Azure-előfizetésben válassza ki az Azure-előfizetését.

  4. A Szolgáltatás nevében válassza ki az Azure AI-Search szolgáltatás.

  5. Válassza a Létrehozás lehetőséget.

  6. A Céladattár panel Cél területén válassza ki a létrehozott keresési indexet.

Forrásmezők leképezése célmezőkre

  1. Válassza a Tovább lehetőséget.

    A screenshot of the schema mapping pane.

  2. Ha olyan mezőneveket tartalmazó indexet hozott létre, amely megfelel az ADF JSON attribútumainak, automatikusan leképezi a JSON-t a keresési index mezőjére.

  3. A fenti példában a JSON-dokumentumban három mezőnek kell megfeleltetnie az index mezőit.

  4. Képezheti le a mezőket, majd válassza a Tovább gombot.

  5. A Gépház panel Tevékenység nevére írja be a jsonToSearchIndex nevet.

  6. Válassza a Tovább lehetőséget.

Futtassa a folyamatot az adatok indexbe való leküldéséhez

  1. Az Összefoglalás panelen válassza a Tovább gombot.

    A screenshot showing the pipeline deployment complete.

  2. A folyamat ellenőrzése és üzembe helyezése után válassza a Befejezés lehetőséget.

A folyamat üzembe lett helyezve és futtatva. A JSON-dokumentum hozzá lesz adva a keresési indexhez. Használhatja az Azure Portalt, és futtathat keresést a keresőböngészőben. Látnia kell az importált JSON-adatokat.

A screenshot of the JSON data in the search index.

Az alábbi lépéseket követve láthatta, hogyan küldhet le adatokat egy indexbe. Az alapértelmezés szerint létrehozott folyamat egyesíti a frissítéseket az indexben. Ha módosította a JSON-adatokat, és újrafuttatná a folyamatot, a keresési index frissülne. Az írási viselkedést csak akkor módosíthatja feltöltésre, ha azt szeretné, hogy az adatok a folyamat minden futtatásakor lecserélődjenek.

A beépített Azure AI Search társított szolgáltatásként való használatának korlátozásai

Jelenleg az Azure AI Search társított szolgáltatás fogadóként csak az alábbi mezőket támogatja:

Az Azure AI Search adattípusa
Sztring
Int32
Int64
Dupla
Logikai
DataTimeOffset

Ez azt jelenti, hogy a ComplexTypes és a tömb jelenleg nem támogatott. Ha a fenti JSON-dokumentumot nézzük, az azt jelenti, hogy nem lehet az ügyfél összes telefonszámát megfeleltetni. Csak az első telefonszám van leképezve.