从 Spark JavaPairDStream / JavaDStream 中删除重复项
Remove duplicates from a Spark JavaPairDStream / JavaDStream
我正在构建一个通过 SocketTextStream 接收数据的 Spark 流应用程序。问题是,发送的数据有一些重复。我想在 Spark 端删除它们(在发送端没有预过滤)。我可以通过 DStream 的 foreach 使用 JavaPairRDD 的独特功能吗(我找不到如何做到这一点的方法)???我需要 "filtered" Java(Pair)DStream 用于以后的操作...
谢谢!
.transform()方法可以对RDD的每个时间片进行任意操作。假设您的数据只是字符串:
someDStream.transform(new Function<JavaRDD<String>, JavaRDD<String>>() {
@Override
public JavaRDD<String> call(JavaRDD<String> rows) throws Exception {
return rows.distinct();
}
});
我正在构建一个通过 SocketTextStream 接收数据的 Spark 流应用程序。问题是,发送的数据有一些重复。我想在 Spark 端删除它们(在发送端没有预过滤)。我可以通过 DStream 的 foreach 使用 JavaPairRDD 的独特功能吗(我找不到如何做到这一点的方法)???我需要 "filtered" Java(Pair)DStream 用于以后的操作...
谢谢!
.transform()方法可以对RDD的每个时间片进行任意操作。假设您的数据只是字符串:
someDStream.transform(new Function<JavaRDD<String>, JavaRDD<String>>() {
@Override
public JavaRDD<String> call(JavaRDD<String> rows) throws Exception {
return rows.distinct();
}
});