Kopiera data till ett Azure AI Search-index med Hjälp av Azure Data Factory eller Synapse Analytics

GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics

Dricks

Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!

Den här artikeln beskriver hur du använder kopieringsaktiviteten i en Azure Data Factory- eller Synapse Analytics-pipeline för att kopiera data till Azure AI Search-index. Den bygger på översiktsartikeln för kopieringsaktivitet som visar en allmän översikt över kopieringsaktiviteten.

Funktioner som stöds

Den här Azure AI Search-anslutningsappen stöds för följande funktioner:

Funktioner som stöds IR Hanterad privat slutpunkt
aktiviteten Kopiera (-/mottagare) ① ②

(1) Azure Integration Runtime (2) Lokalt installerad integrationskörning

Du kan kopiera data från valfritt källdatalager som stöds till sökindex. En lista över datalager som stöds som källor/mottagare av kopieringsaktiviteten finns i tabellen Datalager som stöds.

Komma igång

Om du vill utföra aktiviteten Kopiera med en pipeline kan du använda något av följande verktyg eller SDK:er:

Skapa en länkad tjänst till Azure Search med hjälp av användargränssnittet

Använd följande steg för att skapa en länkad tjänst till Azure Search i Användargränssnittet för Azure-portalen.

  1. Bläddra till fliken Hantera i Din Azure Data Factory- eller Synapse-arbetsyta och välj Länkade tjänster och klicka sedan på Ny:

  2. Sök efter Sök och välj Azure Search-anslutningsappen.

    Select the Azure Search connector.

  3. Konfigurera tjänstinformationen, testa anslutningen och skapa den nya länkade tjänsten.

    Configure a linked service to Azure Search.

Anslut eller konfigurationsinformation

Följande avsnitt innehåller information om egenskaper som används för att definiera Data Factory-entiteter som är specifika för Azure AI Search-anslutningsappen.

Länkade tjänstegenskaper

Följande egenskaper stöds för länkad Azure AI Search-tjänst:

Property Beskrivning Obligatoriskt
type Typegenskapen måste anges till: AzureSearch Ja
URL URL för söktjänsten. Ja
key Administratörsnyckel för söktjänsten. Markera det här fältet som en SecureString för att lagra det på ett säkert sätt eller referera till en hemlighet som lagras i Azure Key Vault. Ja
connectVia Integration Runtime som ska användas för att ansluta till datalagret. Du kan använda Azure Integration Runtime eller lokalt installerad integrationskörning (om ditt datalager finns i ett privat nätverk). Om den inte anges använder den standardkörningen för Azure-integrering. Nej

Viktigt!

När du kopierar data från ett molndatalager till sökindex måste du i den länkade Azure AI Search-tjänsten referera till en Azure Integration Runtime med explicit region i connactVia. Ange regionen som den region där söktjänsten finns. Läs mer från Azure Integration Runtime.

Exempel:

{
    "name": "AzureSearchLinkedService",
    "properties": {
        "type": "AzureSearch",
        "typeProperties": {
            "url": "https://<service>.search.windows.net",
            "key": {
                "type": "SecureString",
                "value": "<AdminKey>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Egenskaper för datauppsättning

En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera datauppsättningar finns i artikeln datauppsättningar . Det här avsnittet innehåller en lista över egenskaper som stöds av Azure AI Search-datauppsättningen.

Följande egenskaper stöds för att kopiera data till Azure AI Search:

Property Beskrivning Obligatoriskt
type Datamängdens typegenskap måste anges till: AzureSearchIndex Ja
indexName Namnet på sökindexet. Tjänsten skapar inte indexet. Indexet måste finnas i Azure AI Search. Ja

Exempel:

{
    "name": "AzureSearchIndexDataset",
    "properties": {
        "type": "AzureSearchIndex",
        "typeProperties" : {
            "indexName": "products"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Azure AI Search linked service name>",
            "type": "LinkedServiceReference"
        }
   }
}

Kopiera egenskaper för aktivitet

En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera aktiviteter finns i artikeln Pipelines . Det här avsnittet innehåller en lista över egenskaper som stöds av Azure AI Search-källan.

Azure AI Search som mottagare

Om du vill kopiera data till Azure AI Search anger du källtypen i kopieringsaktiviteten till AzureSearchIndexSink. Följande egenskaper stöds i avsnittet kopieringsaktivitetsmottagare:

Property Beskrivning Obligatoriskt
type Typegenskapen för kopieringsaktivitetskällan måste anges till: AzureSearchIndexSink Ja
writeBehavior Anger om du vill sammanfoga eller ersätta när ett dokument redan finns i indexet. Se egenskapen WriteBehavior.

Tillåtna värden är: Sammanslagning (standard) och Uppladdning.
Nej
writeBatchSize Laddar upp data till sökindexet när buffertstorleken når writeBatchSize. Mer information finns i egenskapen WriteBatchSize.

Tillåtna värden är: heltal 1 till 1 000; standardvärdet är 1 000.
Nej
maxConcurrent Anslut ions Den övre gränsen för samtidiga anslutningar som upprättats till datalagret under aktivitetskörningen. Ange endast ett värde när du vill begränsa samtidiga anslutningar. Nej

Egenskapen WriteBehavior

AzureSearchSink upserts när du skriver data. Med andra ord uppdaterar Azure AI Search det befintliga dokumentet i stället för att utlösa ett konfliktfel om dokumentnyckeln redan finns i sökindexet.

AzureSearchSink tillhandahåller följande två upsert-beteenden (med hjälp av AzureSearch SDK):

  • Sammanfoga: kombinera alla kolumner i det nya dokumentet med det befintliga. För kolumner med null-värde i det nya dokumentet bevaras värdet i det befintliga.
  • Ladda upp: Det nya dokumentet ersätter det befintliga. För kolumner som inte anges i det nya dokumentet anges värdet till null oavsett om det finns ett värde som inte är null i det befintliga dokumentet eller inte.

Standardbeteendet är Sammanslagning.

Egenskapen WriteBatchSize

Azure AI-tjänsten Search har stöd för att skriva dokument som en batch. En batch kan innehålla 1 till 1 000 åtgärder. En åtgärd hanterar ett dokument för att utföra uppladdnings-/sammanslagningsåtgärden.

Exempel:

"activities":[
    {
        "name": "CopyToAzureSearch",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Azure AI Search output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "AzureSearchIndexSink",
                "writeBehavior": "Merge"
            }
        }
    }
]

Stöd för datatyp

I följande tabell anges om en Azure AI Search-datatyp stöds eller inte.

Datatyp för Azure AI Search Stöds i Azure AI Search Sink
String Y
Int32 Y
Int64 Y
Dubbel Y
Booleskt Y
DataTimeOffset Y
Strängmatris N
GeographyPoint N

För närvarande stöds inte andra datatyper, t.ex. ComplexType. En fullständig lista över datatyper som stöds av Azure AI Search finns i Datatyper som stöds (Azure AI Search).

En lista över datalager som stöds som källor och mottagare av kopieringsaktiviteten finns i datalager som stöds.