
正文
[saiku] 配置saiku实时展现查询数据
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
缘起:
在默认的情况下,saiku是不能对数据进行实时展现的,只能通过刷新按钮或者重启服务器来刷新数据这样以来会有很多的麻烦,每天得手动去刷新,这个操作只有管理员可以操作,在刷新以前客户看到的都是缓存中的旧数据。有人说写个shell去定时更新不行吗?这个做法当然可以。除了这个做法,还可以让saiku查询完数据后即时加载。不用数据库连接池,加载完成后立刻清除缓存中的数据,系统下次在加载的时候发现缓存是空的,就会自动去查询新数据,这样以来就可以做到实时展现.
具体修改如下:
(1)编辑 saiku/ui/js/saiku/Settings.js将 LOCALSTORAGE_EXPIRATION: 10 * 60 * 60 * 1000 /* 10 hours, in ms */修改为:LOCALSTORAGE_EXPIRATION: (2)编辑 saiku/plugin.spring.xml
将
<bean id="connectionManager" class="org.saiku.plugin.PentahoSecurityAwareConnectionManager" init-method="init" destroy-method="destroy">
<property name="dataSourceManager" ref="pentahoDsManager" />
<property name="userAware" value="false" />
<property name="connectionPooling" value="true" />
</bean>修改为:<bean id="connectionManager" class="org.saiku.plugin.PentahoSecurityAwareConnectionManager" init-method="init" destroy-method="destroy">
<property name="dataSourceManager" ref="pentahoDsManager" />
<property name="userAware" value="false" />
<property name="connectionPooling" value="false" />
</bean>(3)编辑mondrian/mondrian.properties将 mondrian.rolap.star.disableCaching=false修改为:mondrian.rolap.star.disableCaching=true








