Indexování dat z externích zdrojů dat pomocí služby Azure Data Factory

Dokončeno

Přidání externích dat, která se nenachází v Azure, je běžnou potřebou v řešení vyhledávání v organizaci. Azure AI Search je flexibilní, protože umožňuje mnoho způsobů, jak vytvářet a odesílat data do indexů.

Nasdílení dat do indexu vyhledávání pomocí služby Azure Data Factory (ADF)

Prvním přístupem je možnost nulového kódu pro nasdílením dat do indexu pomocí ADF. ADF se dodává s připojeními k téměř 100 různým úložištům dat. S konektory, jako je HTTP a REST, které umožňují připojit neomezený počet úložišť dat. Tato úložiště dat se používají jako zdroj nebo cíl (označovaný jako jímky v aktivitě kopírování) v kanálech.

Konektor indexu Azure AI Search je možné použít jako jímku v aktivitě kopírování.

Vytvoření kanálu ADF pro nabízení dat do indexu vyhledávání

Kroky potřebné k použití a kanálu ADF k nasdílení dat do indexu vyhledávání jsou:

  1. Vytvořte index Azure AI Search se všemi poli, do které chcete ukládat data.
  2. Vytvořte kanál s krokem kopírování dat.
  3. Vytvořte připojení ke zdroji dat, do kterého se data nacházejí.
  4. Vytvořte jímku pro připojení k indexu vyhledávání.
  5. Namapujte pole ze zdrojových dat na index vyhledávání.
  6. Spuštěním kanálu nasdílíte data do indexu.

Představte si například, že máte zákaznická data ve formátu JSON, který je hostovaný externě. Tyto zákazníky chcete zkopírovat do indexu vyhledávání. JSON je v tomto formátu:

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

Vytvoření vyhledávacího indexu

Vytvořte Search Azure AI a index pro uložení těchto informací. Pokud jste dokončili modul vytvoření řešení Azure AI Search, viděli jste, jak to udělat. Podle pokynů vytvořte vyhledávací službu, ale zastavte se v okamžiku importu dat. Protože vkládání dat do indexu nevyžaduje, abyste vytvořili indexer nebo sadu dovedností.

Vytvořte index a přidejte tato pole a vlastnosti:

A screenshot of the search index field definitions.

V okamžiku, kdy musíte nejprve vytvořit index, protože ADF nemůže vytvářet indexy.

Vytvoření kanálu pomocí nástroje pro kopírování dat ADF

Otevřete Azure Data Factory Studio a vyberte své předplatné Azure a název datové továrny.

A screenshot of Azure Data Factory and selecting ingest.

  1. Vyberte Ingestování.

  2. Vyberte Další.

    Poznámka:

    Kanál můžete naplánovat, pokud se vaše data mění a potřebujete udržovat index aktuální. V tomto příkladu naimportujete data jednou.

Vytvoření zdrojové propojené služby

  1. V typ zdroje vyberte HTTP.

  2. Vedle Připojení ion vyberte + Nové připojení.

    A screenshot showing creating an HTTP linked service.

  3. V podokně Nové připojení zadejte do pole Název hodnotu dataLocation.

  4. Do základní adresy URL zadejte, kde se nachází váš soubor JSON, v tomto příkladu zadejte https://raw.githubusercontent.com/Azure-Samples/azure-sql-db-import-data/main/json/user1.json.

  5. V poli Typ ověřování vyberte Anonymní.

  6. Vyberte Vytvořit.

  7. Vyberte Další.

    A screenshot of the configuration page of the lined service.

  8. Ve formátu souboru vyberte JSON.

  9. Vyberte Další.

Vytvoření cílové propojené služby

  1. V cílovém typu vyberte Azure Search. Pak vyberte + Nové připojení.

    A screenshot showing creating a linked service to AI Search.

  2. V podokně Nové připojení zadejte do pole Název search_index.

  3. V předplatném Azure vyberte své předplatné Azure.

  4. V názvu služby vyberte Search Azure AI.

  5. Vyberte Vytvořit.

  6. V podokně Cílové úložiště dat v části Cíl vyberte index vyhledávání, který jste vytvořili.

Mapování zdrojových polí na cílová pole

  1. Vyberte Další.

    A screenshot of the schema mapping pane.

  2. Pokud jste vytvořili index s názvy polí, které odpovídají atributům JSON, ADF automaticky mapuje JSON na pole ve vyhledávacím indexu.

  3. V předchozím příkladu musí tři pole v dokumentu JSON namapovat na pole v indexu.

  4. Namapujte pole a pak vyberte Další.

  5. V podokně Nastavení zadejte do pole Název úlohy jsonToSearchIndex.

  6. Vyberte Další.

Spuštěním kanálu nasdílení dat do indexu

  1. V podokně Souhrn vyberte Další.

    A screenshot showing the pipeline deployment complete.

  2. Po ověření a nasazení kanálu vyberte Dokončit.

Kanál je nasazený a spuštěný. Dokument JSON se přidá do indexu vyhledávání. Můžete použít Azure Portal a spustit hledání v Průzkumníku služby Search. Měla by se zobrazit importovaná data JSON.

A screenshot of the JSON data in the search index.

Podle těchto kroků jste viděli, jak můžete odesílat data do indexu. Kanál, který jste vytvořili, ve výchozím nastavení slučuje aktualizace do indexu. Pokud jste upravili data JSON a znovu spustíte kanál, index vyhledávání se aktualizuje. Chování při zápisu můžete změnit tak, aby se nahrála jenom v případě, že chcete, aby se data při každém spuštění kanálu nahradila.

Omezení používání integrované služby Azure AI Search jako propojené služby

V současné době propojená služba Azure AI Search jako jímka podporuje pouze tato pole:

Datový typ Azure AI Search
String
Int32
Int64
Hodnota s dvojitou přesností
Logická hodnota
DataTimeOffset

To znamená, že complexTypes a pole nejsou v současné době podporovány. Když se podíváte na výše uvedený dokument JSON, znamená to, že není možné namapovat všechna telefonní čísla pro zákazníka. Bylo namapováno pouze první telefonní číslo.