gpt4 book ai didi

java - Apache Beam 流式处理 json 数据

转载 作者:行者123 更新时间:2023-11-30 06:04:10 24 4
gpt4 key购买 nike

我正在分析 Apache Beam 数据流处理。我曾从事 Apache Kafka 流处理(生产者、消费者等)。我现在想将它与 Beam 进行比较。

我想以编程方式 (Java) 使用 Apache Beam 流式传输简单的 json 数据。

{"UserID":"1","Address":"XXX","ClassNo":"989","UserName":"Stella","ClassType":"YYY"}

有人可以指导我或用示例链接指导我吗?

最佳答案

这有多个方面:

  • 首先您需要确定数据的来源:
    • 您需要在 Beam 管道中使用某种 IO,请参阅 here ;
    • 有一堆内置 IO,请参阅列表 here ;
    • 通过使用上述链接中的 IO,您可能会获得包含这些 JSON 对象的字符串流;
    • 一些 IO 可以原生解析 Avro 和其他格式(PubsubIO),这取决于具体的 IO 实现;
  • 那么您可能需要转换数据:

    • 您需要创建自己的 PTransform 来处理从 JSON 字符串到 Java 类的转换:
      • 请参阅有关 PTransforms 的部分 here ;
    • 你可以看到这种转换的例子here :
      • 此 JsonToRow PTransform 接受带有 JSON 对象的字符串并将其转换为 Beam Row使用 Jackson ObjectMapper;
      • 您可以自己尝试使用 Row 对象,也可以实现类似的转换以将 JSON 字符串转换为您的自定义 Java 类型而不是 Row;
  • 你也可以看看examples folder在光束源中;

关于java - Apache Beam 流式处理 json 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50334835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com