【问题标题】:dataflow pipeline design for real time aggregation analysis用于实时聚合分析的数据流管道设计
【发布时间】:2018-04-14 14:18:52
【问题描述】:

我有一个案例如下:

1) 在数据流中使用 pubsub 作为输入并将流数据加载到 bigquery 2) 从 bigquery 中选择聚合结果并加载到 pubsub 作为输出 3) 监听 pubsub 进行显示的客户端

例如我有销售交易并希望实时查看区域(汇总)销售数据。我知道我可以使用 2 个管道将数据加载到 bigquery (1) 和其他数据流管道以获取聚合结果并推送到 pubsub。

有什么方法可以在单个管道中执行吗?因为我不想构建编排层(即在第一个管道完成后,调用 2 个管道)。并且初始化管道的成本很高。

谢谢。

【问题讨论】:

    标签: google-cloud-dataflow google-cloud-pubsub


    【解决方案1】:

    我认为这可以通过以 pubsub 作为输入、bigquery 和 pubsub 作为接收器的单个数据流管道来完成。

    基本上: 1. PubsubIO -> PCollection A。 2. A -> BigQueryIO 3. A -> Window.into(...) -> PCollection B. 4. B -> GroupBy(...) -> ParDo -> C 5. C -> PubsubIO

    https://beam.apache.org/get-started/mobile-gaming-example/

    【讨论】:

      【解决方案2】:

      如果您将原始事务加载/流式传输到 BigQuery,您还可以考虑使用 BigQuery 本身以经济高效的方式构建实时聚合,semi unbounded stream

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-15
        • 1970-01-01
        • 2020-08-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-30
        相关资源
        最近更新 更多