У меня есть входные данные в формате
RDD[
(Map1, RecordA),
(Map2, RecordX),
(Map1, RecordB),
(Map2, RecordY),
(Map1, RecordC),
(Map2, RecordZ)
]
Ожидаемый формат вывода (Список СДР):
List[
RDD[RecordA, RecordB, RecordC],
RDD[RecordX, RecordY, RecordZ]
]
Я хочу, чтобы внутренние СДР были сгруппированы по ключуэто Map1, Map2, и я хочу создать внешний список в виде коллекции внутренних СДР.
Я пытался использовать API ReduByKey и API aggregateByKey, но пока не увенчался успехом!
Реальный мирПример:
RDD[
(Map("a"->"xyz", "b"->"per"), CustomRecord("test1", 1, "abc")),
(Map("a"->"xyz", "b"->"per"), CustomRecord("test2", 1, "xyz")),
(Map("a"->"xyz", "b"->"lmm"), CustomRecord("test3", 1, "blah")),
(Map("a"->"xyz", "b"->"lmm"), CustomRecord("test4", 1, "blah"))
]
final case class CustomRecord(
string1: String,
int1: Int,
string2: String)
Благодарим Вас за помощь.