Google BigQuery
Możesz użyć Google BigQuery jako docelowa platforma danych w potoku danych. W potoku danych można wykonywać różne operacje na platformie docelowej, w tym umieszczanie danych, przechowywanie danych, tworzenie data martów oraz rejestrowanie danych.
Wiąże się to z następującymi czynnościami:
- Spełnienie warunków wstępnych
- Konfiguracja połączenia z Google BigQuery
Konfiguracja połączenia z Google BigQuery
Wybierz łącznik miejsca docelowego Google BigQuery i skonfiguruj następujące ustawienia.
Miejsce docelowe danych
Brama danych: 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 umieszczania danych ze źródła, lub inna. Aby uzyskać informacje na temat możliwości wdrożenia Brama danych ruchu danych, zobacz temat Typowe zastosowania.
Jeśli docelowa baza danych jest bezpośrednio dostępna z Qlik Cloud, wybierz Brak.
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.
Nazwa
Nazwa wyświetlana dla połączenia.
Wymagania wstępne
Uprawnienia wymagane do umieszczania danych
Uprawnienia wymagane do automatycznego tworzenia docelowego zestawu danych:
Jeśli chcesz, aby zestaw danych został utworzony automatycznie, wymagane są następujące uprawnienia:
BigQuery > BigQuery Job User
BigQuery > BigQuery Data Editor
Uprawnienia wymagane, gdy docelowy zestaw danych już istnieje:
Jeśli zestaw danych już istnieje, musisz wykonać następujące czynności:
-
Utwórz konto usługi z następującymi uprawnieniami:
BigQuery > BigQuery Job User
-
Przejdź do zbioru danych, którego chcesz użyć, a następnie:
-
Dodaj właśnie utworzone konto usługi jako główne.
-
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.
Przygotowanie instalacji
-
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
Instalowanie aplikacji driver
Aby pobrać i zainstalować driver:
-
Zatrzymaj usługę Brama danych ruchu danych:
sudo systemctl stop repagent
-
Opcjonalnie potwierdź, że usługa została zatrzymana:
sudo systemctl status repagent
Status powinien być następujący:
Active: inactive (dead) since <timestamp> ago
-
Na urządzenie bramy Ruch danych zmień katalog roboczy na:
opt/qlik/gateway/movement/drivers/bin
-
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.
-
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.
-
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ą.
-
Poczekaj na zakończenie instalacji (wskazane komunikatem „Ukończono!”), a następnie uruchom usługę Brama danych ruchu danych:
sudo systemctl start repagent
-
Opcjonalnie potwierdź, że usługa została uruchomiona:
sudo systemctl status repagent
Status powinien być następujący:
Active: active (running) since <timestamp> ago
Zostanie zainstalowany driver.
driver — aktualizacja
Uruchom polecenie aktualizacji, jeśli chcesz odinstalować driver w poprzedniej wersji, zanim zainstalujesz dostarczony driver.
Aby pobrać i zaktualizować driver:
-
Zatrzymaj usługę Brama danych ruchu danych:
sudo systemctl stop repagent
-
Opcjonalnie potwierdź, że usługa została zatrzymana:
sudo systemctl status repagent
Status powinien być następujący:
Active: inactive (dead) since <timestamp> ago
-
Na urządzenie bramy Ruch danych zmień katalog roboczy na:
opt/qlik/gateway/movement/drivers/bin
-
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.
-
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.
-
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.
-
Poczekaj na zakończenie instalacji (wskazane komunikatem „Ukończono!”), a następnie uruchom usługę Brama danych ruchu danych:
sudo systemctl start repagent
-
Opcjonalnie potwierdź, że usługa została uruchomiona:
sudo systemctl status repagent
Status powinien być następujący:
Active: active (running) since <timestamp> ago
Stary driver zostanie odinstalowany, a zainstalowany zostanie nowy driver.
driver — odinstalowywanie
Uruchom polecenie odinstalowania, jeśli chcesz odinstalować driver.
Aby odinstalować driver:
-
Zatrzymaj wszystkie zadania skonfigurowane do korzystania z tego łącznika.
-
Na urządzenie bramy Ruch danych zmień katalog roboczy na:
opt/qlik/gateway/movement/drivers/bin
-
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.
Instalowanie sterownika ODBC
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.
-
Zatrzymaj usługę Brama danych ruchu danych:
sudo systemctl stop repagent
-
Opcjonalnie potwierdź, że usługa została zatrzymana:
sudo systemctl status repagent
-
Wyodrębnienie:
SimbaODBCDriverforGoogleBigQuery_<wersja>.tar.gz
na:
/opt/SimbaODBCDriverforGoogleBigQuery_<wersja>-Linux
-
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
-
Edytuj plik simba.googlebigqueryodbc.ini w następujący sposób:
-
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
- Zmień
DriverManagerEncoding
naUTF-16
.
-
-
Dodaj następującą ścieżkę do pliku site_arep_login.sh znajdującego się w katalogu Brama danych ruchu danych bin:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/SimbaODBCDriverforGoogleBigQuery_<wersja>-Linux/SimbaODBCDriverforGoogleBigQuery64_<wersja>/lib
-
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
-
Zainstaluj Google-Cloud-SDK- <wersja>-linux-x86_64.tar.gz.
-
Uruchom usługę Brama danych ruchu danych:
sudo systemctl start repagent
-
Opcjonalnie potwierdź, że usługa została uruchomiona:
sudo systemctl status repagent
Status powinien być następujący:
Active: active (running) since <timestamp> ago
Status powinien być następujący:
Active: inactive (dead) since <timestamp> ago
Instalowanie sterownika JDBC i jego zależności
-
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
-
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.
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.