Я получаю данные JSON от Kafka как RDD.
{id:"A",amount:"100"}
{id:"B",amount:"NULL"}
Затем, используя встроенные функции Spark для создания DataFrame spark.read.json (rdd), что даст мне
id|amount
a|100
b|NULL
schema:
id:String
amount:String
Затем я ввожу приведение суммы к Integer, затем значение NULL автоматически преобразуется в ноль.Итак, после приведения типов это выглядит так:
id|amount
a|100
b|null
. После еще нескольких преобразований я снова преобразовываю эти записи в JSON и записываю в другой Kafka.Поэтому, пока я конвертирую эти записи в JSON, нулевые значения игнорируются.
{id:"a",amount:100}
{id:"b"}
Перед тем, как нажать на Кафку, я снова типизирую данные в String Type.Итак, мне нужен вывод как
{id:"a",amount:"100"}
{id:"b",amount:"NULL"}