我有一个系统,它从多个具有不同模式的mysql数据库中提取数据,执行许多查询(使用连接),并将输出加载到另一个mysql数据库。这些查询曾经只是一个快速解决方案,但它们已经增长到超过10000行,从而阻塞了源数据库。我正在通过分析sql查询来设计一个高效的etl管道,但是是否有任何临时的修复方法,比如可以分析查询并减少达到所需模式的步骤数的工具?任何帮助都是救命的:)
cnh2zyt31#
与其在许多mysql数据库上执行查询(针对写入进行了优化),不如将所有查询移动到redshift数据库(针对读取进行了优化)。但要做到这一点,你需要数据。查看一个etl服务,它将所有数据克隆到你的redshift。我们使用缝合数据,但空间中有许多玩家。您可以设置多个集成,这样每个mysql db都将数据注入到同一个redshift db中(我建议将每个集成设置在一个唯一命名的模式下)。加载完所有数据后,可以在aws数据管道中运行各种查询以创建派生表。每个查询可以是每个自己的作业,这样您就可以在每个查询的基础上进行监视和修改。
1条答案
按热度按时间cnh2zyt31#
与其在许多mysql数据库上执行查询(针对写入进行了优化),不如将所有查询移动到redshift数据库(针对读取进行了优化)。
但要做到这一点,你需要数据。查看一个etl服务,它将所有数据克隆到你的redshift。我们使用缝合数据,但空间中有许多玩家。您可以设置多个集成,这样每个mysql db都将数据注入到同一个redshift db中(我建议将每个集成设置在一个唯一命名的模式下)。
加载完所有数据后,可以在aws数据管道中运行各种查询以创建派生表。每个查询可以是每个自己的作业,这样您就可以在每个查询的基础上进行监视和修改。