通过Google Cloud Platform实现物联网的实时流处理

时间:2017-06-15 13:18:26

标签: google-cloud-platform iot google-cloud-pubsub gcp google-cloud-iot

我担心IOT的实时流处理是通过GCD pub / sub,Cloud Dataflow和通过BigQuery执行分析。我正在寻求如何实现这一点的帮助。 Here is the architecture for IOT real-time stream processing

1 个答案:

答案 0 :(得分:1)

我假设您的意思是要将某些数据从Google Cloud Platform外部传输到BigQuery。

除非您以某种方式转换数据,否则我认为数据流不是必需的。

请注意,BigQuery有自己的Streaming API,因此您不必使用Pub / Sub将数据导入BigQuery。

在任何情况下,这些都是您应该遵循的步骤。

方法1

  1. 发布服务帐户(并从Google控制台上的IAM下载.json文件)
  2. 编写应用程序以获取要在其中流式传输的数据
  3. 在该应用程序中,使用服务帐户直接流式传输到BQ数据集和表格
  4. 分析BigQuery控制台上的数据(https://bigquery.cloud.google.com
  5. 方法2

    1. 设置PubSub队列
    2. 编写一个应用程序,用于收集要在
    3. 中流式传输的信息
    4. 推送到PubSub
    5. 将DataFlow配置为从PubSub提取,然后根据需要转换数据并推送到BigQuery
    6. 如上所述分析BigQuery控制台上的数据。
    7. 原始数据

      如果您只想将非常原始数据(无处理)放入BQ,那么我建议使用第一种方法。

      半加工/处理数据

      如果你真的想以某种方式转换数据,那么我会使用第二种方法,因为它允许你先按下数据。

      尝试始终使用方法1

      但是,我通常总是建议使用第一种方法,即使你想以某种方式转换数据。

      这样,您的数据集中有一个data_dump表(原始数据),之后您仍然可以使用DataFlow转换数据并将其 返回 进入aggregated表。

      这为您提供了最大的灵活性,因为它允许您从BQ中的单个n表创建可能data_dump转换的数据集。