0

在我将这个问题作为我的论文项目时,我在整个数据工程中真的是新手,所以请耐心等待。

我目前正在为已经拥有 CloudSQL 服务的电池存储系统开发一个大数据平台,该服务每 15 秒收集一次数据(因此它已经在 GCP 环境中)。我的工作是复制它们并在每次数据进入时传输到 BIGQUERY(包括使用 Dataprep 准备数据),然后将其用于机器学习。

我已经挖掘了几种方法,其中一种使用 Dataflow,尝试过一次,但它是手动完成的。使用jdbc to bigquery作业。为了满足我的需求(定期运行作业),我被推荐使用 Cloud Composer。

另一方面,我得到了另一个使用 PubSub 的源,它触发 Dataflow 的作业。后一种方法似乎更有希望,但是,最好同时了解这两个世界。任何建议肯定会有所帮助...

4

2 回答 2

1

您可以使用调度程序设置Airflow管道(使用 Cloud Composer),这比数据流简单直接得多。Airflow GUI 具有丰富的功能来监控状态和调度。内置Python 操作符,通过 Airflow 实例连接到 AI 平台、BigQuery、CloudSql 和许多其他服务。

另一种方法是使用具有 Pub/Sub 和 Cloud 功能的 Cloud scheduler。您可以查看类似用例的答案。

如何自动启动 AI 平台作业?

于 2020-11-20T00:17:57.310 回答
0

为了提高效率,我建议您避免使用 Cloud Composer 和 Dataflow。您可以使用联合查询直接从 BigQuery 请求 Cloud SQL(如果您使用 MySQL 或 PostgreSQL 引擎)。

所以,执行你的

  • 请求到您的 Cloud SQL 数据库
  • 使用 SQL 语言执行数据清理/转换
  • 将数据汇入 BigQuery。

所有这些都在一个请求中

INSERT INTO <BQ TABLE>
SELECT <Your transform/projection>
FROM EXTERNAL_QUERY(connection_id, <SELECT your more recent data>);

需要安排吗?在 bigQuery 上使用计划查询

于 2020-11-20T10:08:29.347 回答