Skip to content

Latest commit

 

History

History

10 Объединение потоков данных. Витрина аналитики.

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Объединение потоков данных. Разработка витрины для аналитики.

Задачи Результаты
Объединить из разных источников информацию о финансовой активность пользователей

Подготовить информацию для аналитиков в дашборде

Реализация

Выбрана следующа схема выгрузки данных из хранилища S3 и загрузки в Vertica с помощью DAG AirFlow.

Схема_решения_проекта

Использую пакеты boto3, vertica_python.

Первый DAG s3_to_vertica_dag.py выгружает файлы из S3, фильтрует ранее загруженные, записывает данные в слой STG в Vertica и запускает второй DAG с помощью TriggerDagRunOperator, передавая ему дату {{ ds }} из AirFlow.

DAG1

Второй DAG vertica_stg_to_cdm_dag.py настроен на запуск в 00:00 на обработку данных за каждый прошедший день за требуемый диапазон дат:

DAG1_schedule

dag = DAG('s3_to_vertica_dag',
    default_args=args,
    schedule_interval='@daily',  
    start_date=pendulum.datetime(2022, 10, 1),  
    end_date=pendulum.datetime(2022, 11, 1),  
    catchup=True,  # Обработать предыдущие периоды

Он запускается по триггеру из первого и переносит данные из STG в DDS и CDM.

В слое DDS применена архитектура Data Vault DDS

В /src/sql - SQL-запросы формирования таблиц, проекций таблиц, а также скрипт подготовки данных для итоговой витрины.

Схема итоговой витрины данных STV2023060652__DWH.global_metrics

Дашборд для аналитиков в Metabase с необходимыми метриками и фильтрами по валюте и дате. Дашборд