mondrian在pentaho中清除缓存的问题解决方法(利用kettle抽取)

 问题描述:

      在pentaho中,利用kettle执行数据ETL后,数据仓库中的dimention、cube数据发生变化,但是pentaho中用于数据多维展示的mondrian展示/缓存的数据并没有随数据仓库中数据的变化相应的变化,这就造成了展示的数据和数据仓库的实际数据不一致。

 

问题分析:

     mondrian为了保证展示数据的速度,默认的是将取出的数据通过Aggregate Manager缓存(这么做也符合数据仓库的特点)。但是实际的应用中,dimention中数据可能会变更,这时mondrian面对mdx查询仍取的事缓存的数据。

 

解决方法:

     在kettle进行数据ETL时,同时触发Mondrian清空相应的缓存数据。

     具体做法就是在利用Action sequence发布kettle的transform或job时,在“Process Actions”中添加一个“JavaScript”process Actions,然后在javascript配置界面的“Javascript”下填入以下代码:

 

     并在“script outputs”下写入Name为“no_output”,type为“String”的参数。

    具体配置界面如下图: 

     相应的xml为:

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值