如何在Pentaho中清除缓存

时间:2014-08-08 06:52:46

标签: caching jndi mdx pentaho mondrian

我正在使用Pentaho 5.我的维度经常变化,我需要将更改应用到仪表板,这是不可能的,因为Pentaho一直在缓存。我使用数据源向导创建了多维数据集,并使用mdx在mondrian jndi上查询。即使我将属性Cache设置为false或设置缓存持续时间似乎不起作用。是否有一个API可以与mondrian jndi一起用来清除缓存?或者我应该更改任何属性文件?请帮忙。

4 个答案:

答案 0 :(得分:1)

您可以在Pentaho用户控制台中手动执行:工具 - >刷新 - >蒙德里安模式缓存。

或者您可以制定刷新缓存的时间表:在安装中找到 clear_mondrian_schema_cache.xaction 并安排它。

答案 1 :(得分:0)

选项1: 您可以阅读http://javadoc.pentaho.com/bi-platform500/webservice500/了解api详细信息。
您还可以通过Web服务刷新报表元数据缓存,您可以使用以下Web服务调用:     http://localhost:8080/pentaho/api/system/refresh/metadata


选项2:您可以导航到 \ biserver-ee \ tomcat \ webapps \ pentaho \ WEB-INF \ classes 并更改配置文件“ehcache.xml”

<cache name="report-dataset-cache"
maxElementsInMemory="50"
eternal="false"
overflowToDisk="false"
timeToIdleSeconds="1"
timeToLiveSeconds="2"
diskPersistent="false"
diskExpiryThreadIntervalSeconds="1"
/>

如果您已经这样做但仍然没有正面答案,我认为您还没有重新启动BA服务器。如果问题仍然存在以下评论。

答案 2 :(得分:0)

Pentahoo 7 中,&#34; Clear Cache&#34;选项位于不同的菜单中:

工具 - &gt; 数据库 - &gt; 清除缓存

如果您正在使用数据库查找,并且如果您正在使用旧字段,则清理缓存实际上可以解决问题。 它对我有用。

答案 3 :(得分:0)

有两个选项

  1. 一个是在ba服务器上安排“clear mondrian schema”,但要实现这一点,你需要从pentaho-solutions / systems文件夹中获取clear_mondrian_schema.xml并将其上传到你可以在ba上访问的某个文件夹中服务器。然后,您可以使用正常的计划文件选项来实现您的需求。这会给BA服务器带来一点负担。

  2. 我的第二个建议是,如果您使用多维数据集/架构并使用架构工作台构建,则可以关闭缓存。如果您的数据库在体系结构上很好并且您的模式都已定义良好,则用户将在刷新后立即获得更新/新数据。