有一个包含车辆数据的RDD。我能够获取该RDD的键值对,并保持LIC_state作为每个记录的键。
如何将带键的RDD划分为2个分区,将具有密钥SA的记录保存在一个分区中,其余的保存在另一个分区中
答案 0 :(得分:0)
您可以编写并应用自定义分区程序,该分区程序将根据密钥分割数据。
首先定义分区逻辑
"mappings": {
"properties": {
"subscriptionid": {
"type": "keyword"
},
"resources":{
"type": "nested",
}
}
,其中def partitionFunc(key):
if key == "SA":
return 0
else
return 1
是“ LIC_state”。然后将其应用于您的key
:
RDD
其中partitionedRDD = keyedRDD.partitionBy(2, partitionFunc)
是键/值配对的RDD。