从JSON中提取少量字段,并在Pyspark Dataframe中作为映射返回rest



我正在pyspark数据框架中读取流数据,数据包含每个数据/请求中存在的几个字段。我想要精确这些字段,并为它创建一个数据框列,并希望将其余字段作为map存储在另一个数据框列中。我做不到

如果有人能帮忙?

的例子:

样本值:

{"event1":"Value","event2":"Value","event3":"Value","event4":"Value","event5":"Value","event6":"Value"}
{"event1":"Value","event2":"Value","event3":"Value","data1":"Value","data2":"Value","data3":"Value"}

现在假设event1,event2,event3存在于每一行,所以我想提取它并使其作为一个单独的数据框列和其他字段作为键值对的映射,这将是另一个数据框。

您需要为您的数据框架创建一个模式,并在spark中使用from_json将其转换为StructType。然后,您可以选择您的特定事件,并为其他事件创建另一个数据框架。

最新更新