2016-02-07 1 views
0

В настоящее время я изучаю, может ли Spark помочь улучшить масштабируемость и отказоустойчивость компонента в моей системе, но я не очень привык к понятию этой библиотеки.Корреляции искры и событий

Простой случай использования я должен обратиться:

  1. я получаю события (с помощью различных конечных точек, как системного журнала/ОВЛП/базы данных ..)
  2. Если событие «семантически эквивалентно» Ань (от 1 часа до 24 часов), то новое событие должно быть связано со старым событием, и данные о старом событии должны быть обновлены (некоторые степени, причины и т. д.)
  3. События затем отправляется в кластер ElasticSearch

Задержка этой системы должна быть низкой: если я получаю событие, оно должно быть в базе данных менее чем за X секунд. Более того, правила, оценивающие «семантику» события, могут быть обновлены без остановки потока событий.

В настоящее время я использую простую стратегию: события хранятся только в памяти (через карусель), но только один узел может коррелировать события между ними. Это не является масштабируемым и отказоустойчивым.

Похоже, присоединение потока может помочь с такого рода вещи, но я озерные бетоны примеры ...

Может Спарк обрабатывать этот случай использования, в то же время масштабируемой & отказоустойчивой? Я ищу некоторые указатели на корреляцию потоков, будучи стойкими к ошибкам с помощью Spark (пример doc?)

Спасибо!

ответ

1

Я предполагаю, что вы хотите использовать Spark Streaming.

Одной из возможностей сделать это в Spark может быть введение состояния с помощью функции updateStateByKey, что означает фактическое выполнение состояния. Вы найдете описание в официальном документе, и вот example.

Другой возможностью может быть использование встроенных оконных функций в Spark Streaming. Снова ознакомьтесь с официальным документом.

+0

Спасибо, я посмотрю, что –

0

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

Смежные вопросы