Ga naar hoofdinhoud Ga naar aanvullende inhoud

Google BigQuery

U kunt Google BigQuery als een doelgegevensplatform in een gegevenspijplijn of in een replicatietaak. In een gegevenspijplijn kunt u verschillende ELT-bewerkingen uitvoeren voor het doelplatform, zoals gegevens opslaan, gegevens transformeren, datamarts maken en gegevens registreren. Bij een replicatietaak daarentegen worden gegevens rechtstreeks van een bronsysteem naar een doelsysteem gerepliceerd met basistransformatie-opties, maar zonder ondersteuning voor ELT-bewerkingen. gebruiken

Google BigQuery als doel instellen vereist het volgende:

Een verbinding naar Google BigQuery configureren

Ga als volgt te werk om de connector te configureren:

  1. Klik in Verbindingen op Verbinding maken.

  2. Selecteer de Google BigQuery doelconnector en stel de volgende instellingen in:

Gegevensdoel

InformatieDit veld is niet beschikbaar bij een Qlik Talend Cloud Starter-abonnement omdat Gateway voor gegevensverplaatsing niet wordt ondersteund bij dit abonnementsniveau.

Een Gateway voor gegevensverplaatsing is alleen vereist als de doeldatabase niet toegankelijk is via Qlik Cloud en kan alleen worden geopend via een privékoppeling (bijvoorbeeld als deze zich in een virtuele privécloud bevindt). Als dit het geval is, selecteer dan de Gateway voor gegevensverplaatsing waarmee u toegang wilt krijgen tot de doeldatabase.

Afhankelijk van uw gebruikssituatie, gebruikt u dezelfde Gateway voor gegevensverplaatsing die is geïmplementeerd om gegevens van de bron te verplaatsen of u gebruikt een andere gateway.

Voor informatie over usecases voor de Gateway voor gegevensverplaatsing, gaat u naar Wanneer is de Gateway voor gegevensverplaatsing vereist? en Veelvoorkomende usecases.

Als de doeldatabase direct toegankelijk is via Qlik Cloud, selecteer dan Geen.

InformatieAls u toegang wilt krijgen tot de doeldatabase via Gateway voor gegevensverplaatsing, moet u ook het juiste stuurprogramma installeren op de machine voor de Gateway voor gegevensverplaatsing. Voor meer informatie raadpleegt u Google BigQuery hieronder.

Verbindingseigenschappen

Serviceaccountsleutel: Upload het JSON-bestand dat is gedownload toen u uw BigQuery-serviceaccountsleutel hebt gemaakt.

Locatie: waar de gegevenverzameling die is gemaakt door Qlik moet worden geüpload. Als u Overige selecteert, voert u de regionaam in het veld Regionaam in. Voor een lijst met ondersteunde regionamen gaat u naar BigQuery-locaties.

InformatieVoor het selecteren van Overige is Gateway voor gegevensverplaatsing 2023.11.4 of hoger vereist.

Naam

De weergavenaam voor de verbinding.

Vereisten

Machtigingen vereist voor tussenopslaggegevens

Als u wilt dat de gegevensverzameling automatisch wordt gemaakt, zijn de volgende machtigingen vereist:

BigQuery > BigQuery Job User

BigQuery > BigQuery Data Editor

Als de gegevensverzameling al bestaat, moet u de volgende stappen uitvoeren:

  1. Maak een serviceaccount met de volgende machtiging:

    BigQuery > BigQuery Job User

  2. Ga naar de gegevensverzameling die u wilt gebruiken en:

    1. Voeg het serviceaccount dat u zojuist hebt gemaakt toe als een principal.

    2. Wijs de rol BigQuery Data Editor toe.

Setup stuurprogramma

Er is alleen een stuurprogramma vereist als u via Gateway voor gegevensverplaatsing toegang krijgt tot de database. In dit geval moet u het stuurprogramma op de Gateway voor gegevensverplaatsing-machine installeren.

U kunt het driver installeren met het installatieprogramma (aanbevolen) of handmatig. U moet een handmatige installatie alleen uitvoeren als er een probleem ontstaat bij het hulpprogramma.

Het hulpprogramma gebruiken om het stuurprogramma te installeren

In deze sectie wordt beschreven hoe u het vereiste driver installeert. Het proces omvat het uitvoeren van een script dat automatisch het vereiste driver downloadt, installeert en configureert. U kunt indien nodig ook scripts uitvoeren om het driver bij te werken en verwijderen.

  • Controleer of Python 3.6 of hoger is geïnstalleerd op de Gegevensverplaatsing-gatewayserver.

    Python is al geïnstalleerd op de meeste Linux-distributies. U kunt controleren welke Python-versie is geïnstalleerd op uw systeem door de volgende opdracht uit te voeren:

    python3 --version

Ga als volgt te werk om het driverte downloaden en installeren:

  1. Stop de Data Movement gateway-service:

    sudo systemctl stop repagent

  2. Bevestig eventueel dat de service is gestopt:

    sudo systemctl status repagent

    De status zou als volgt moeten zijn:

    Active: inactive (dead) since <timestamp> ago

  3. Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:

    opt/qlik/gateway/movement/drivers/bin

  4. Voer dan de volgende opdracht uit:

    Syntaxis:

    ./install gbq

    Als het driver niet kan worden gedownload (vanwege toegangsbeperkingen of technische problemen), wordt er een melding getoond met de instructies voor het downloaden van het driver en waarnaar u het moet kopiëren op de Gegevensverplaatsing-gatewaymachine. Nadat u dit hebt gedaan, voert u de opdracht install gbq nogmaals uit.

    Anders wordt de gebruiksrechtovereenkomst voor het driver getoond.

  5. Voer een van de volgende handelingen uit:

    • Druk herhaaldelijk op [Enter] om langzaam door de gebruiksrechtovereenkomst te scrollen.
    • Druk herhaaldelijk op de spatiebalk om snel door de gebruiksrechtovereenkomst te scrollen.
    • Druk op q om de licentietekst af te sluiten en de opties te tonen voor het aanvaarden van de gebruiksrechtovereenkomst.
  6. Voer een van de volgende handelingen uit:

    • Typ "y" en druk op [Enter] om de gebruiksrechtovereenkomst te accepteren en de installatie te starten.
    • Typ "n" en druk op [Enter] om de gebruiksrechtovereenkomst af te wijzen en de installatie af te sluiten.
    • Typ "v" en druk op [Enter] om de gebruiksrechtovereenkomst nogmaals te tonen.

  7. Het driver wordt geïnstalleerd.

  8. Wacht totdat de installatie is voltooid (wordt aangegeven met "Voltooid!") en start vervolgens de Data Movement gateway-service:

    sudo systemctl start repagent

  9. Bevestig eventueel dat de service is gestart:

    sudo systemctl status repagent

    De status zou als volgt moeten zijn:

    Active: active (running) since <timestamp> ago

Voer de update-opdracht uit als u eerdere versies van het driver wilt verwijderen voordat u het meegeleverde driver installeert.

Ga als volgt te werk om het driver te downloaden en bij te werken:

  1. Stop de Data Movement gateway-service:

    sudo systemctl stop repagent

  2. Bevestig eventueel dat de service is gestopt:

    sudo systemctl status repagent

    De status zou als volgt moeten zijn:

    Active: inactive (dead) since <timestamp> ago

  3. Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:

    opt/qlik/gateway/movement/drivers/bin

  4. Voer dan de volgende opdracht uit:

    Syntaxis:

    ./update gbq

    Als het driver niet kan worden gedownload (vanwege toegangsbeperkingen of technische problemen), wordt er een melding getoond met de instructies voor het downloaden van het driver en waarnaar u het moet kopiëren op de Gegevensverplaatsing-gatewaymachine. Nadat u dit hebt gedaan, voert u de opdracht update gbq nogmaals uit.

    Anders wordt de gebruiksrechtovereenkomst voor het driver getoond.

  5. Voer een van de volgende handelingen uit:

    • Druk herhaaldelijk op [Enter] om langzaam door de gebruiksrechtovereenkomst te scrollen.
    • Druk herhaaldelijk op de spatiebalk om snel door de gebruiksrechtovereenkomst te scrollen.
    • Druk op q om de licentietekst af te sluiten en de opties te tonen voor het aanvaarden van de gebruiksrechtovereenkomst.
  6. Voer een van de volgende handelingen uit:

    • Typ "y" en druk op [Enter] om de gebruiksrechtovereenkomst te accepteren en de installatie te starten.
    • Typ "n" en druk op [Enter] om de gebruiksrechtovereenkomst af te wijzen en de installatie af te sluiten.
    • Typ "v" en druk op [Enter] om de gebruiksrechtovereenkomst nogmaals vanaf het begin te tonen.
  7. Het oude driver wordt verwijderd en het nieuwe driver wordt geïnstalleerd.

  8. Wacht totdat de installatie is voltooid (wordt aangegeven met "Voltooid!") en start vervolgens de Data Movement gateway-service:

    sudo systemctl start repagent

  9. Bevestig eventueel dat de service is gestart:

    sudo systemctl status repagent

    De status zou als volgt moeten zijn:

    Active: active (running) since <timestamp> ago

Voer de uninstall-opdracht uit als u het driver wilt verwijderen.

Ga als volgt te werken om het driver te verwijderen:

  1. Stop alle taken die zijn geconfigureerd om deze connector te gebruiken.

  2. Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:

    opt/qlik/gateway/movement/drivers/bin

  3. Voer dan de volgende opdracht uit:

    Syntaxis:

    ./uninstall gbq

    driver wordt verwijderd.

Het stuurprogramma handmatig installeren

U moet het driver alleen handmatig uitvoeren als de geautomatiseerde installatie van het stuurprogramma niet is voltooid.

U moet zowel een ODBC-stuurpogramma als een JDBC-stuurprogramma installeren.

Nadat Gateway voor gegevensverplaatsing is geïnstalleerd, downloadt u de SimbaODBCDriverforGoogleBigQuery_<version>-Linux.tar.gz and google-cloud-sdk-<version>-linux-x86_64.tar.gz bestanden. U vindt directe downloadlinks voor deze bestanden onder binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml. Nadat de download is voltooid, kopieert u de bestanden naar de machine met de Gateway voor gegevensverplaatsing.

  1. Stop de Data Movement gateway-service:

    sudo systemctl stop repagent

  2. Bevestig eventueel dat de service is gestopt:

    sudo systemctl status repagent

  3. De status zou als volgt moeten zijn:

    Active: inactive (dead) since <timestamp> ago

  4. Extraheren:

    SimbaODBCDriverforGoogleBigQuery_<version>.tar.gz

    in:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux

  5. Verplaats de bestanden GoogleBigQueryODBC.did en simba.googlebigqueryodbc.ini naar de lib-directory onder de Simba ODBC-stuurprogrammadirectory.

    Voorbeeld:

    Verplaats de bestanden van:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/setup

    in:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib

  6. Bewerk het bestand simba.googlebigqueryodbc.ini als volgt:

    1. Wijzig het ErrorMessagesPath in het pad van het XML-bestand met de ODBC-berichten. De standaardlocatie is:

      ErrorMessagesPath=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/ErrorMessages

    2. Wijzig DriverManagerEncoding in UTF-16.
  7. Voeg het volgende pad toe aan het bestand site_arep_login.sh in de bin-map van Data Movement gateway:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib

  8. Bewerk het bestand /etc/odbcinst.ini en voeg het stuurprogrammapad toe (d.w.z. het pad waar het stuurprogramma is geïnstalleerd):

    [ODBC Drivers]

    Simba= Installed

    Simba ODBC Driver for Google BigQuery = Installed

    [Simba ODBC Driver for Google BigQuery]

    Description=Simba ODBC Driver for Google BigQuery(64-bit)

    Driver=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib/libgooglebigqueryodbc_sb64.so

  9. Installeer google-cloud-sdk-<version>-linux-x86_64.tar.gz.

  10. Start de Data Movement gateway-service:

    sudo systemctl start repagent

  11. Bevestig eventueel dat de service is gestart:

    sudo systemctl status repagent

    De status zou als volgt moeten zijn:

    Active: active (running) since <timestamp> ago

  1. Download het volgende ZIP-bestand de JAR-bestanden onder binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml.:

    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-bigquery/<version>/google-cloud-bigquery-<version>.jar
    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-storage/<version>/google-cloud-storage-<version>.jar
    • https://storage.googleapis.com/simba-bq-release/jdbc/SimbaJDBCDriverforGoogleBigQuery<version>.zip

    Kopieer de JAR-bestanden naar de volgende map op de machine met de Gateway voor gegevensverplaatsing en pak de JAR‑bestanden in SimbaJDBCDriverforGoogleBigQuery<version>.zip in dezelfde map uit:

    /opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib

  2. Herstart de Gateway voor gegevensverplaatsing-service door de opdracht uit te voeren die wordt beschreven in De service opnieuw opstarten

Poort

Firewallpoort 443 moet zijn geopend voor uitgaande communicatie.

Gegevenstypen

Gegevenstypelengte met parametrisering worden ingesteld met standaardwaarden:

  • STRING: 8192 (lengte)

  • BYTES: 8192 (lengte)

  • NUMERIC: Precision: 38, Scale: 9

  • BIGDECIMAL: Precision: 76, Scale: 38

De volgende tabel toont de Google BigQuery-gegevenstypen van de database die worden ondersteund als u Qlik Cloud en de standaard toewijzingen van Qlik Cloud-gegevenstypen gebruikt.

Informatie in eigen gegevenstypen wordt behouden en wordt weergegeven in de kolom Eigen gegevenstype in weergaven van gegevensverzamelingen. Als de kolom niet zichtbaar is, moet u de kolomkiezer van de weergave van de gegevensverzameling openen en de kolom Eigen gegevenstype selecteren.

Ondersteunde gegevenstypen
Qlik Cloud-gegevenstypen Google BigQuery-gegevenstypen

BOOLEAN

BOOL

BYTES

BYTES (lengte in bytes)

Date

DATE

TIME

TIME

DATETIME

TIMESTAMP

INT1

TINYINT

INT2 SMALLINT

INT4

INTEGER

INT8 BIGINT

NUMERIC

NUMERIC (precision, scale)

REAL4

FLOAT64

REAL8

FLOAT64

UINT1

TINYINT

UINT2

SMALLINT

UINT4

INTEGER

UINT8

BIGINT

STRING

STRING (lengte in bytes)

WSTRING

STRING (lengte in bytes)

BLOB

BYTES

NCLOB

STRING

CLOB

STRING

De volgende gegevenstypen worden omgezet naar STRING:

  • ARRAY

  • STRUCT

  • JSON

  • GEOGRAPHY

U moet het driver alleen handmatig uitvoeren als de geautomatiseerde installatie van het stuurprogramma niet is voltooid.

Beperkingen en overwegingen

De volgende beperkingen zijn van toepassing bij het verplaatsen van gegevens naar een Google BigQuery-doel.

Beperkingen en overwegingen voor alle gegevenstaken

  • De volgende DDL's worden niet ondersteund:
    • Kolom laten vervallen
    • Kolomnaam wijzigen
    • Type kolomgegevens wijzigen
    • Tabelnaam wijzigen
  • Het vastleggen van wijzigingen in brontabellen zonder primaire sleutel of unieke index wordt niet ondersteund. Als u wijzigingen van dergelijke tabellen moet vastleggen, kunt u een primaire sleutel toevoegen met behulp van een transformatie. Bovendien kunnen primaire sleutel- of unieke index-kolommen geen null-waarden bevatten. Als u weet dat dergelijke kolommen gevuld zullen worden met null-waarden, definieert u een transformatie om de null-waarden te wijzigen in niet-null-waarden.

Beperkingen en overwegingen voor alleen replicationtaken

  • De wijzigingsmodus Transactioneel toepassen wordt niet ondersteund.
  • De optie voor Record registeren in uitzonderingstabel voor toepassingsconflicten en gegevensfouten wordt niet ondersteund.

  • Met de volgende configuratie van de taakinstellingen voert de replicatietaak een DELETE-bewerking uit, gevolgd door een INSERT in plaats van een UPDATE:

    • De modus Wijzigingen toepassen is ingesteld op Batchgewijs geoptimaliseerd.

    • Als de optie Wijzigingen toepassen met SQL MERGE niet is geselecteerd.

    • Foutverwerking van UPDATE's voor toepassingsconflicten is ingesteld op: Geen record gevonden voor het toepassen van een UPDATE: Het ontbrekende doelrecord INVOEGEN

    Aangezien Google Cloud BigQuery de terugdraaiactie niet ondersteunt, worden de gegevens van het doel verwijderd wanneer de replicatietaak de bijgewerkte rij niet kan invoegen.

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!