В настоящее время я изучаю, может ли Spark помочь улучшить масштабируемость и отказоустойчивость компонента в моей системе, но я не очень привык к понятию этой библиотеки.Корреляции искры и событий
Простой случай использования я должен обратиться:
- я получаю события (с помощью различных конечных точек, как системного журнала/ОВЛП/базы данных ..)
- Если событие «семантически эквивалентно» Ань (от 1 часа до 24 часов), то новое событие должно быть связано со старым событием, и данные о старом событии должны быть обновлены (некоторые степени, причины и т. д.)
- События затем отправляется в кластер ElasticSearch
Задержка этой системы должна быть низкой: если я получаю событие, оно должно быть в базе данных менее чем за X секунд. Более того, правила, оценивающие «семантику» события, могут быть обновлены без остановки потока событий.
В настоящее время я использую простую стратегию: события хранятся только в памяти (через карусель), но только один узел может коррелировать события между ними. Это не является масштабируемым и отказоустойчивым.
Похоже, присоединение потока может помочь с такого рода вещи, но я озерные бетоны примеры ...
Может Спарк обрабатывать этот случай использования, в то же время масштабируемой & отказоустойчивой? Я ищу некоторые указатели на корреляцию потоков, будучи стойкими к ошибкам с помощью Spark (пример doc?)
Спасибо!
Спасибо, я посмотрю, что –