在 MySQL 中创建物化视图的最佳方法

Bhu*_*dey 28 mysql view materialized-view mysql-5.6

我正在使用 MySQL 5.6。我无法像在 Oracle 中那样创建物化视图。我见过一两个像 Flexview 这样的解决方案。

谁能告诉我在 MySQL 中创建物化视图的最佳方法(如 Oracle 中的自动刷新),并且复杂性最低?

Rol*_*DBA 15

MySQL 中不存在物化视图。

之前 DBA StackExchange已经推荐过Flexviews

既然你已经有了它,你可能需要进行一些尽职调查和肘部润滑才能继续使用它(如果你还没有这样做)

替代方案#1

您可能会考虑设置汇总表。在构建汇总表之前,您将需要索引您的基表以支持聚合。

替代方案#2

这是来自http://www.materialized.info/的旧帖子,它有一个看起来很有趣的实际策略。它涉及使用触发器。看起来可能会很有趣......

替代方案 #3

如果您的基表不是那么大,并且您可以每周查询一次整个表,请尝试有关 CREATE VIEWUser CommentsMySQL 文档部分的想法。materialized在该页面上搜索单词。


小智 5

我发现在 MySQL 中实现物化视图有两种可能的解决方案:

  1. 创建包含所有必需数据的聚合表,然后在数据来源的表上创建触发器。

  2. 创建一个调度程序,定期将数据聚合到表中

请参阅我的博客文章中有关如何实现这 2 个选项的更多详细信息: 物化视图 MySQL