Как сравнить полученную запись с предыдущей записью того же ключа в искровой структурированной потоковой передаче. Можно ли это сделать с помощью groupByKey и mapGroupWithState?
groupByKey(user)
mapGroupsWithState(GroupStateTimeout.NoTimeout)(updateAcrossEvents)
// Пример кода из Полного руководства Spark
При выполнении вышеуказанных операций возникает еще один вопрос.
Я не думаю, что последовательность записей будет сохраняться при получении записи, она будет разделена и сохранена между рабочими узлами, и когда мы применяем groupByKey, происходит случайное перемешивание, и все записи с одним и тем же ключом будут находиться в одном рабочем узле, но не поддерживать последовательность.