Каждый этап ETL — отдельный сервис, общаются через очередь (Kafka, RabbitMQ, NATS). Extract-сервис читает из источника и кладёт в очередь. Transform — читает, обрабатывает, кладёт в другую очередь. Load — записывает в целевое хранилище. Преимущества: масштабирование каждого этапа отдельно, отказоустойчивость, replay при ошибках. Минус — сложность операций. Для простых ETL лучше монолит с горутинами.
Как организовать ETL в микросервисах?
Middle
141 просмотровAFK Offer AI
Что такое MapReduce паттерн?