Архитектура

Весь путь пайплайна виден внутри PostgreSQL.

Описание, расписание, запуск, результат и история собраны в одной модели. Команда может понять, что произошло с данными, привычными SQL-инструментами. Эта архитектура развивалась и эксплуатировалась в реальных организациях более десяти лет.

10+ летразвития на реальных DWH-задачах
Database-nativeEngine и журнал процессов внутри PostgreSQL
FDW-poweredуниверсальный SQL-доступ к источникам

Цикл выполнения

Каждый запуск становится доступной для запросов записью.

До выполнения описание пайплайна превращается в конкретное задание. Журнал содержит и запланированное состояние, и историю результата.

01 · Описаниеcore.etlрасписание + SQL
02 · Планcore.plannerсоздать процесс
03 · Подготовкаcore.processSQL + время запуска
04 · Выполнениеcore.handlerполучить + запустить
05 · Наблюдениеhistoryсостояние + метрики

Компоненты Engine

Проверенные компоненты с ясной ответственностью.

core.etl

Описание пайплайна

Расписание, SQL-шаблон, параметры и политика выполнения.

core.planner

Планирование

Преобразует задания по расписанию в конкретные записи процессов.

core.process

Журнал выполнения

План, итоговый SQL, состояние, история и метрики выполнения.

core.handler

Выполнение

Асинхронно забирает и выполняет подготовленные SQL-задания.

core.reviver

Восстановление

Через заданную задержку повторяет подходящие неудачные задания.

Универсальный слой данных

Один SQL поверх практически любого источника.

PostgreSQL FDW скрывает протокол подключения и представляет внешние данные как таблицы. Экосистема охватывает реляционные базы, NoSQL, Big Data, файлы, облачные сервисы, геоданные и API, а открытый интерфейс позволяет создавать новые wrappers.

ЭКОСИСТЕМА

От Oracle до Parquet

PostgreSQL, Oracle, MySQL, SQL Server, MongoDB, Redis, Elasticsearch, BigQuery, Hadoop, Hive, CSV, Parquet, Excel и многие другие источники.

РАСШИРЯЕМОСТЬ

Новый источник — новый wrapper

FDW является стандартным extension API PostgreSQL. Если готового подключения нет, источник можно встроить в ту же табличную и SQL-модель.

Надёжность и эксплуатация

Engine создан не для демонстрации, а для ежедневной работы DWH.

PARALLEL

Параллельное выполнение

Несколько handlers используют ресурсы PostgreSQL и обрабатывают независимые пайплайны одновременно.

RECOVERY

Повторы и восстановление

Ошибки возвращаются в обработку, а reviver помогает завершать процессы после временных сбоев и задержек.

CONTROL

История и мониторинг

Полный SQL, статусы, время выполнения, счётчики и уведомления дают оператору ясную картину работы DWH.