Dela via


Kopiera data från Google BigQuery med Hjälp av Azure Data Factory eller Synapse Analytics (äldre)

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 kopieringsaktivitet i Azure Data Factory- och Synapse Analytics-pipelines för att kopiera data från Google BigQuery. Den bygger på översiktsartikeln Kopieringsaktivitet som visar en allmän översikt över kopieringsaktiviteten.

Viktigt!

Den nya Google BigQuery-anslutningsappen ger förbättrat inbyggt Google BigQuery-stöd. Om du använder den äldre Google BigQuery-anslutningsappen i din lösning uppgraderar du din Google BigQuery-anslutning före den 31 oktober 2024. Mer information om skillnaden mellan den äldre och den senaste versionen finns i det här avsnittet .

Funktioner som stöds

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

Funktioner som stöds IR
aktiviteten Kopiera (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 eller mottagare av kopieringsaktiviteten finns i tabellen Datalager som stöds.

Tjänsten tillhandahåller en inbyggd drivrutin för att aktivera anslutning. Därför behöver du inte installera en drivrutin manuellt för att använda den här anslutningsappen.

Kommentar

Den här Google BigQuery-anslutningsappen bygger på BigQuery-API:erna. Tänk på att BigQuery begränsar den maximala hastigheten för inkommande begäranden och tillämpar lämpliga kvoter per projekt, se Kvoter och gränser – API-begäranden. Kontrollera att du inte utlöser för många samtidiga begäranden till kontot.

Kom 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 Google BigQuery med hjälp av användargränssnittet

Använd följande steg för att skapa en länkad tjänst till Google BigQuery 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 Google och välj Google BigQuery-anslutningsappen.

    Skärmbild av Google BigQuery-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 Google BigQuery.

Anslut eller konfigurationsinformation

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

Länkade tjänstegenskaper

Följande egenskaper stöds för den länkade Google BigQuery-tjänsten.

Property Beskrivning Obligatoriskt
type Typegenskapen måste vara inställd på GoogleBigQuery. Ja
projekt Projekt-ID:t för bigquery-standardprojektet att fråga mot. Ja
additionalProjects En kommaavgränsad lista över projekt-ID:t för offentliga BigQuery-projekt att komma åt. Nej
requestGoogleDriveScope Om du vill begära åtkomst till Google Drive. Om du tillåter Åtkomst till Google Drive kan du använda federerade tabeller som kombinerar BigQuery-data med data från Google Drive. Standardvärdet är falskt. Nej
authenticationType OAuth 2.0-autentiseringsmekanismen som används för autentisering. ServiceAuthentication kan endast användas på lokalt installerad integrationskörning.
Tillåtna värden är UserAuthentication och ServiceAuthentication. Se avsnitten nedan i den här tabellen om fler egenskaper och JSON-exempel för dessa autentiseringstyper.
Ja

Använda användarautentisering

Ange egenskapen "authenticationType" till UserAuthentication och ange följande egenskaper tillsammans med allmänna egenskaper som beskrivs i föregående avsnitt:

Property Beskrivning Obligatoriskt
clientId ID för programmet som används för att generera uppdateringstoken. Ja
clientSecret Hemlighet för programmet som används för att generera uppdateringstoken. 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
refreshToken Uppdateringstoken som hämtades från Google används för att auktorisera åtkomst till BigQuery. Lär dig hur du hämtar en från Hämta OAuth 2.0-åtkomsttoken och den här communitybloggen. 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

Det minsta omfång som krävs för att hämta en OAuth 2.0-uppdateringstoken är https://www.googleapis.com/auth/bigquery.readonly. Om du planerar att köra en fråga som kan returnera stora resultat kan det krävas ett annat omfång. Mer information finns i den här artikeln.

Exempel:

{
    "name": "GoogleBigQueryLinkedService",
    "properties": {
        "type": "GoogleBigQuery",
        "typeProperties": {
            "project" : "<project ID>",
            "additionalProjects" : "<additional project IDs>",
            "requestGoogleDriveScope" : true,
            "authenticationType" : "UserAuthentication",
            "clientId": "<id of the application used to generate the refresh token>",
            "clientSecret": {
                "type": "SecureString",
                "value":"<secret of the application used to generate the refresh token>"
            },
            "refreshToken": {
                "type": "SecureString",
                "value": "<refresh token>"
            }
        }
    }
}

Använda tjänstautentisering

Ange egenskapen "authenticationType" till ServiceAuthentication och ange följande egenskaper tillsammans med allmänna egenskaper som beskrivs i föregående avsnitt. Den här autentiseringstypen kan endast användas på lokalt installerad integrationskörning.

Property Beskrivning Obligatoriskt
E-post E-post-ID för tjänstkontot som används för ServiceAuthentication. Den kan endast användas på lokalt installerad integrationskörning. Nej
keyFilePath Den fullständiga sökvägen till .p12 eller .json nyckelfilen som används för att autentisera e-postadressen för tjänstkontot. Ja
trustedCertPath Den fullständiga sökvägen till .pem-filen som innehåller betrodda CA-certifikat som används 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 integrationskörning. Standardvärdet är filen cacerts.pem som är installerad med integrationskörningen. 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 falskt. Nej

Exempel:

{
    "name": "GoogleBigQueryLinkedService",
    "properties": {
        "type": "GoogleBigQuery",
        "typeProperties": {
            "project" : "<project id>",
            "requestGoogleDriveScope" : true,
            "authenticationType" : "ServiceAuthentication",
            "email": "<email>",
            "keyFilePath": "<.p12 or .json key path on the IR machine>"
        },
        "connectVia": {
            "referenceName": "<name of Self-hosted 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 Google BigQuery-datauppsättningen.

Om du vill kopiera data från Google BigQuery anger du datauppsättningens typegenskap till GoogleBigQueryObject. Följande egenskaper stöds:

Property Beskrivning Obligatoriskt
type Typegenskapen för datamängden måste anges till: GoogleBigQueryObject Ja
datauppsättning Namnet på Google BigQuery-datauppsättningen. Nej (om "fråga" i aktivitetskällan har angetts)
table Tabellens namn. Nej (om "fråga" i aktivitetskällan har angetts)
tableName Tabellens namn. Den här egenskapen stöds för bakåtkompatibilitet. För ny arbetsbelastning använder du dataset och table. Nej (om "fråga" i aktivitetskällan har angetts)

Exempel

{
    "name": "GoogleBigQueryDataset",
    "properties": {
        "type": "GoogleBigQueryObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<GoogleBigQuery 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 Google BigQuery-källtypen.

GoogleBigQuerySource som källtyp

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

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

Exempel:

"activities":[
    {
        "name": "CopyFromGoogleBigQuery",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<GoogleBigQuery input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "GoogleBigQuerySource",
                "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.