如何将两个javapairdd组合成一个定制的javapairdd?

js5cn81o  于 2021-05-27  发布在  Hadoop
关注(0)|答案(0)|浏览(165)

我根据从不同api端点接收的数据创建了以下javapairdds。

listHeaderRDD<Integer, TeachersList> -> {list_id, list_details} 
e.g {1,{list_id:1,name:"abc",quantity:"2"}},  
    {2,{list_id:2,name:"xyz",quantity:"5"}}...

    ItemsGroupListRDD<Integer, Iterable<Tuple2<Integer, TeachersListItem>>> -> 
{list_id, {{item_id1,item_details1},{item_id2,item_details2}..}}

    e.g {1, {{11,{item_id:11,item_name:"abc"}},{12,{item_id:12,item_name:"acv"}}}..}
        {2, {{14,{item_id:14,item_name:"bnh"}},{18,{item_id:18,item_name:"hjk"}}}..}

期望输出:

teachersListRDD<TeachersList, Iterable<TeachersListItem>> -> {list_details, all_item_details}

e.g {{{list_id:1,name:"abc",quantity:"2"},{{item_id:11,item_name:"abc"},{item_id:12,item_name:"acv"}}},

{{list_id:2,name:"xyz",quantity:"5"},{{item_id:14,item_name:"bnh"},{item_id:18,item_name:"hjk"}}}
}

基本上,我希望第一个rdd的值是所需rdd中的键,第二个rdd中与该列表id相对应的一组项目详细信息是所需rdd的值,即teacherslistrdd我尝试了不同的方法,但无法获得所需的输出。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题