Verbinding maken met dbt Core
In dit artcle wordt uitgelegd wat dbt is, hoe u dbt Core installeert en hoe u verbinding maakt. De gehoste versie van dbt, dbt Cloud genoemd, is ook beschikbaar. Zie Verbinding maken met dbt Cloud voor meer informatie.
Wat is dbt?
dbt (data build tool) is een ontwikkelomgeving voor het transformeren van gegevens door select-instructies te schrijven. dbt zet deze select-instructies om in tabellen en weergaven. dbt compileert uw code in onbewerkte SQL en voert die code vervolgens uit in de opgegeven database in Azure Databricks. dbt biedt ondersteuning voor samenwerkingscoderingspatronen en aanbevolen procedures, waaronder versiebeheer, documentatie en modulariteit.
dbt extraheert of laadt geen gegevens. dbt is alleen gericht op de transformatiestap, met behulp van een 'transformatie na belasting'-architectuur. dbt gaat ervan uit dat u al een kopie van uw gegevens in uw database hebt.
met dbt Core kunt u dbt-code schrijven in de IDE van uw keuze op uw lokale ontwikkelcomputer en vervolgens dbt uitvoeren vanaf de opdrachtregel. dbt Core bevat de dbt-opdrachtregelinterface (CLI). De dbt CLI is gratis te gebruiken en open source.
dbt Core (en dbt Cloud) kunnen gehoste Git-opslagplaatsen gebruiken. Zie Een dbt-project maken en een bestaand project gebruiken op de dbt-website voor meer informatie.
Installatievereisten
Voordat u dbt Core installeert, moet u het volgende installeren op uw lokale ontwikkelcomputer:
U hebt ook een van de volgende stappen nodig om te verifiëren:
(Aanbevolen) dbt Core ingeschakeld als een OAuth-toepassing in uw account. Dit is standaard ingeschakeld.
Een persoonlijk toegangstoken
Notitie
Als best practice voor beveiliging wanneer u verifieert met geautomatiseerde hulpprogramma's, systemen, scripts en apps, raadt Databricks u aan OAuth-tokens te gebruiken.
Als u persoonlijke toegangstokenverificatie gebruikt, raadt Databricks aan om persoonlijke toegangstokens te gebruiken die behoren tot service-principals in plaats van werkruimtegebruikers. Zie Tokens voor een service-principal beheren om tokens voor service-principals te maken.
Stap 1: De dbt Databricks-adapter installeren
U wordt aangeraden een virtuele Python-omgeving te gebruiken, omdat hiermee pakketversies en codeafhankelijkheden worden geïsoleerd van die specifieke omgeving, ongeacht de pakketversies en codeafhankelijkheden in andere omgevingen. Dit helpt onverwachte niet-overeenkomende pakketversies en codeafhankelijkheidsconflicten te verminderen.
Databricks raadt versie 1.8.0 of hoger aan van het dbt-databricks-pakket.
.. belangrijk:: als uw lokale ontwikkelcomputer gebruikmaakt van een van de volgende besturingssystemen, moet u eerst aanvullende stappen uitvoeren: CentOS, MacOS, Ubuntu, Debian en Windows. Zie de sectie 'Heeft mijn besturingssysteem vereisten' van Pip gebruiken om dbt te installeren op de dbt Labs-website.
Stap 2: Een dbt-project maken en verbindingsinstellingen opgeven en testen
Maak een dbt-project (een verzameling gerelateerde mappen en bestanden die nodig zijn om dbt te gebruiken). Vervolgens configureert u uw verbindingsprofielen, die verbindingsinstellingen bevatten met een Azure Databricks-rekenproces, een SQL-warehouse of beide. Om de beveiliging te vergroten, worden dbt-projecten en -profielen standaard op afzonderlijke locaties opgeslagen.
Als de virtuele omgeving nog steeds is geactiveerd, voert u de dbt init-opdracht uit met de projectnaam. Met deze voorbeeldprocedure maakt u een project met de naam
my_dbt_demo
.dbt init my_dbt_demo
Wanneer u wordt gevraagd een
databricks
ofspark
database te kiezen, voert u het nummer in dat overeenkomt metdatabricks
.Wanneer u om een
host
waarde wordt gevraagd, gaat u als volgt te werk:- Voer voor een berekening de serverhostnaamwaarde in op het tabblad Geavanceerde opties, JDBC/ODBC voor uw Azure Databricks-rekenproces.
- Voer voor een SQL-warehouse de serverhostnaamwaarde in op het tabblad Verbindingsgegevens voor uw SQL-warehouse.
Wanneer u om een
http_path
waarde wordt gevraagd, gaat u als volgt te werk:- Voer voor een berekening de HTTP-padwaarde in op het tabblad Geavanceerde opties, JDBC/ODBC voor uw Azure Databricks-rekenproces.
- Voer voor een SQL-warehouse de waarde van het HTTP-pad in op het tabblad Verbindingsgegevens voor uw SQL-warehouse.
Als u een verificatietype wilt kiezen, voert u het nummer in dat overeenkomt met
use oauth
(aanbevolen) ofuse access token
.Als u voor uw verificatietype hebt gekozen
use access token
, voert u de waarde in van uw persoonlijke toegangstoken van Azure Databricks.Notitie
Als best practice voor beveiliging, wanneer u zich verifieert met geautomatiseerde hulpprogramma's, systemen, scripts en apps, raadt Databricks u aan om persoonlijke toegangstokens te gebruiken die behoren tot service-principals in plaats van werkruimtegebruikers. Zie Tokens voor een service-principal beheren om tokens voor service-principals te maken.
Wanneer u om de
desired Unity Catalog option
waarde wordt gevraagd, voert u het getal in dat overeenkomt metuse Unity Catalog
ofnot use Unity Catalog
.Als u ervoor kiest om Unity Catalog te gebruiken, voert u de gewenste waarde in wanneer
catalog
u hierom wordt gevraagd.Voer de gewenste waarden in voor
schema
enthreads
wanneer u hierom wordt gevraagd.dbt schrijft uw vermeldingen naar een
profiles.yml
bestand. De locatie van dit bestand wordt vermeld in de uitvoer van dedbt init
opdracht. U kunt deze locatie ook later weergeven door de opdracht uit tedbt debug --config-dir
voeren. U kunt dit bestand nu openen om de inhoud ervan te onderzoeken en te controleren.Als u voor uw verificatietype kiest
use oauth
, voegt u uw M2M-verificatieprofiel (machine-to-machine) of U2M-verificatieprofiel (user-to-machine) toe aanprofiles.yml
.Zie Azure Databricks-aanmelding configureren vanuit dbt Core met Microsoft Entra-id voor voorbeelden.
Databricks raadt niet aan geheimen rechtstreeks op
profiles.yml
te geven. Stel in plaats daarvan de client-id en het clientgeheim in als omgevingsvariabelen.Bevestig de verbindingsgegevens door de
dbt debug
opdracht uit te voeren in demy_dbt_demo
map.Als u voor uw verificatietype hebt gekozen
use oauth
, wordt u gevraagd u aan te melden bij uw id-provider.Belangrijk
Controleer voordat u begint of uw rekenproces of SQL Warehouse wordt uitgevoerd.
De uitvoer ziet er als volgt uit:
cd my_dbt_demo dbt debug
... Configuration: profiles.yml file [OK found and valid] dbt_project.yml file [OK found and valid] Required dependencies: - git [OK found] Connection: ... Connection test: OK connection ok
Volgende stappen
- Dbt Core-modellen lokaal maken, uitvoeren en testen. Zie de zelfstudie dbt Core.
- Dbt Core-projecten uitvoeren als Azure Databricks-taaktaken. Zie Dbt-transformaties gebruiken in een Azure Databricks-taak.