Installazione e utilizzo di dbt-watsonx-presto
Questa sezione illustra i passaggi per installare e utilizzare dbt-watsonx-presto.
Procedura
-
Eseguite il seguente comando sul vostro sistema per installare
dbt-watsonx-presto.pip install dbt-watsonx-presto -
Eseguire il seguente comando per verificare la versione di dbt.
dbt –version -
Eseguite il seguente comando per creare un progetto dbt.
dbt init <project_name>- Selezionare un numero Presto e inserirlo. Esempio: per
[1] watsonx_presto, inserire1. - Se esiste già un progetto con lo stesso nome, è necessario confermare se sovrascrivere
profiles.yml. Digitare Y per confermare o N per scartare.
- Selezionare un numero Presto e inserirlo. Esempio: per
-
Impostare il file
profiles.yml. Per ulteriori informazioni, vedere Configurazione(impostazione del profilo). -
Per verificare la connessione, eseguire:
cd <project_name> dbt debug -
Creare un file CSV nella cartella seeds per seminare i dati in watsonx.data. Ad esempio:
id, value 1,100 2,200 3,300 4,400È possibile che si verifichino errori durante l'esecuzione dei file seed, perché dbt non è in grado di gestire tutti i tipi di dati in base ai dati del connettore. Per risolvere questo problema, è possibile definire esplicitamente i tipi di dati che dbt deve utilizzare. Andare a <nome_progetto>/dbt_project.yml e aggiungere:
seeds: <project_name>: <seed_file_name>: +column_types: <col_1>: datatype <col_2>: datatypeAd esempio:
seeds: demo: sample: +column_types: value: VARCHAR(20)I nomi delle colonne specificati qui devono corrispondere alle colonne dei file CSV.
Non utilizzare spazi extra nei file CSV per la semina. Se si includono spazi extra, è necessario utilizzare lo stesso numero di spazi durante la query che nei modelli per evitare errori.
-
Eseguire i semi utilizzando il seguente comando per creare una tabella e inserire i dati.
cd <project_name> dbt run -
In
<project_name>/models, ci sono i modelli che eseguono le operazioni. Per impostazione predefinita, dbt imposta le operazioni comeview. È possibile creare le tabelle o le viste con uno dei seguenti metodi:-
Specificare all'interno dei modelli (applicabile solo per quel modello)
{{ config(materialized='table/view') }}Se questa dichiarazione viene commentata con (--), dbt continua a usare la configurazione. Per disabilitarlo, rimuoverlo completamente o commentarlo in stile Jinja (
{# … #}). -
Specificare in dbt_project.yml (applicabile a tutti i modelli)
models: <project_name>: <model_folders>: +materialized: table/viewAd esempio:
models: demo: example: +materialized: tableAll'interno dei modelli sono supportate solo le dichiarazioni select.
Il carattere punto e virgola (;) è limitato nei modelli.
-
-
Eseguire i modelli utilizzando il seguente comando per creare le tabelle o le viste.
cd <project_name> dbt runÈ inoltre possibile specificare i test desiderati:
models: - name: <model_name> description: "some description" columns: - name: <col_name> description: "some description" data_tests: - <test_name_1> - <test_name_2>Ad esempio:
models: - name: my_first_dbt_model description: "A starter dbt model" columns: - name: id description: "The primary key for this table" data_tests: - unique - not_nullI connettori devono supportare Create Table as Select (CTAS) affinché le esecuzioni dbt funzionino.
-
Per generare i documenti relativi alle azioni eseguite, eseguire:
cd <project_name> dbt docs generate dbt docs servePer impostazione predefinita, viene eseguito su localhost:8080. Per modificare la porta, eseguire:
dbt docs serve –-port <port_number>