建议的方法是以另一个RDD

时间:2016-02-24 11:04:23

标签: apache-spark spark-streaming

当我们想要将结果返回到Spark的上下文时,可以使用take ordered来完成任务。我通过调用 parallelize 函数将结果推送到集群来扩展这个想法,如下所示:

JavaPairDStream<Integer, String> filteredPair = pairDStream.transformToPair(
    new Function<JavaPairRDD<Integer, String>, JavaPairRDD<Integer, String>>() {
        public JavaPairRDD<Integer, String> call(JavaPairRDD <Integer, String> pairRDD) throws Exception {
            List<Tuple2<Integer, String>> topList = pairRDD.takeOrdered(10);
            return ssc.sparkContext().parallelizePairs(topList);
        }
    });

让我感到困扰的是,我认为只应在 transformToPair 中预期RDD转换功能。通过将动作函数与转换混合,它是否会破坏转换的懒惰?

0 个答案:

没有答案