Saltar al contenido principal

Comenzar

repositorio de GitHub de stellar-dbt-public

imágenes de docker de stellar/stellar-dbt-public

Uso Recomendado

Imagen de Docker

Generalmente, si no necesitas modificar ningún código de stellar-dbt-public, se recomienda que uses las imágenes de docker de stellar/stellar-dbt-public

Ejemplo para ejecutar localmente con docker:

docker run --platform linux/amd64 -ti stellar/stellar-dbt-public:latest <parameters>

Importar stellar-dbt-public como un paquete dbt

Alternativamente, si necesitas crear tus propios modelos sobre stellar-dbt-public, puedes importar stellar-dbt-public como un paquete dbt en un proyecto dbt separado.

Instrucciones de ejemplo:

  • Crea un nuevo archivo packages.yml en tu proyecto dbt (no en el proyecto stellar-dbt-public) con el yml de abajo
packages:
- git: "https://github.com/stellar/stellar-dbt-public.git"
revision: v0.0.28
  • (Opcional) Actualiza tu profiles.yml para incluir configuraciones de perfil para stellar-dbt-public
new_project:
target: test
outputs:
test:
project: <project>
dataset: <dataset>
<other configurations>

stellar_dbt_public:
target: test
outputs:
test:
project: <project>
dataset: <dataset>
<other configurations>
  • (Opcional) Actualiza tu dbt_project.yml para incluir configuraciones del proyecto para stellar-dbt-public
name: 'stellar_dbt'
version: '1.0.0'
config-version: 2

profile: 'new_project'

model-paths: ["models"]
analysis-paths: ["analyses"]
test-paths: ["tests"]
seed-paths: ["seeds"]
macro-paths: ["macros"]
snapshot-paths: ["snapshots"]

target-path: "target"
clean-targets:
- "target"
- "dbt_packages"

models:
new_project:
staging:
+materialized: view
intermediate:
+materialized: ephemeral
marts:
+materialized: table

stellar_dbt_public:
staging:
+materialized: ephemeral
intermediate:
+materialized: ephemeral
marts:
+materialized: table
  • Los modelos del paquete/repo stellar-dbt-public ahora estarán disponibles en tu nuevo proyecto dbt

Creando y Ejecutando Localmente

Clonar el repo

git clone https://github.com/stellar/stellar-dbt-public

Instalar los paquetes de python requeridos

pip install --upgrade pip && pip install -r requirements.txt

Instalar los paquetes dbt requeridos

dbt deps

Ejecutando dbt

  • Hay muchos comandos útiles que vienen con dbt, que se pueden encontrar en la documentación de dbt
  • stellar-dbt-public está diseñado para usar el comando dbt build, que ejecutará el modelo y probará la salida de la tabla del modelo
  • (Opcional) ejecutar con la opción --full-refresh
dbt build --full-refresh
  • Las ejecuciones posteriores se pueden realizar en modo incremental (solo inserta los datos más nuevos en lugar de reconstruir toda la historia cada vez)
dbt build
  • También puedes especificar solo un modelo si no quieres ejecutar todos los modelos de stellar-dbt-public
dbt build --select <model name or tag>

Por favor, consulta el directorio stellar-dbt-public/modles/marts para ver una lista completa de los modelos disponibles que dbt puede ejecutar