Google BigQuery | Qlik Cloud Pomoc
Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Google BigQuery

Google BigQuery może służyć 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 celu obejmuje:

Konfigurowanie połączenia z Google BigQuery

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

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

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

Cel danych

Brama 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 wymagana jest Brama danych ruchu danych? i Typowe przypadki użycia.

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

InformacjaW przypadku uzyskiwania dostępu do docelowej bazy danych za pośrednictwem Brama danych ruchu danych należy również zainstalować odpowiedni sterownik na maszynie Brama danych ruchu danych. Szczegółowe informacje można znaleźć w sekcji Google BigQuery poniżej.

Właściwości połączenia

Klucz konta usługi: Prześlij plik JSON, który został pobrany podczas tworzenia klucza konta usługi BigQuery.

Lokalizacja: Miejsce przesłania zestawu danych utworzonego przez Qlik. Jeśli wybierzesz Inne, wprowadź nazwę regionu w polu Nazwa regionu. Listę obsługiwanych nazw regionów można znaleźć w sekcji 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, należy wykonać następujące kroki:

  1. Utwórz konto usługi z następującym uprawnieniem:

    BigQuery > BigQuery Job User

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

    1. Dodaj nowo utworzone konto usługi jako podmiot zabezpieczeń (principal).

    2. Przypisz rolę BigQuery Data Editor.

Konfiguracja sterownika

Sterownik jest wymagany tylko w przypadku uzyskiwania dostępu do bazy danych za pośrednictwem Brama danych ruchu danych. W takim przypadku należy zainstalować sterownik na maszynie 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życie narzędzia instalacji sterownika do zainstalowania 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 Data Movement 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 Data Movement 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 Data Movement. 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 Data Movement 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 Data Movement. 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 Data Movement zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  3. Wykonaj następujące polecenie:

    Składnia:

    ./uninstall gbq

    Sterownik driverzostanie odinstalowany.

Ręczna instalacja sterownika

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

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

Po zainstalowaniu Brama danych ruchu danych pobierz pliki SimbaODBCDriverforGoogleBigQuery_<version>-Linux.tar.gz i google-cloud-sdk-<version>-linux-x86_64.tar.gz. Bezpośrednie linki do 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 maszynę 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ębnij:

    SimbaODBCDriverforGoogleBigQuery_<version>.tar.gz

    do:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-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_<version>-Linux/setup

    do:

    /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ę pliku XML zawierającego komunikaty ODBC. Domyślna lokalizacja to:

      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 bin Data Movement gateway:

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

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

    [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-<version>-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/<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

    Skopiuj pliki JAR do następującego folderu na maszynie Brama danych ruchu danych i wyodrębnij pliki JAR z archiwum SimbaJDBCDriverforGoogleBigQuery<version>.zip do tego samego folderu:

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

  2. Uruchom ponownie usługę Brama danych ruchu danych, uruchamiając polecenie opisane w sekcji Ponowne uruchamianie usługi

Port

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

Typy danych

Długość sparametryzowanego typu danych zostanie ustawiona z wartościami domyślnymi:

  • STRING: 8192 (długość)

  • BYTES: 8192 (długość)

  • NUMERIC: Precyzja: 38, Skala: 9

  • BIGDECIMAL: Precyzja: 76, Skala: 38

Poniższa tabela przedstawia typy danych Google BigQuery, które są obsługiwane podczas korzystania z Qlik Cloud, oraz 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

Jeśli skala > 7: STRING(37)

W przeciwnym razie precyzja wynosi zawsze 6, nawet jeśli kolumna wejściowa używa precyzji niższej niż 6.

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

Jeśli podtyp to JSON, to:

JSON

WSTRING

STRING

Jeśli podtyp to JSON, to:

JSON

BLOB

BYTES

NCLOB

STRING

Jeśli podtyp to JSON, to:

JSON

CLOB

STRING

Jeśli podtyp to JSON, to:

JSON

ARRAY STRING
STRUCT STRING
GEOGRAPHY STRING
JSON JSON

Ograniczenia i kwestie do rozważenia dla wszystkich zadań danych

  • Następujące operacje DDL nie są obsługiwane:
    • Usuwanie kolumny
    • Zmiana nazwy kolumny
    • Zmiana typu danych kolumny
  • Przechwytywanie zmian z tabel źródłowych bez klucza podstawowego lub unikalnego indeksu nie jest obsługiwane. Jeśli musisz przechwytywać zmiany z takich tabel, możesz dodać klucz podstawowy za pomocą przekształcenia. Ponadto kolumny klucza podstawowego lub unikalnego indeksu nie mogą zawierać wartości NULL. Jeśli wiesz, że takie kolumny będą wypełniane wartościami NULL, zdefiniuj przekształcenie, aby zmienić wartości NULL na wartości, które nie mogą być puste.

  • Pola JSON nie są obsługiwane jako klucze podstawowe.

Ograniczenia i kwestie do rozważenia tylko dla zadań replikacji

  • Tryb stosowania zmian Transakcyjny nie jest obsługiwany.
  • Przy następującej konfiguracji ustawień zadania, zadanie replikacji wykona operację DELETE, a następnie INSERT zamiast UPDATE:

    • Tryb stosowania zmian jest ustawiony na Zoptymalizowany pod kątem przetwarzania wsadowego.

    • Opcja Zastosuj zmiany za pomocą SQL MERGE nie jest zaznaczona.

    • Obsługa błędów UPDATE dla konfliktów stosowania jest ustawiona na: Nie znaleziono rekordu do zastosowania UPDATE: WSTAW brakujący rekord docelowy.

    Ponieważ Google Cloud BigQuery nie obsługuje wycofywania zmian, w przypadku gdy zadanie replikacji nie będzie w stanie wstawić zaktualizowanego wiersza, dane zostaną usunięte z celu.

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ć!