Можем ли мы использовать KStream с Flink?

Я использую потоки flink в микросервисной архитектуре для данных ETL от сервисов до баз данных отчетов и поиска. Чтобы отслеживать изменения данных, я в настоящее время генерирую пользовательское событие для RMQ, а затем использую потоки для разделения, агрегирования и преобразования данных на основе потребностей в отчетах и ​​поиске.

Я перехожу на kafka в качестве брокера и debezium, чтобы получать данные из всех баз данных микросервисов. Я блуждаю, могу ли я использовать KStreams API или flink, или есть возможность объединить оба.

Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Apache Kafka - популярная платформа распределенной потоковой передачи данных, которую можно использовать для построения конвейеров данных в реальном...
1
0
129
1

Ответы 1

Поскольку Kafka Streams можно встроить в любое Java-приложение, теоретически ответ положительный.

Однако для целей ETL в этом нет необходимости, потому что Flink уже может выполнять фильтрацию, сопоставление, агрегирование операций между разными темами Kafka и даже разными кластерами (чего Kafka Streams делать не может).

Стандартные операции, такие как сопоставление или фильтрация, объединение и агрегирование, являются примерами потоковых процессоров, доступных в Кафка Потоки из коробки.

Zeeshan Bilal 24.01.2019 14:05

У меня вопрос: либо эхо-система Kafka является идеальной основой для такого ETL, либо у нас есть возможность использовать KStream с Flink, что может обеспечить дополнительные преимущества. И я могу использовать большую часть моей существующей реализации Flink.

Zeeshan Bilal 24.01.2019 14:09

Да, стандартные операции готовы, но то, как вы развертываете Kafka Streams, не является заданным, как Flink. Оркестратор кластера отсутствует. Все, что я говорю, это то, что Flink имеет те же операции и более многофункционален с поддержкой внешней системы, так зачем пытаться интегрировать их, если вы не пытаетесь использовать, например, KTable.

OneCricketeer 24.01.2019 16:54

Другие вопросы по теме