【发布时间】:2017-06-07 19:28:11
【问题描述】:
我有一个 PostgreSQL 数据库,我在其中使用物化视图。 当我尝试刷新这些物化视图时会出现问题。
REFRESH MATERIALIZED VIEW product_cat_mview;
REFRESH MATERIALIZED VIEW productsforproject;
我的解决方案是,当用户想要查看更新的数据时,他应该点击网页上的“刷新按钮”,但这需要大约 50 秒(在本地连接上,距离应用服务器大约 2 分钟)并且所有这一次用户必须等待,这是不好的。
现在我应该创建一个解决方案,每 10 分钟自动刷新一次这些物化视图。 我创建了一个带有多线程的 Java 解决方案。但是我有一个问题。
第一个查询
REFRESH MATERIALIZED VIEW CONCURRENTLY product_cat_mview;
工作正常,但第二个
REFRESH MATERIALIZED VIEW CONCURRENTLY productsforproject;
抱怨我需要创建一个唯一索引。我尝试了在 google 中找到的创建索引、唯一索引等,但我仍然收到“创建唯一索引”的消息。
【问题讨论】:
-
一一运行刷新时是否会引发此错误?
-
我一个一个地运行它们,延迟 30 秒。
标签: postgresql materialized-views