Comments 2
Спасибо за статью.
У меня немного более верхнеуровневый вопрос, а как аналитики работают с хранилищем?
Я увидел, что у каждого своя песочница на три дня. А мне хочется вот прям сейчас посчитать данные на год назад, причем готовой продакшен витрины для этого нет, то как быть?
Или эта песочница только для каких-то регламентных моделей, которые будут крутиться на кроне, а запросы на SELECT можно делать к сырым данным за более долгий срок?
У меня немного более верхнеуровневый вопрос, а как аналитики работают с хранилищем?
Я увидел, что у каждого своя песочница на три дня. А мне хочется вот прям сейчас посчитать данные на год назад, причем готовой продакшен витрины для этого нет, то как быть?
Или эта песочница только для каких-то регламентных моделей, которые будут крутиться на кроне, а запросы на SELECT можно делать к сырым данным за более долгий срок?
Привет, спасибо за вопрос.
Всё верно подмечено.
3 дня это дефолтные настройки для ускорения разработки и экономии ресурсов. Каждое подключение конфигурируется «тегом». Сейчас их всего 3 для удобства: dev (для каждого члена команды), ci (он же тест), prod. У аналитиков по дефолту dev в настройках подключения под личной учеткой. Это реализовано в макросе:
Если есть цель построить витрины за бОльший период или оценить производительность – просто корректируется скомпилированный код вручную (убирается фильтр либо расширяется диапазон дат), запускается через dbeaver. Либо просто в локальной версии репо меняется значение переменной:
Всё верно подмечено.
3 дня это дефолтные настройки для ускорения разработки и экономии ресурсов. Каждое подключение конфигурируется «тегом». Сейчас их всего 3 для удобства: dev (для каждого члена команды), ci (он же тест), prod. У аналитиков по дефолту dev в настройках подключения под личной учеткой. Это реализовано в макросе:
{#- prepare expression to filter rows to last 'development_days_of_data' (e.g. last 3 days) -#}
{%- if target.name in ['dev', 'ci'] and last_n_days_of_data == true -%}
{%- set dev_rows_expression = ts_field ~ ' >= dateadd(day, ' ~ -var('development_days_of_data') ~ ', current_timestamp::date)' -%}
{%- else -%}
{%- set dev_rows_expression = '1 = 1' -%}
{%- endif -%}
Если есть цель построить витрины за бОльший период или оценить производительность – просто корректируется скомпилированный код вручную (убирается фильтр либо расширяется диапазон дат), запускается через dbeaver. Либо просто в локальной версии репо меняется значение переменной:
vars:
development_days_of_data: 3
Sign up to leave a comment.
Мультитул для управления Хранилищем Данных — кейс Wheely + dbt