Каково происхождение этого поведения в функции count () Кафки-Спарка? - PullRequest
0 голосов
/ 22 апреля 2020

во время некоторой академической c работы над инфраструктурой Spark-Kafka, я столкнулся с поведением, которое я не мог понять:

Я поднял StreamingDataFrame, который получает данные из kafka topi c и выполняет агрегацию данных на основе уникального идентификатора. Когда я вычисляю эксцесс, асимметрию и имею в виду, что все в порядке: данные ожидаются как в консольном приемнике, так и при записи их на выход Kafka topi c.

Проблема начинается, когда я пытаюсь count() на агрегированных данных: консольный приемник все еще в порядке, но приемник kafka выводит неправильные числа на топи c, то есть выдает целые кратные правильного значения .

Я проследил проблему до папок контрольных точек: если я удаляю их до перезапуска процесса сбора данных (данные являются тестовыми данными, поэтому они повторяются через некоторое время), счетчик работает нормально.

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

Спасибо за внимание

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...