首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >寻找从生产数据库生成报表的更好的体系结构

寻找从生产数据库生成报表的更好的体系结构
EN

Stack Overflow用户
提问于 2018-10-13 11:45:12
回答 2查看 381关注 0票数 0

在我工作的公司,我要做的工作之一就是编写程序,使用存储在生产数据库中的数据生成业务报告(例如上个月访问我们网站的用户数量)。

我们使用AWS函数和复杂的MySQL查询来生成报告(*.csv文件)。

这种架构有一些缺点:

  1. MySQL查询通常很复杂。我的意思是,它们包含了大量的join和子查询,这使得代码难以理解和维护。
  2. 有些查询在数据库架构更改后可能无法工作。
  3. AWS lambda函数的最大超时时间为5分钟。当数据大小变得太大时,我们必须将1个lambda函数拆分为多个lambda函数。

如何使用其他Amazon服务来解决这些问题?

我尝试过AWS,但还没有找到一种简单的方法将复杂的MySQL查询转换为AWS中作业的python脚本。

Amazon只能处理存储在S3中的数据。它不能直接处理存储在Amazon中的数据。

EN

回答 2

Stack Overflow用户

发布于 2018-10-15 10:43:06

我们使用Matillion (第三方软件)作为ETL工具在我的公司,设计与AWS (或谷歌)云工作。但这在很大程度上依赖于AWS红移。如果您可以将您的数据移动到Redshift并从那里工作,Matillion对您来说是一个非常好的选择。在Matillion中,您可以设置完成所有工作的工作流,并将其可视化在一个图表中。缺点是马蒂尔利有代价。但由于你是指你的公司,我认为你将能够投资于更多的工具。我还将Matillion与Lambda、S3、Redshift、Glue等一起使用。因为您可以在Matillion中运行Python脚本,所以您可以随意组合这些脚本。

Ps。我不为马蒂尔利工作,也不会以任何方式从推荐马蒂利恩中获益。

票数 1
EN

Stack Overflow用户

发布于 2020-06-16 05:25:54

我知道你在一年前就提出过这个问题--一个更快的办法是:

  1. 确定您的MySQL表的刷新时间和策略,并使用Matillion中的信息设置数据管道将这些数据增量地带到雪花/GCP/Redshift中。
  2. 创建报告SQL的雪花/GCP/红移版本,然后在这些表上生成报告。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52792565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档