Как вы сохраняете необязательное поле через весь конвейер Spark? - PullRequest
0 голосов
/ 06 февраля 2019

В исходных данных имеется необязательное поле, которое часто отсутствует.Конвейер Spark выполняет множество различных преобразований, включая набор dataframe.select операторов, и часто выполняет преобразование между Dataframe и JSON rdds и обратно.

Моя проблема заключается в следующем: при преобразовании из фрейма данных в формат JSON rdd метод toJSON автоматически удаляет поля только с нулевыми значениями.Затем, когда я делаю оператор dataframe.select после преобразования обратно в фрейм данных, поле больше не существует, и выборочная проверка завершается ошибкой.

Мое временное решение - создать поле в самом начале, если оно отсутствует, и присвоить ему значение «ЗАМЕНИТЬ МЕНЯ», а затем изменить их все на ноль в конце конвейера перед записью вбазы данных.

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