Apache Kafka
⚙️
Apache Kafka
— распределённый потоковый брокер сообщений. Она хранит события на диске и позволяет приложениям публиковать (producer) и потреблять (consumer) данные с миллисекундными задержками. Используется для логирования, метрик, real-time-аналитики и связи микросервисов.
❔
Почему
Data Engineer не обходится без
Kafka
?
•
Real-time
: задержка 1–10 мс → онлайн-аналитика и алерты.
•
Очень быстро
: миллионы сообщений в секунду.
•
Гибкое хранение
: задаёшь, сколько дней или ГБ держать.
•
Рост без боли
: добавил брокер — и кластер сам расширился.
👀
Где
Data Engineer
использует
Kafka
?
⏺
Ingestion: сырые логи и клики летят в Kafka, оттуда — в S3/HDFS.
⏺
CDC
:
Debezium
стримит изменения из PostgreSQL → Kafka → ClickHouse/Snowflake.
⏺
Stream-ETL: Flink/Spark обогащают поток и пишут обратно или в
озеро
.
⏺
Real-time BI: Druid/Pinot/ClickHouse читают топики напрямую.
⏺
Feature Store: онлайн-фичи для ML передаются через Kafka в Redis/Cassandra
📝
Ключевые сущности
• Topic — «папка» для событий.
• Partition — линейный лог внутри топика; порядок гарантирован только здесь.
• Offset — номер сообщения; консьюмер знает, где продолжить.
Продюсер
(Producer) — кто отправляет данные в Kafka.
Примеры: микросервис «Заказы», агент логов, IoT-датчик, Debezium.
Консьюмер
(Consumer) — кто читает данные из Kafka.
Примеры: Spark-job, сервис e-mail-уведомлений, ClickHouse-sink, ML-пайплайн.
Один топик можно читать многими независимыми группами консьюмеров.
👀
Зачем делят
топик
на
партиции
✔️
Данные лежат на разных брокерах → легко расширять кластер.
✔️
Несколько консьюмеров читают параллельно → выше скорость.
✔️
Параллельная запись/чтение → огромный throughput.
Kafka
— это центральная артерия большинства современных data-platform. Хотите near-real-time данные в DWH, фичи для онлайн-ML или просто «подложку» под микросервисы — скорее всего, в середине стека крутится Kafka
Более подробно про кафку я расписал
тут
❓
Частые вопросы по Kafka:
⏺
Что такое log retention и какой он дефолтный?
⏺
Как сообщения записываются в партиции в кафке?
⏺
Кто может быть продюсером и консьюмером в кафке?
⏺
Что такие топики, оффсеты?
Ставьте
🔥
если пост был интересным и полезным)
#Kafka
#DataEngineering
#StreamProcessing
#RealTime
#BigData
#CDC
#ETL
#ApacheKafka
#DevOps
#Microservices
Откликнуться в Telegram →
⚠️ Никогда не платите «за оформление» или «гарантию трудоустройства» — это признак мошенников. Работа ТРУ не несёт ответственности за содержание вакансии.