1

我对 mdx 查询有疑问。实际上,我开发的一个仪表板有 23 个 mdx 查询。如果我们运行这些仪表板,它需要 2 分钟才能运行。如何解决这个问题。

另一个问题

我修改了数据库中的一些数据。如果我们运行这些仪表板,修改后的数据不会显示。它只显示以前的数据。如何解决这个问题。

4

1 回答 1

1

1) 第一次加载时 23 个查询可能有点太多了。你不能简化吗?另外,查询是否都尽可能快,但查询太多了?还是有需要改进的较慢查询?还要检查组件的优先级。您可能会多次渲染组件。示例:您有一个 Country 选择器和一个 City 选择器。因为城市选择器放在国家选择器之前,如果它们具有相同的优先级(默认=5),它将首先运行,检索完整的城市列表;然后国家选择器运行并选择第一个值作为参数值。由于您的 City 选择器很可能会监听 Co​​untry 参数,因此它将再次触发,因为 Country 是 fireChange'd。

2)缓存。您正在更改数据,但 Mondrian 或 CDA(或两者)正在从其缓存中获取数据。这里有两个选项: - 数据更新后清除 Mondrian 缓存和清除 CDA 缓存(适用于影响大部分数据库的大型更新);- 禁用查询定义上的缓存和蒙德里安模式上的多维数据集缓存。

于 2015-04-24T10:00:34.563 回答