Data Engineering Digest
Ссылка
нажмите — покажем
нажмите — покажем
✨ Александра Попова — Airbyte: 2 года в продакшене
Ссылка на выступление: https://youtu.be/fgaBGc3VWWQ?si=jvH4kmqF8lyjc70-
или
Ссылка на выступление: https://youtu.be/fgaBGc3VWWQ?si=jvH4kmqF8lyjc70-
Сложность: 2/3 (Практико-ориентированный доклад, требует базового понимания ETL-процессов)
Кому будет интересно:
- Архитекторам и простым инженерам, которые понимают, как дотащить данные от источника в хранилище.
---
Александра поделилась опытом внедрения и эксплуатации Airbyte в СберЗдоровье с 2022 по 2024 год. Airbyte - один из мощных инструментов modern data stack, очень рекомендую к ознакомлению)
---
🔍 Ключевые моменты внедрения:
1️⃣ Проблемы до Airbyte (2021):
- Разнородные скрипты для забора данных
- Неэффективное управление ETL-процессами
- Отсутствие стандартизации
2️⃣ Выбор Airbyte:
- Большое комьюнити и готовые коннекторы
- Python CDK для кастомных разработок
- Поддержка инкрементальной синхронизации и CDC (на базе Debezium)
3️⃣ Архитектурные особенности:
- Микросервисная архитектура (ядро на Java, коннекторы на Python/Java)
- Развертывание в Kubernetes с разделением статических/динамических подов
---
⚙️ Функциональность Airbyte:
✔️ Методы синхронизации:
- Full refresh
- Incremental (с дедупликацией)
- CDC (PostgreSQL, MySQL, SQL Server, MongoDB)
✔️ Расписания:
- По временному интервалу
- Cron (добавлен в 2023)
- Ручной запуск
---
🛠 Практический опыт:
Проблемы и решения:
1. Отсутствие коннектора к Greenplum → Разработан кастомный коннектор на основе PostgreSQL
2. Потеря точности времени → Переход на CDC для инкрементальных синхронизаций
3. Ограничения UI → Использование API и YAML-конфигов для управления
4. Проблемы с расписанием → Решены в новых версиях airbyte через cron
5. Мониторинг → Настройка через sql-exporter
Производительность:
- Обработка до 100 ГБ данных
- Разделение нагрузки в Kubernetes
- Оптимизация через cleanup-политики
---
📊 Текущая архитектура (2024):
- Источники: БД (через CDC) и API
- Назначения: Greenplum, ClickHouse (с предварительным созданием ReplicatedMergeTree-таблиц)
- Оркестрация: Dagster для управления пайплайнами
---
💡 Преимущества Airbyte:
✅ Упрощение ETL-процессов
✅ Готовая поддержка 300+ коннекторов
✅ Гибкость через Python CDK
✅ Удобство мониторинга
⚠️ Ограничения:
- Нет встроенного механизма бэкфила
- Требует доработок для специфичных случаев
- Cloud-функции (ролевая модель) недоступны в open-source
---
🤔 Ответы на вопросы:
Q: Почему Airbyte вместо Airflow?
A: Готовые коннекторы и унификация процессов
Q: Как решается проблема бэкфила?
A: Периодической полной перезаписью данных
Q: Проблемы с CDC?
A: Нет проблем со скоростью репликации
Q: Почему не PXF для Greenplum?
A: Ограничения ИБ и сложность поддержки
---
📌 Выводы:
Airbyte отлично подходит для:
- Забора данных из БД и API
- Стандартизации ETL-процессов
- Быстрого старта с минимальной разработкой
Не подходит для:
- Стриминговых сценариев
- Сложных бэкфил-процессов
28 · 2.2K ·