【发布时间】:2016-11-15 15:19:50
【问题描述】:
我正在使用 huge RDD,我想按照规则对其进行过滤。我有一个 RDD 有两个元素,我不介意因素的顺序,所以我可以过滤它以 删除 那些 重复 对。
我的输入数据是这样的:
{{A,B},{A,C},{B,A},{B,C},{C,A},{C,B}}
而输出过滤后的RDD应该是这个:
{{A,B},{A,C},{B,C}}
提前谢谢你。
【问题讨论】:
标签: scala apache-spark rdd
我正在使用 huge RDD,我想按照规则对其进行过滤。我有一个 RDD 有两个元素,我不介意因素的顺序,所以我可以过滤它以 删除 那些 重复 对。
我的输入数据是这样的:
{{A,B},{A,C},{B,A},{B,C},{C,A},{C,B}}
而输出过滤后的RDD应该是这个:
{{A,B},{A,C},{B,C}}
提前谢谢你。
【问题讨论】:
标签: scala apache-spark rdd
我会将 .map 步骤应用于对元组中的元素进行排序的 RDD。使得 [(A,C), (C, A)] 变成 [(A,C), (A, C)]
之后,您可以执行 .distinct 来获取所有唯一值。
【讨论】:
val newRdd = oldRdd.map(myValue => { myValue /* apply custom sort logic here */ }).distinct 只是地图和不同的运算符...不需要笛卡尔任何东西。