Обновить

Staging-слой на EAV: случай, когда антипаттерн оправдан

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели5.4K
Всего голосов 1: ↑1 и ↓0+1
Комментарии3

Комментарии 3

Сразу оговорюсь: EAV в реляционной базе — устоявшийся антипаттерн, который в большинстве задач стоит обходить стороной.

С чего вы взяли что EAV антипаттерн? Это лишь один из вариантов укладывания динамической типизации в РСУБД и не более. Просто он жрет больше ресурсов чем JSONB к примеру. Когда JSONB не было то особо и вариантов не было. Брали и использовали.

Из описания получается, что после сбоя нормализации выгрузка может остаться в промежуточном состоянии: часть полей уже обработана, остальные ещё нет, а общий инцидент не отправлен. Как в этот момент блокируется перекладка в DET — есть отдельный статус готовности всей выгрузки или это обеспечивается зависимостями в Airflow?

Интересно также, что видит JDBC-потребитель, если читает партицию во время нормализации. Транзакция на поле защищает отдельное преобразование, но для чтения нескольких полей нужен ещё понятный момент, с которого всю версию можно считать готовой.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации