Ga naar hoofdinhoud Ga naar aanvullende inhoud

Databricks

U kunt Databricks als een doelgegevensplatform in een gegevenspijplijn. In een gegevenspijplijn kunt u verschillende bewerkingen uitvoeren voor het doelplatform, zoals gegevens tijdelijk opslaan, gegevens opslaan, gegevens transformeren, een datamart maken en gegevens registreren. gebruiken

Dit omvat:

InformatieWordt alleen ondersteund voor SQL Warehouse-clusters

Een cloudtussengebied instellen

Als u de Databricks Target-connector gebruikt, moet u ook een cloudtussengebied definiëren waar gegevens en wijzigingen worden klaargezet voordat ze worden toegepast en opgeslagen. De volgende opslagplatformen worden ondersteund:

InformatieAls u bestaande gegevens registreert, hoeft u geen cloudtussengebied in te stellen.

Een verbinding naar Databricks configureren

Selecteer de Databricks Target-connector en configureer de volgende instellingen.

Gegevensdoel

Gegevensgateway: 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 tijdelijk op te slaan of u gebruikt een andere gateway. Voor informatie over de mogelijke implementatiemogelijkheden voor Gateway voor gegevensverplaatsing raadpleegt u Veelvoorkomende toepassingen:.

InformatieVereist Gateway voor gegevensverplaatsing 2023.5.10 of hoger.

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 Setup stuurprogramma hieronder.

Verbindingseigenschappen

  • Host: de hostnaam van de Databricks-werkruimte.
  • Poort: de poort om toegang te krijgen tot de werkruimte.
  • HTTP-pad: het pad naar het cluster dat wordt gebruikt.
  • Token: uw persoonlijke token om toegang te krijgen tot de werkruimte.

Cataloguseigenschappen

Klik op Catalogi laden om de beschikbare catalogi te laden en vervolgens een catalogus te selecteren. Als uw omgeving met catalogi is geconfigureerd, selecteert u hive_metastore, dit is de standaardcatalogus.

Informatie

U moet Gateway voor gegevensverplaatsing toegang verlenen tot (onbeheerde) tabellen door een externe locatie in Databricks te definiëren. Voor richtlijnen, zie:

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

Interne eigenschappen

Interne eigenschappen zijn bedoeld voor speciale toepassingen en worden daarom niet in het dialoogvenster weergegeven. U moet ze alleen gebruiken als Qlik Support dit aan u heeft geadviseerd.

Gebruik de knop Nieuwe maken en Annuleren aan de rechterkant van de velden om eigenschappen toe te voegen of te verwijderen.

Naam

De weergavenaam voor de verbinding.

Vereisten

Algemene machtigingen

  • De tijd op de Qlik Cloud Data Integration-servermachine moet correct zijn.
  • Machtigingen voor Databricks-tabellen: voor Data Movement gateway zijn machtigingen vereist voor het uitvoeren van de volgende bewerkingen voor Databricks-tabellen: CREATE, DROP, TRUNCATE, DESCRIBE en ALTER.
  • In de instellingen voor toegangsbeheer (IAM) voor het ADLS Gen2-bestandssysteem, wijst u de rol “Storage Blob Data Contributor” toe aan Data Movement gateway (AD-app-id). Het kan enkele minuten duren voordat de rol van kracht is.
  • Gebruikers moeten beschikken over de machtiging 'Kan koppelen aan' in hun Databricks-account om Data Movement gateway te verbinden met een Databricks-cluster via ODBC.
  • Er is een geldige beveiligingstoken vereist voor toegang tot Databricks. De token moet worden opgegeven tijdens het configureren van de velden voor Databricks ODBC-toegang in de eindpuntinstellingen.
  • Bij het configureren van een nieuwe cluster met Microsoft Azure Data Lake Storage (ADLS) Gen2, moet de volgende regel worden toegevoegd aan de sectie 'Spark Config'.

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

  • Om toegang te krijgen tot de opslagmappen van het Databricks-cluster, moeten gebruikers een configuratie (in Spark Config) en de bijbehorende sleutel toevoegen voor dat opslagaccount.

    Voorbeeld:  

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

    Voor meer informatie raadpleegt u de Databricks online help op: https://docs.databricks.com/clusters/configure.html#spark-configuration

  • Gebruik de hoofdmaplocatie (/Usr/Hive/Warehouse/) niet voor de Databricks-database omdat dit van invloed kan zijn op de prestaties.

Toegangsmachtiging opslag

Databricks SQL compute moet worden geconfigureerd om toegang te krijgen tot cloudopslag. Zie de online Help van de leverancier voor instructies.

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 databricks

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

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

    driver wordt verwijderd.

Het stuurprogramma handmatig installeren

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

Nadat Gateway voor gegevensverplaatsing is geïnstalleerd, downloadt u het SimbaSparkODBC-<version>-LinuxRPM-64bit.zip bestand. U vindt een directe downloadlink naar de ondersteunde versie onder binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/databricks.yaml. Nadat de download is voltooid, kopieert u het bestand 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. Installeer het stuurprogramma op de Data Movement gateway-machine.

  5. Controleer wanneer geïnstalleerd of de volgende sectie in het bestand /etc/odbcinst.ini wordt weergegeven:

  6.  [Simba Spark ODBC Driver] Description=Amazon Hive ODBC Driver (64-bit) Driver=/opt/simba/spark/lib/64/libsparkodbc_sb64.so
  7. Start de Data Movement gateway-service:

    sudo systemctl start repagent

  8. 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 databricks-jdbc-<version>.jar bestand. U vindt een directe downloadlink naar de ondersteunde versie onder binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/databricks.yaml. Nadat de download is voltooid, kopieert u het JAR-bestand naar de volgende map op de machine met de Gateway voor gegevensverplaatsing.

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

  2. Herstart de Gateway voor gegevensverplaatsing-service en controleer of deze is gestart door de opdrachten uit te voeren die worden beschreven in Opdrachten Gateway voor gegevensverplaatsing-service

Poort

Firewallpoort 443 moet zijn geopend voor uitgaande communicatie.

Gegevenstypen

De volgende tabel toont de Databricks-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 Databricks-gegevenstypen

BOOLEAN

BOOLEAN

BYTES

STRING

DATE

DATE

TIME

STRING

DATETIME

TIMESTAMP

INT1

TINYINT

INT2

SMALLINT

INT4

INT

INT8

BIGINT

NUMERIC

DECIMAL (precisie, schaal)

REAL4

FLOAT

REAL8

DOUBLE

UINT1

SMALLINT

UINT2

INT

UINT4

BIGINT

UINT8

DECIMAL (20, 0)

STRING

VARCHAR (lengte in bytes)

WSTRING

VARCHAR (lengte in bytes)

BLOB

STRING

NCLOB

STRING

CLOB

STRING

De volgende gegevenstypen worden omgezet naar STRING(255):

  • MAP

  • ARRAY

  • STRUCT

Beperkingen en overwegingen

  • Als u Databricks op AWS met tabellen zonder primaire sleutel gebruikt, mislukt het herladen van de tabellen in de tussenopslag in de Opslag-app. Om dit op te lossen, kunt u

    • Een primaire sleutel definiëren in de tabellen.

    • spark.databricks.delta.alterTable.rename.enabledOnAWS instellen op Waar in Databricks.

    • Bij het maken van een op SQL-gebaseerde transformatie worden alle VARCHAR-velden geretourneerd als STRING(255).

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!