Проект курса Data Enginner в Яндекс.Практикум, выполняемый в формате однодневного хакатона.
Во всех системах используются креды: de_user / de_pass , кроме metabase (там при первом старте)
Запуск инфрастуктуры
docker-compose up -dДля разработки dbt должен быть установлен локально. Контейнер dbtв настоящий момент используется только для генерации документации.
Рекомендуется использовать python3.9 или сделать venv.
Установить dbt и активировать.
cd dbt
python3.9 -m venv venv
source venv/bin/activate
pip install dbt-postgres
dbtНастроить профиль соединения DBT в файле ~/.dbt/profiles.yml.
prj:
outputs:
dev:
type: postgres
threads: 2
host: localhost
port: 5432
user: de_user
pass: de_pass
dbname: de
schema: stg
target: devПроверить соединение
dbt parseПостроение и обновление хранилища
dbt runОбновление отдельной модели
dbt run --select full_model__with_sufixОбновление всего хранилищая кроме модели
dbt run --exclude full_model__with_sufixДля отладки удобно использовать
dbt compileПосле этого в target будут скопбилиированы применяемый SQL скрипты.
cd dbt
dbt docs generateЗапускается по адресу http://localhost:9090
Разрабатываем DAG в ./airflow/dags
Разрабатываем DWH в виде SQL (select выражений) в ./dbt/project
