Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Google BigQuery

Możesz użyć Google BigQuery jako docelowa platforma danych w potoku danych lub zadaniu replikacji. W potoku danych można wykonywać różne operacje ELT na platformie docelowej, w tym przechowywanie danych, przekształcanie danych, tworzenie data martów oraz rejestrowanie danych. Zadanie replikacji polega natomiast na replikacji danych bezpośrednio z systemu źródłowego do systemu docelowego z podstawowymi możliwościami transformacji, ale bez obsługi operacji ELT.

Konfigurowanie Google BigQuery jako miejsca docelowego obejmuje:

Konfiguracja połączenia z Google BigQuery

Aby skonfigurować łącznik, wykonaj następujące czynności:

  1. W obszarze Połączenia kliknij Utwórz połączenie.

  2. Wybierz łącznik miejsca docelowego Google BigQuery , a następnie podaj następujące ustawienia:

Miejsce docelowe danych

InformacjaTo pole jest niedostępne w subskrypcji Qlik Talend Cloud Starter, ponieważ brama Brama danych ruchu danych jest nieobsługiwana na tym poziomie subskrypcji.

Brama Brama danych ruchu danych jest wymagana tylko wtedy, gdy docelowa baza danych nie jest dostępna z Qlik Cloud i można uzyskać do niej dostęp tylko za pośrednictwem łącza prywatnego (na przykład jeśli znajduje się w wirtualnej chmurze prywatnej). W takim przypadku wybierz tę bramę Brama danych ruchu danych, przez którą chcesz uzyskiwać dostęp do docelowej bazy danych.

W zależności od zastosowania będzie to ta sama Brama danych ruchu danych, która została wdrożona do przenoszenia danych ze źródła, lub inna.

Informacje na temat zastosowań związanych z Brama danych ruchu danych zawierają tematy Kiedy jest wymagana brama Brama danych ruchu danych? i Typowe zastosowania.

Jeśli docelowa baza danych jest bezpośrednio dostępna z Qlik Cloud, wybierz Brak.

InformacjaW celu uzyskiwania dostępu do docelowej bazy danych za pośrednictwem Brama danych ruchu danych należy też zainstalować odpowiedni sterownik na urządzeniu z Brama danych ruchu danych. Szczegółowe informacje zawiera temat Google BigQuery poniżej.

Właściwości połączenia

Klucz konta usługi: Prześlij plik JSON pobrany podczas tworzenia klucza konta usługi BigQuery.

Lokalizacja: miejsce, do którego należy przesłać zestaw danych utworzony przez Qlik. Jeśli wybierzesz opcję Inne, wprowadź nazwę regionu w polu Nazwa regionu. Listę obsługiwanych nazw regionów znajdziesz w artykule Lokalizacje BigQuery.

InformacjaWybranie opcji Inne wymaga Brama danych ruchu danych w wersji 2023.11.4 lub nowszej.

Nazwa

Nazwa wyświetlana dla połączenia.

Wymagania wstępne

Uprawnienia wymagane do umieszczania danych

Jeśli chcesz, aby zestaw danych został utworzony automatycznie, wymagane są następujące uprawnienia:

BigQuery > BigQuery Job User

BigQuery > BigQuery Data Editor

Jeśli zestaw danych już istnieje, musisz wykonać następujące czynności:

  1. Utwórz konto usługi z następującymi uprawnieniami:

    BigQuery > BigQuery Job User

  2. Przejdź do zbioru danych, którego chcesz użyć, a następnie:

    1. Dodaj właśnie utworzone konto usługi jako główne.

    2. Przydziel rolę BigQuery Data Editor.

Konfiguracja sterowników

Sterownik jest wymagany tylko do uzyskiwania dostępu za pośrednictwem Brama danych ruchu danych. W takim przypadku należy zainstalować sterownik na urządzeniu Brama danych ruchu danych.

Sterownik driver można zainstalować za pomocą Narzędzia do instalacji sterowników (zalecane) lub ręcznie. Instalacji ręcznej należy próbować tylko w mało prawdopodobnym przypadku wystąpienia problemu z Narzędziem do instalacji sterowników.

Używanie Narzędzia do instalacji sterowników w celu instalacji sterownika

W tej sekcji opisano, jak zainstalować wymagany driver. Proces ten obejmuje uruchomienie skryptu, który automatycznie pobierze, zainstaluje i skonfiguruje wymagany driver. W razie potrzeby można także uruchamiać skrypty, aby zaktualizować i odinstalować driver.

  • Na serwerze bramy Ruch danych musi być zainstalowane środowisko Python 3.6 lub nowsze.

    Środowisko Python jest preinstalowane w większości dystrybucji systemu Linux. Aby sprawdzić, która wersja środowiska Pythona jest zainstalowana w Twoim systemie, uruchom następujące polecenie:

    python3 --version

Aby pobrać i zainstalować driver:

  1. Zatrzymaj usługę Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcjonalnie potwierdź, że usługa została zatrzymana:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: inactive (dead) since <timestamp> ago

  3. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  4. Wykonaj następujące polecenie:

    Składnia:

    ./install gbq

    Jeśli driver nie może zostać pobrany (ze względu na ograniczenia dostępu lub problemy techniczne), zostanie wyświetlony komunikat informujący, skąd pobrać driver i dokąd go skopiować na urządzenie bramy Ruch danych. Po wykonaniu tej czynności ponownie uruchom polecenie install gbq.

    W przeciwnym razie zostanie wyświetlona umowa licencyjna dotycząca driver.

  5. Wykonaj jedną z poniższych czynności:

    • Naciśnij klawisz [Enter] wielokrotnie, aby powoli przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz spacji wielokrotnie, aby szybko przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz „q”, aby zamknąć tekst umowy licencyjnej i wyświetlić opcje jej akceptacji.
  6. Wykonaj jedną z poniższych czynności:

    • Wpisz „y” i naciśnij klawisz [Enter], aby zaakceptować umowę licencyjną i rozpocząć instalację.
    • Wpisz „n” i naciśnij klawisz [Enter], aby odrzucić umowę licencyjną i zakończyć instalację.
    • Wpisz „v” i naciśnij klawisz [Enter], aby ponownie wyświetlić umowę licencyjną.

  7. Zostanie zainstalowany driver.

  8. Poczekaj na zakończenie instalacji (wskazane komunikatem „Ukończono!”), a następnie uruchom usługę Data Movement gateway:

    sudo systemctl start repagent

  9. Opcjonalnie potwierdź, że usługa została uruchomiona:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: active (running) since <timestamp> ago

Uruchom polecenie aktualizacji, jeśli chcesz odinstalować driver w poprzedniej wersji, zanim zainstalujesz dostarczony driver.

Aby pobrać i zaktualizować driver:

  1. Zatrzymaj usługę Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcjonalnie potwierdź, że usługa została zatrzymana:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: inactive (dead) since <timestamp> ago

  3. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  4. Wykonaj następujące polecenie:

    Składnia:

    ./update gbq

    Jeśli driver nie może zostać pobrany (ze względu na ograniczenia dostępu lub problemy techniczne), zostanie wyświetlony komunikat informujący, skąd pobrać driver i dokąd go skopiować na urządzenie bramy Ruch danych. Po wykonaniu tej czynności ponownie uruchom polecenie update gbq.

    W przeciwnym razie zostanie wyświetlona umowa licencyjna dotycząca driver.

  5. Wykonaj jedną z poniższych czynności:

    • Naciśnij klawisz [Enter] wielokrotnie, aby powoli przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz spacji wielokrotnie, aby szybko przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz „q”, aby zamknąć tekst umowy licencyjnej i wyświetlić opcje jej akceptacji.
  6. Wykonaj jedną z poniższych czynności:

    • Wpisz „y” i naciśnij klawisz [Enter], aby zaakceptować umowę licencyjną i rozpocząć instalację.
    • Wpisz „n” i naciśnij klawisz [Enter], aby odrzucić umowę licencyjną i zakończyć instalację.
    • Wpisz „v” i naciśnij klawisz [Enter], aby wyświetlić umowę licencyjną od początku.
  7. Stary driver zostanie odinstalowany, a zainstalowany zostanie nowy driver.

  8. Poczekaj na zakończenie instalacji (wskazane komunikatem „Ukończono!”), a następnie uruchom usługę Data Movement gateway:

    sudo systemctl start repagent

  9. Opcjonalnie potwierdź, że usługa została uruchomiona:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: active (running) since <timestamp> ago

Uruchom polecenie odinstalowania, jeśli chcesz odinstalować driver.

Aby odinstalować driver:

  1. Zatrzymaj wszystkie zadania skonfigurowane do korzystania z tego łącznika.

  2. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  3. Wykonaj następujące polecenie:

    Składnia:

    ./uninstall gbq

    Sterownik driverzostanie odinstalowany.

Instalowanie sterownika ręcznie

Sterownik driver należy instalować ręcznie tylko wtedy, gdy automatyczna instalacja nie zakończyła się pomyślnie.

Należy zainstalować sterowniki zarówno ODBC, jak i JDBC.

Po zainstalowaniu Brama danych ruchu danych pobierz pliki SimbaODBCDriverforGoogleBigQuery_<wersja>-Linux.tar.gz i google-cloud-sdk-<wersja>-linux-x86_64.tar.gz. Łącza do bezpośredniego pobrania tych plików można znaleźć w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml. Po zakończeniu pobierania skopiuj pliki na komputer z Brama danych ruchu danych.

  1. Zatrzymaj usługę Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcjonalnie potwierdź, że usługa została zatrzymana:

    sudo systemctl status repagent

  3. Status powinien być następujący:

    Active: inactive (dead) since <timestamp> ago

  4. Wyodrębnienie:

    SimbaODBCDriverforGoogleBigQuery_<wersja>.tar.gz

    na:

    /opt/SimbaODBCDriverforGoogleBigQuery_<wersja>-Linux

  5. Przenieś pliki GoogleBigQueryODBC.did i simba.googlebigqueryodbc.ini do katalogu lib w katalogu sterownika Simba ODBC.

    Przykład:

    Przenieś pliki z:

    /opt/SimbaODBCDriverforGoogleBigQuery_<wersja>-Linux/setup

    na:

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

  6. Edytuj plik simba.googlebigqueryodbc.ini w następujący sposób:

    1. Zmień ErrorMessagesPath na ścieżkę dostępu do pliku XML zawierającego komunikaty ODBC. Lokalizacją domyślną jest:

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

    2. Zmień DriverManagerEncoding na UTF-16.
  7. Dodaj następującą ścieżkę do pliku site_arep_login.sh znajdującego się w katalogu Data Movement gateway bin:

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

  8. Edytuj plik /etc/odbcinst.ini i dodaj ścieżkę do sterownika (tj. ścieżkę, gdzie sterownik jest zainstalowany):

    [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. Zainstaluj Google-Cloud-SDK- <wersja>-linux-x86_64.tar.gz.

  10. Uruchom usługę Data Movement gateway:

    sudo systemctl start repagent

  11. Opcjonalnie potwierdź, że usługa została uruchomiona:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: active (running) since <timestamp> ago

  1. Pobierz następujący plik ZIP i pliki JAR wymienione w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml:

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

    Skopiuj pliki JAR do następującego folderu na komputerze Brama danych ruchu danych i wyodrębnij pliki JAR w pakiecie SimbaJDBCDriverforGoogleBigQuery<wersja>.zip do tego samego folderu:

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

  2. Uruchom ponownie usługę Brama danych ruchu danych, używając polecenia opisanego w temacie Ponowne uruchamianie usługi.

Port

Należy otworzyć port 443 zapory na potrzeby komunikacji wychodzącej.

Typy danych

Dla długości parametrycznych typów danych zostaną ustawione wartości domyślne:

  • CIĄG: 8192 (długość)

  • BAJTY: 8192 (długość)

  • NUMERIC: precyzja: 38, skala: 9

  • BIGDECIMAL: precyzja: 76, skala: 38

Następująca tabela pokazuje typy danych Google BigQuery, które są obsługiwane podczas używania Qlik Cloud, i domyślne mapowanie z typów danych Qlik Cloud.

Informacje o natywnym typie danych są zachowywane i wyświetlane w widokach zestawu danych w kolumnie Natywny typ danych. Jeśli kolumna nie jest widoczna, otwórz selektor kolumn w widoku zestawu danych i wybierz kolumnę Natywny typ danych.

Obsługiwane typy danych
Typy danych Qlik Cloud Typy danych Google BigQuery

BOOLEAN

BOOL

BYTES

BYTES (długość w bajtach)

DATE

DATE

TIME

TIME

DATETIME

TIMESTAMP

INT1

TINYINT

INT2 SMALLINT

INT4

INTEGER

INT8 BIGINT

NUMERIC

NUMERIC (precyzja, skala)

REAL4

FLOAT64

REAL8

FLOAT64

UINT1

TINYINT

UINT2

SMALLINT

UINT4

INTEGER

UINT8

BIGINT

STRING

STRING (długość w bajtach)

WSTRING

STRING (długość w bajtach)

BLOB

BYTES

NCLOB

STRING

CLOB

STRING

Następujące typy danych są konwertowane na STRING:

  • ARRAY

  • STRUCT

  • JSON

  • GEOGRAPHY

Sterownik driver należy instalować ręcznie tylko wtedy, gdy automatyczna instalacja nie zakończyła się pomyślnie.

Ograniczenia i uwagi

Podczas przenoszenia danych do miejsca docelowego Google BigQuery obowiązują następujące ograniczenia:

Ograniczenia i uwagi dotyczące wszystkich zadań danych

  • Poniższe DDL nie są obsługiwane:
    • Usuń kolumnę
    • Zmień nazwę kolumny
    • Zmiana typu danych kolumny
    • Zmień nazwę tabeli
  • Przechwytywanie zmian z tabel źródłowych bez klucza głównego lub unikatowego indeksu nie jest obsługiwane. Jeśli potrzebujesz przechwytywać zmiany z takich tabel, możesz dodać klucz główny przy użyciu transformacji. Dodatkowo kolumny klucza głównego lub unikatowego indeksu nie mogą zawierać wartości NULL. Jeśli wiesz, że takie kolumny będą wypełnione wartościami NULL, zdefiniuj transformację, aby zmienić wartości NULL na inne wartości.

Ograniczenia i uwagi dotyczące wyłącznie zadań replikacji

  • Transakcyjny tryb „Zastosuj zmiany” nie jest obsługiwany.
  • Opcja obsługi błędów Zarejestruj rekord w tabeli wyjątków dla konfliktów stosowania i błędów danych nie jest obsługiwana.

  • Przy następującej konfiguracji ustawień zadania zadanie replikacji wykona operację DELETE, a następnie INSERT zamiast UPDATE:

    • Tryb stosowania zmian jest ustawiony na Optymalizacja pod kątem partii.

    • Gdy opcja Zastosuj zmiany za pomocą SQL MERGE nie jest wybrana.

    • Obsługa błędów operacji UPDATE dla konfliktów stosowania jest ustawiona na: Nie znaleziono rekordu do zastosowania UPDATE: Użyj operacji INSERT do brakującego rekordu docelowego.

    Ponieważ Google Cloud BigQuery nie obsługuje wycofywania, jeżeli zadanie replikacji nie będzie w stanie wstawić zaktualizowanego wiersza, dane zostaną usunięte z miejsca docelowego.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!