当前位置: 首页 > 知识库问答 >
问题:

Cloud SQL中大容量加载数据的ETL方法

侯涵煦
2023-03-14

我需要将数据ETL到云SQL实例中。这些数据来自API调用。目前,我正在Kubernetes中用Cronjobs运行一个自定义Java ETL代码,它请求收集这些数据并将其加载到Cloud SQL上。这个问题与管理ETL代码和监视ETL作业有关。当合并更多ETL进程时,当前的解决方案可能无法很好地扩展。在这种情况下,我需要使用ETL工具。

我的Cloud SQL实例包含两种类型的表:公共事务性表和包含来自API的数据的表。第二种类型在“操作数据库透视图”中大多是只读的,并且很大一部分表每小时(成批)进行大容量更新,以丢弃旧数据并刷新值。

考虑到这个上下文,我注意到Cloud Dataflow是GCP提供的ETL工具。不过,这款工具似乎更适合需要做复杂转换、摄取多种格式数据的大数据应用。此外,在Dataflow中,数据将被并行处理,工作节点将根据需要升级。由于Dataflow是一个分布式系统,在分配资源进行简单的大容量装载时,ETL进程可能会有开销。除此之外,我注意到Dataflow没有针对云SQL的特定接收器。这可能意味着Dataflow不是云SQL数据库中简单大容量加载操作的正确工具。

1)在云中使用Talend这样的ETL工具来帮助监视ETL作业和维护。

2)使用云数据流,因为我们可能需要流的能力和与各种源和汇的集成。

第一种方法的问题是,当未来的请求者到达时,我最终可能会使用云数据流,这将对我的项目的基础设施成本不利,因为我将为两个工具付费。

我是不是搞错了什么?有人能开导我吗?

共有1个答案

羊舌迪
2023-03-14

您可以只使用云数据流进行加载操作。下面是关于如何使用DataFlow执行ETL操作的教程。它使用BigQuery,但您可以调整它以连接到您的云SQL或其他JDBC源。

更多的例子可以在谷歌官方云平台github页面上找到,用于用户生成内容的数据流分析。

您还可以查看这个GCP ETL架构示例,该示例自动执行从操作数据库中提取数据的任务。

 类似资料:
  • 问题内容: 我想知道是否有人对我即将从事的工作有任何经验。我有几个csv文件,它们的大小都在一个GB左右,我需要将它们加载到oracle数据库中。虽然加载后我的大部分工作都是只读的,但我仍需要不时加载更新。基本上,我只需要一个很好的工具即可一次将多行数据加载到数据库中。 到目前为止,这是我发现的内容: 我可以使用SQL Loader来完成很多工作 我可以使用批量插入命令 某种批量插入。 以某种方式

  • 我正在尝试在h2o中加载大于内存大小的数据。 H2o博客提到: 下面是连接到h2o 3.6.0.8的代码: 给 我试着把一个169 MB的csv加载到h2o中。 这抛出了一个错误, 这表示内存溢出错误。 问:如果H2opromise加载大于其内存容量的数据集(如上面的博客引述所说的交换到磁盘机制),这是加载数据的正确方法吗?

  • 我正在尝试将文件插入到现有表中。现有的表有3列,这些列是ID(在表中分配)、学生号和组号。 在我的中,我有下面的格式,但是每次插入它时,我都会得到一个错误

  • 问题内容: 我正在尝试加载大于h2o中的内存大小的数据。 H2o 博客提到: 这是连接到的代码: 给 我试图将169 MB的csv加载到h2o中。 这引发了错误, 这表示内存不足错误。 问题:如果H2o承诺加载大于其内存容量的数据集(如上面的博客引文所述,交换到磁盘机制),这是加载数据的正确方法吗? 问题答案: 由于性能太差,默认情况下前一会默认禁用“交换到磁盘”。流血边缘(不是最新稳定的)具有启

  • 本文向大家介绍MySQL查看数据库表容量大小的方法示例,包括了MySQL查看数据库表容量大小的方法示例的使用技巧和注意事项,需要的朋友参考一下 本文介绍MySQL查看数据库表容量大小的命令语句,提供完整查询语句及实例,方便大家学习使用。 1.查看所有数据库容量大小 2.查看所有数据库各表容量大小 3.查看指定数据库容量大小 例:查看mysql库容量大小   4.查看指定数据库各表容量大小 例:查看