Итак, я начал изучать искру и кассандру месяц назад. У меня была эта проблема, когда я должен был предварительно агрегировать свои данные с датчика, используя искру, а затем передать их в таблицу cassandra.
Вот мой поток приложений
Sensor Data -> Kafka -> Spark Structured Streaming -> Sink to Cassandra
Дело в том, что мне нужно агрегировать данные по секундам, минутам, часам, дням, месяцам до года. Это приводит меня к созданию более 90 таблиц агрегации в Кассандре.
По мере моего продвижения я обнаружил, что мне нужно сливать каждый агрегат в каждую таблицу cassandra, используя один запрос writestream на агрегат, и это приводит меня к созданию громоздких искровых заданий, в которых было более 90 запросов writeestream. Это нормально? или хотя бы «хорошо» для искры?
Любая помощь приветствуется, спасибо !!
Редактировать. Пример:
У меня есть этот датчик, который обнаруживает сетевую атаку в сети. У меня есть такая агрегация:
- Количество событий для каждого датчика в секунду / минуту / час / день / месяц / год
Пример в секунду совокупности
Sensor year month day hour minute second hit
S1 2018 8 12 3 22 45 98182
S1 2018 8 12 3 22 46 992814
...
Пример за минуту агрегат
Sensor year month day hour minute hit
S1 2018 8 12 3 22 212458182
S1 2018 8 12 3 23 5523192814
И это относится к остальной части метрики (всего 9 метрик), где каждая метрика имеет + - 12 сводных таблиц
...