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

Databricks

Możesz użyć Databricks 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 Databricks jako miejsca docelowego obejmuje:

InformacjaObsługiwane tylko z klastrami SQL Warehouse

Konfiguracja obszaru tymczasowego w chmurze

Podczas używania łącznika z miejscem docelowym Databricks wymagane jest również zdefiniowanie obszaru przechowywania w chmurze, w którym dane i zmiany są przechowywane przed zastosowaniem i zapisaniem. Obsługiwane są następujące platformy pamięci masowej:

InformacjaJeśli rejestrujesz istniejące dane, nie musisz konfigurować obszaru tymczasowego w chmurze.

Konfiguracja połączenia z Databricks

Po podaniu ustawień obszaru tymczasowego wykonaj następujące czynności:

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

  2. Wybierz łącznik miejsca docelowego Databricks, 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 Konfiguracja sterowników poniżej.

Właściwości połączenia

  • Host: nazwa hosta obszaru roboczego Databricks.
  • Port: port, przez który można uzyskać dostęp do obszaru roboczego.
  • Ścieżka HTTP: ścieżka do używanego klastra.
  • Token: Twój osobisty token umożliwiający dostęp do obszaru roboczego.

Właściwości katalogu

Kliknij opcję Załaduj katalogi, aby załadować dostępne katalogi, a następnie wybierz Katalog. Jeśli w Twoim środowisku nie skonfigurowano żadnych katalogów, wybierz opcję hive_metastore, która jest katalogiem domyślnym.

Informacja

Musisz zezwolić bramie Brama danych ruchu danych na dostęp do zewnętrznych (niezarządzanych) tabel, definiując zewnętrzną lokalizację w Databricks. Wskazówki można znaleźć pod adresem:

https://docs.databricks.com/data-governance/unity-catalog/manage-external-locations-and-credentials.html#manage-permissions-for-an-external-location

Właściwości wewnętrzne

Właściwości wewnętrzne są przeznaczone dla specjalnych przypadków, w związku z czym nie są ukazywane w oknie dialogowym. Należy ich używać tylko na polecenie Qlik Pomocy technicznej.

Użyj przycisków Utwórz nowy i Anuluj znajdujących się po prawej stronie pól, aby dodać lub usunąć właściwości zgodnie z potrzebą.

Nazwa

Nazwa wyświetlana dla połączenia.

Wymagania wstępne

Uprawnienia ogólne:

  • Czas na serwerze Qlik Talend Data Integration musi być dokładny.
  • Uprawnienia do tabeli Databricks: Qlik Talend Data Integration wymaga uprawnień umożliwiających wykonywanie następujących operacji na tabelach Databricks: CREATE, DROP, TRUNCATE, DESCRIBE i ALTER.
  • U ustawieniach kontroli dostępu (IAM) systemu plików ADLS Gen2 należy przypisać rolę „Storage Blob Data Contributor” (Współautor danych Blob w pamięci masowej) usłudze Qlik Talend Data Integration (ID aplikacji AD). Zastosowanie tej roli może potrwać kilka minut.
  • Aby umożliwić połączenie Qlik Talend Data Integration z klastrem Databricks za pomocą ODBC, użytkownicy muszą mieć przyznane uprawnienie „Can Attach To” (Może dołączyć) na koncie Databricks.
  • W celu uzyskania dostępu do platformy Databricks jest wymagany ważny token zabezpieczeń. Token należy podać podczas konfigurowania pól dostępu do Databricks przy użyciu ODBC w ustawieniach punktu końcowego.
  • Podczas konfigurowania nowego klastra z usługą Microsoft Azure Data Lake Storage (ADLS) Gen2 do sekcji „Spark Config” należy dodać następujący wiersz.

    spark.hadoop.hive.server2.enable.doAs false

  • Aby mieć dostęp do katalogów pamięci masowej z klastra Databricks, użytkownicy muszą dodać konfigurację (w sekcji Spark Config) tego konta pamięci masowej oraz jego klucz.

    Przykład:  

    fs.azure.account.key.<storage-account-name>.dfs.core.windows.net <storage-account-access-key>

    Szczegółowe informacje zawiera pomoc online platformy Databricks na stronie: https://docs.databricks.com/clusters/configure.html#spark-configuration

  • W ramach najlepszych praktyk zalecane jest, aby nie używać lokalizacji katalogu głównego (/Usr/Hive/Warehouse/) do zapisywania baz danych Databricks, ponieważ to może wpływać na wydajność.

uprawnienie dostępu do pamięci masowej

Obliczenia Databricks SQL muszą być skonfigurowane tak, aby uzyskać dostęp do pamięci masowej w chmurze Instrukcje można znaleźć w pomocy online sprzedawcy.

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 databricks

    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 databricks.

    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 databricks

    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 databricks.

    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 databricks

    Sterownik driverzostanie odinstalowany.

Ręczne instalowanie sterownika

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

Po zainstalowaniu Brama danych ruchu danych pobierz plik SimbaSparkODBC-<wersja>-LinuxRPM-64bit.zip. Łącze do bezpośredniego pobrania obsługiwanej wersji można znaleźć w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/databricks.yaml. Po zakończeniu pobierania skopiuj plik 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. Zainstaluj sterownik na urządzeniu Data Movement gateway.

  5. Po zainstalowaniu upewnij się, że w pliku /etc/odbcinst.ini znajduje się następująca sekcja:

  6.  [Simba Spark ODBC Driver] Description=Amazon Hive ODBC Driver (64-bit) Driver=/opt/simba/spark/lib/64/libsparkodbc_sb64.so
  7. Uruchom usługę Data Movement gateway:

    sudo systemctl start repagent

  8. 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 plik databricks-jdbc-<wersja>.jar. Łącze do bezpośredniego pobrania obsługiwanej wersji można znaleźć w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/databricks.yaml. Po zakończeniu pobierania skopiuj plik JAR do następującego folderu na komputerze z Brama danych ruchu danych:

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

  2. Uruchom ponownie usługę Brama danych ruchu danych i sprawdź, czy została uruchomiona, używając poleceń opisanych w temacie Polecenia usługi Brama danych ruchu danych

Port

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

Typy danych

W poniższej tabeli przedstawiono typy danych Databricks, 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 Databricks

BOOLEAN

BOOLEAN

BYTES

STRING

DATE

DATE

TIME

STRING

DATETIME

TIMESTAMP

INT1

TINYINT

INT2

SMALLINT

INT4

INT

INT8

BIGINT

NUMERIC

DECIMAL (precyzja, skala)

REAL4

FLOAT

REAL8

DOUBLE

UINT1

SMALLINT

UINT2

INT

UINT4

BIGINT

UINT8

DECIMAL (20, 0)

STRING

VARCHAR (długość w bajtach)

WSTRING

VARCHAR (długość w bajtach)

BLOB

STRING

NCLOB

STRING

CLOB

STRING

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

  • MAP

  • ARRAY

  • STRUCT

Ograniczenia i uwagi

  • Podczas korzystania z Databricks na AWS z tabelami bez klucza głównego przeładowywanie tabel w umieszczaniu nie powiedzie się w aplikacji pamięci masowej. Aby rozwiązać ten problem, możesz

    • Zdefiniować klucz główny w tabelach.

    • Ustawić spark.databricks.delta.alterTable.rename.enabledOnAWS na True w Databricks.

    • Podczas tworzenia transformacji opartej na SQL wszystkie pola VARCHAR są zwracane jako STRING(255).

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