我使用pyspark生成一个嵌套json,如下所示:
{
"batch_key": 1,
"client_key": 1,
"client_name": "ABC",
"Claims": [
{
"claim_key": "A",
"client_key": "B",
"client_name": "ATT"
},
{
"claim_key": "B",
"client_key": "B",
"client_name": "ATT"
}
]
}
但理想情况下,应将其分成相等的部分,如下所示:
{
"batch_key": 1,
"client_key": 1,
"client_name": "ABC",
"Claims": [
{
"claim_key": "A",
"client_key": "B",
"client_name": "ATT"
}
]
}
{
"batch_key": 1,
"client_key": 1,
"client_name": "ABC",
"Claims": [
{
"claim_key": "B",
"client_key": "B",
"client_name": "ATT"
}
]
}
实际的json负载将大得多,因此需要进行上述拆分,以便API能够正确地使用它。有没有一种方法可以使用sparksql/pyspark/python实现上述功能
对于每个批次记录,您可以提取索赔
map
以创建每个索赔的多个批次,然后对结果调用展平来flatten
结果例如,假设您有一个批次流/RDD
基于Python的版本和每个JSON记录中的属性/键的数量,您可以考虑在声明图中合并或创建新字典的不同选项-参见^ {A1}
相关问题 更多 >
编程相关推荐