Как доставлять данные в аналитику: ETL, ELT, CDC и что выбрать?
Три подхода отличаются местом преобразования и способом чтения источника. ETL — извлекли, преобразовали снаружи, загрузили готовое: подходит, когда целевое хранилище дорого считает или данные нужно чистить до загрузки. ELT — загрузили сырое, преобразуем внутри хранилища: доминирующий вариант сегодня, потому что колоночные системы считают быстро, а сырьё позволяет пересчитать витрины при изменении логики. CDC — читаем журнал изменений базы и стримим их: даёт минимальную задержку и не нагружает источник запросами, но требует эксплуатации коннектора, логической репликации и обработки схемных изменений. Практический выбор диктуют требования к свежести и к нагрузке на источник: сутки — регулярная выгрузка, минуты — инкрементальная по метке времени, секунды — CDC. Отдельно решается вопрос идемпотентности: любая загрузка обязана переживать повтор, поэтому таблицы-приёмники проектируют под перезапись партиции или под слияние по ключу.