Раздел 26 · Data Engineering

profiles.yml: подключение к хранилищу

junior~15 мин

без входаВойди, чтобы отмечать прогресс, вести заметки и решать задачи в редакторе. войти

В прошлом уроке dbt debug нашёл профиль в домашней папке и сказал All checks passed!. Но кто этот профиль написал и что в нём? Сегодня ты пишешь его сам. Отто попросил сразу две вещи: чтобы ты мог спокойно экспериментировать, не трогая таблицы, на которые смотрит дашборд, и чтобы ночной запуск собирал эти самые таблицы для дашборда.

Ключи от двух квартир

У тебя на связке ключи от двух квартир: своей и рабочей мастерской. Адреса разные, замки разные, но связка одна, и утром ты просто берёшь нужный ключ. Если на ключе от мастерской перепутать номер квартиры, дверь не откроется, сколько ни крути.

Профиль dbt это связка. Ключи на ней это таргеты: dev для разработки и prod для боевых таблиц.

Где лежит профиль

Профиль живёт в файле profiles.yml. dbt ищет его сначала в папке проекта, потом в ~/.dbt/ в домашней папке. Почему не всегда в проекте? Потому что в профиле пароли, а проект лежит в Git. Обычно profiles.yml держат в домашней папке, а если кладут в проект, то пароль берут из переменной окружения и не пишут в файл открытым текстом.

Проект находит свой профиль по имени. В dbt_project.yml «Гонца» есть строка profile: gonets, значит, в profiles.yml должен быть профиль с ключом gonets.

урок из курса

Урок из курса «Data Engineering». Курс покупается один раз и остаётся навсегда: 500 ₽.

Оплата пока не подключена: премиум и курсы открываются промокодом.