Dela via


Kopiera data från Spark 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 från Spark. Den bygger på översiktsartikeln för kopieringsaktivitet som visar en allmän översikt över kopieringsaktiviteten.

Funktioner som stöds

Den här Spark-anslutningsappen stöds för följande funktioner:

Funktioner som stöds IR
Kopieringsaktivitet (källa/-) (1) (2)
Sökningsaktivitet (1) (2)

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

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

Tjänsten tillhandahåller en inbyggd drivrutin för att aktivera anslutningen. Därför behöver du inte installera någon drivrutin manuellt med den här anslutningsappen.

Förutsättningar

Om ditt datalager finns i ett lokalt nätverk, ett virtuellt Azure-nätverk eller Amazon Virtual Private Cloud måste du konfigurera en lokalt installerad integrationskörning för att ansluta till det.

Om ditt datalager är en hanterad molndatatjänst kan du använda Azure Integration Runtime. Om åtkomsten är begränsad till IP-adresser som är godkända i brandväggsreglerna kan du lägga till Azure Integration Runtime-IP-adresser i listan över tillåtna.

Du kan också använda funktionen för integrering av hanterade virtuella nätverk i Azure Data Factory för att få åtkomst till det lokala nätverket utan att installera och konfigurera en lokalt installerad integrationskörning.

Mer information om de nätverkssäkerhetsmekanismer och alternativ som stöds av Data Factory finns i Strategier för dataåtkomst.

Komma igång

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

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

Använd följande steg för att skapa en länkad tjänst till Spark i azure-portalens användargränssnitt.

  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 Spark och välj Spark-anslutningsappen.

    Skärmbild av Spark-anslutningsappen.

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

    Skärmbild av konfiguration av länkad tjänst för Spark.

Konfigurationsinformation för anslutningsprogram

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

Länkade tjänstegenskaper

Följande egenskaper stöds för spark-länkad tjänst:

Property Beskrivning Obligatoriskt
type Typegenskapen måste anges till: Spark Ja
värd IP-adress eller värdnamn för Spark-servern Ja
port TCP-porten som Spark-servern använder för att lyssna efter klientanslutningar. Om du ansluter till Azure HDInsights anger du porten som 443. Ja
serverType Typ av Spark-server.
Tillåtna värden är: SharkServer, SharkServer2, SparkThriftServer
Nej
thriftTransportProtocol Transportprotokollet som ska användas i Thrift-lagret.
Tillåtna värden är: Binär, SASL, HTTP
Nej
authenticationType Den autentiseringsmetod som används för att komma åt Spark-servern.
Tillåtna värden är: Anonym, Användarnamn, AnvändarnamnAndPassword, WindowsAzureHDInsightService
Ja
användarnamn Det användarnamn som du använder för att komma åt Spark Server. Nej
password Lösenordet som motsvarar användaren. 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. Nej
httpPath Den partiella URL:en som motsvarar Spark-servern. Nej
enableSsl Anger om anslutningarna till servern krypteras med hjälp av TLS. Standardvärdet är "false". Nej
trustedCertPath Den fullständiga sökvägen till .pem-filen som innehåller betrodda CA-certifikat för att verifiera servern när du ansluter via TLS. Den här egenskapen kan bara anges när du använder TLS på lokalt installerad IR. Standardvärdet är filen cacerts.pem som är installerad med IR. Nej
useSystemTrustStore Anger om du vill använda ett CA-certifikat från systemförtroendearkivet eller från en angiven PEM-fil. Standardvärdet är "false". Nej
allowHostNameCNMismatch Anger om ett CA-utfärdat TLS/SSL-certifikatnamn ska matcha serverns värdnamn vid anslutning via TLS. Standardvärdet är "false". Nej
allowSelfSignedServerCert Anger om självsignerade certifikat ska tillåtas från servern. Standardvärdet är "false". Nej
connectVia Integration Runtime som ska användas för att ansluta till datalagret. Läs mer i avsnittet Förutsättningar . Om den inte anges använder den standardkörningen för Azure-integrering. Nej

Exempel:

{
    "name": "SparkLinkedService",
    "properties": {
        "type": "Spark",
        "typeProperties": {
            "host" : "<cluster>.azurehdinsight.net",
            "port" : "<port>",
            "authenticationType" : "WindowsAzureHDInsightService",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            }
        }
    }
}

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 Spark-datauppsättningen.

Om du vill kopiera data från Spark anger du datamängdens typegenskap till SparkObject. Följande egenskaper stöds:

Property Beskrivning Obligatoriskt
type Typegenskapen för datamängden måste anges till: SparkObject Ja
schema Namnet på schemat. Nej (om "fråga" i aktivitetskällan har angetts)
table Tabellens namn. Nej (om "fråga" i aktivitetskällan har angetts)
tableName Namnet på tabellen med schemat. Den här egenskapen stöds för bakåtkompatibilitet. Använd schema och table för ny arbetsbelastning. Nej (om "fråga" i aktivitetskällan har angetts)

Exempel

{
    "name": "SparkDataset",
    "properties": {
        "type": "SparkObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Spark 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 Spark-källan.

Spark som källa

Om du vill kopiera data från Spark anger du källtypen i kopieringsaktiviteten till SparkSource. Följande egenskaper stöds i avsnittet kopieringsaktivitetskälla:

Property Beskrivning Obligatoriskt
type Typegenskapen för kopieringsaktivitetskällan måste anges till: SparkSource Ja
query Använd den anpassade SQL-frågan för att läsa data. Exempel: "SELECT * FROM MyTable". Nej (om "tableName" i datauppsättningen har angetts)

Exempel:

"activities":[
    {
        "name": "CopyFromSpark",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Spark input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SparkSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Egenskaper för uppslagsaktivitet

Mer information om egenskaperna finns i Sökningsaktivitet.

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