Java 在spark2中同时写入两个输出

Java 在spark2中同时写入两个输出,java,apache-spark,apache-spark-2.0,Java,Apache Spark,Apache Spark 2.0,我需要在spark2中同时写入两个输出。 我试过这样的方法: Dataset<Row> streamedData = spark.readStream().schema(getSchema()) .json("src/test/data") .filter(x->{ System.out.println("this is some fitler operation");

我需要在spark2中同时写入两个输出。 我试过这样的方法:

    Dataset<Row> streamedData = spark.readStream().schema(getSchema())
            .json("src/test/data")
            .filter(x->{
                System.out.println("this is some fitler operation");
                return true;
            });

    StreamingQuery streamingQueury = streamedData
            .writeStream()
            .format("memory")
            .queryName("streameddata")
            .start();

    StreamingQuery streamingQueury2 = streamedData
            .writeStream()
            .format("console")
            .start();

    streamingQueury.awaitTermination(1000);
    streamingQueury2.awaitTermination(1000);
    streamingQueury.stop();
    streamingQueury2.stop();

    spark.sql("SELECT * FROM streameddata").show();
Dataset streamedData=spark.readStream().schema(getSchema())
.json(“src/test/data”)
.过滤器(x->{
System.out.println(“这是一些fitler操作”);
返回true;
});
StreamingQuery streamingQueury=streamedData
.writeStream()
.格式(“内存”)
.queryName(“流数据”)
.start();
StreamingQuery streamingQueury2=streamedData
.writeStream()
.格式(“控制台”)
.start();
正在等待终止的streamingQueury(1000);
流线型Queury2.等待终止(1000);
streamingQueury.stop();
streamingQueury2.stop();
spark.sql(“从streameddata中选择*).show();
这将做我需要的,但它将执行整个链两倍,这可能会很耗时,我不需要做所有的转换两次,我只需要写两次

我有办法吗

谢谢