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 |
---|---|
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 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 kopieringsaktiviteten med en pipeline kan du använda något av följande verktyg eller SDK:er:
- Verktyget Kopiera data
- Azure-portalen
- The .NET SDK
- The Python SDK
- Azure PowerShell
- REST-API:et
- Azure Resource Manager-mallen
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.
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:
Sök efter Google och välj Google BigQuery-anslutningsappen.
Konfigurera tjänstinformationen, testa anslutningen och skapa den nya länkade tjänsten.
Konfigurationsinformation för anslutningsprogram
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.
Relaterat innehåll
En lista över datalager som stöds som källor och mottagare av kopieringsaktiviteten finns i Datalager som stöds.