Я работаю над созданием приложения с нижеследующими требованиями, и я только начинаю с flink.Использование Apache Flink для потоковой передачи данных
- глотают данные в Кафки с скажем, 50 разделов (Incoming скорость - 100000 сообщ/сек)
- Считывает данные из Кафки и процесса каждый данных (Do некоторые вычисления, сравнить со старыми данными и т.д.) в реальном масштабе времени
- Сохраните выход на Cassandra
Я искал платформу реального времени и нашел, что Flink отлично подходит как для реального времени, так и для партии.
- Считаете ли вы, что флинк лучше всего подходит для моего использования или я должен использовать Storm, Spark streaming или любые другие потоковые платформы?
- Нужно ли писать конвейер данных в потоке данных Google для выполнения моей последовательности шагов на флинке или есть ли другой способ выполнить последовательность шагов для потоковой передачи в реальном времени?
- Скажите, если мои вычисления рассчитаны на 20 миллисекунд, как я могу лучше спроектировать его с помощью flink и получить лучшую пропускную способность.
- Могу ли я использовать Redis или Cassandra для получения данных в пределах flink для каждого вычисления?
- Смогу ли я использовать кеш-память JVM внутри флинка?
- Также я могу агрегировать данные на основе ключа для некоторого временного окна (пример 5 секунд). Например, допустим, что в систему поступает 100 сообщений, и 10 сообщений имеют один и тот же ключ, я могу объединить все сообщения с одним и тем же ключом и обработать его.
- Есть ли учебники по лучшим практикам с использованием флинка?
Спасибо и оцените всю вашу помощь.
Спасибо за ответ. Я хотел бы уточнить еще одну вещь. Должен ли я использовать sdk для потока данных Google для создания конвейера и запускать его на flink или у него есть собственный sdk, в котором я могу создать конвейер. Я посмотрел на поток данных api, но не смог понять, имеет ли он все функциональные возможности, подобные потоку данных. Спасибо за вашу помощь. – Neoster
Бегун Apache Beam (ранее API DataFlow API) реализован поверх API DataStream от Flink. Таким образом, DataStream API (по крайней мере) является выразительным, как API Beam. –