google-cloud-platform - GCP数据流: print PCollection data

标签 google-cloud-platform google-cloud-dataflow

我是 GCP Dataflow 的新手,只是想了解是否有任何方法可以打印 PCollection 的所有值。

Pipeline p = Pipeline.create(options);
PCollection<String> lines = p.apply("ReadLines", TextIO.read().from(options.getInputFile()));

在这里,我想打印并检查行中可用的所有值(PCollection)

同样,想在以下操作后访问单词中的所有值

PCollection<String> words = lines.apply(
            FlatMapElements.into(TypeDescriptors.strings())
                    .via((String line) -> Arrays.asList(line.split(" "))));

最佳答案

在你的主函数中

p.apply("ReadLines", TextIO.read().from(options.getInputFile()))
 .apply("Print",ParDo.of(new PrintElementFn()))

编写静态类

private static class PrintElementFn extends DoFn<String,Void>{
        @ProcessElement
        public void processElement(@Element String input){
            System.out.println(input);
        }
    }

关于google-cloud-platform - GCP数据流: print PCollection data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64048360/

相关文章:

python - Google Dataflow 上 Apache Beam 示例的权限错误

google-cloud-dataflow - 使用 Apache Beam 按键处理事件的总排序

java.lang.ClassCastException : com. google.gson.internal.LinkedTreeMap 无法转换为 java.util.LinkedHashMap

kubernetes - GKE 集群升级到 1.14.6 后,VPN 无法访问内部网络

即使数据库未使用,Firebase 数据库带宽使用率也会快速增长

docker - 更新dockerfile后如何在kubernetes中重新部署所有内容?

google-cloud-platform - 如何配置多个 gcloud 项目

google-cloud-platform - 安装 GCSFuse 时出现错误网关错误

java - 在数据流管道步骤中获取数据存储实体

google-cloud-dataflow - 在批处理管道中,如何为来自批处理源的数据分配时间戳,例如 Beam 管道中的 csv 文件