2

我正在寻找一些关于在数据库表上执行繁重的处理/数据挖掘的最佳方法的一般建议,而不影响表上常规站点查询的性能。一些计算可能涉及连接多个表,并涉及复杂的排序和排序。所以“使用更好的索引”并不总是解决方案。

这个问题不是很具体。我正在寻找一种通用方法来解决多年来多次出现的问题。所以我没有要显示的特定表架构,要显示的特定查询。我考虑过首先使用 mysqldump 转储表,然后以不同的名称重新导入表,然后对该临时表执行繁重的运算。我的系统管理员讨厌这个想法,所以我正在寻找人们提出的任何其他解决方案来处理此类问题。

4

2 回答 2

2

如果您的“繁重的处理”都是只读的,并且您没有做任何需要写回生产数据的事情,请使用主/从复制并使用从属来满足您的所有报告和数据分析需求。复制链接将使从站上的值保持最新,并且您可以根据需要以尽可能多的负载命中从站,而不会减慢为您的生产系统提供服务的主站。

于 2012-03-28T10:31:49.117 回答
0

如果您想避免影响生产数据库的性能,我之前使用的唯一解决方案是在另一台数据库服务器上运行您的查询。

我会备份整个数据库,然后在单独的服务器上恢复它。

显然,如果您想分析实时数据,您就无法做到这一点。但对于大多数分析来说,前一天的快照就足够了。

于 2012-03-28T05:20:39.123 回答