Saiku缓存处理方案

Saiku默认是从缓存中读取数据的(如果缓存中有数据的话),所以用户看到的数据不一定是最新的,如果需要看到最新的的数据需要手动刷新数据或者更改配置信息。

Saiku获取实时数据的方案有以下三种。

>>>获取saiku实时数据方案一:通过admin点击刷新按钮刷新缓存

以管理员 admin的身份登录saiku,点击新建查询进入页面后会看到一个刷新按钮,点击这个按钮就能刷新缓存了。(这种方案不推荐,因为会比较麻烦,每次都用管理员去登录系统操作。)

>>>获取saiku实时数据方案二:通过更改配置文件mondrian.properties不使用缓存

修改配置文件 mondrian.properties  (文件路径:saiku-server\tomcat\webapps\saiku\WEB-INF\classes\mondrian.properties )

将注释打开,并修改 mondrian.rolap.star.disableCaching的值为true,表示不使用缓存(这种方案不推荐,因为数据量大的时候会导致saiku使用性能没那么好。)

###############################################################################
# Boolean property that controls whether a RolapStar's
# aggregate data cache is cleared after each query.
# If true, no RolapStar will cache aggregate data from one
# query to the next (the cache is cleared after each query).
#
#mondrian.rolap.star.disableCaching=false  

修改之后的mondrian.properties关于缓存的配置

###############################################################################
# Boolean property that controls whether a RolapStar's
# aggregate data cache is cleared after each query.
# If true, no RolapStar will cache aggregate data from one
# query to the next (the cache is cleared after each query).
#
mondrian.rolap.star.disableCaching=true

  

>>> 获取saiku实时数据方案三:通过编写脚本指定saiku刷新缓存

定时手动刷新saiku缓存信息,也就是通过编写脚本让saiku在指定时间执行刷新(这个脚本的来源 主要参考方案一点击刷新时发送的请求) (推荐使用)

建议可以在数据库中数据有变化是时,执行此脚本(例如在[ETL]抽完数之后执行)

新建脚本内容如下:  saiku_refresh.sh

#!/bin/bash

curl -c ./cookie.txt -d "language=zh&password=admin&username=admin" http://10.22.33.44:8080/saiku/rest/saiku/session
curl -b ./cookie.txt "http://10.22.33.44:8080/saiku/rest/saiku/admin/discover/refresh"   

其中  10.22.33.44:8080  #是我安装的saiku的访问地址

curl -c ./cookie.txt -d "language=zh&password=admin&username=admin"  http://10.22.33.44:8080/saiku/rest/saiku/session   #获取cookies信息,没有指定saiku可以无密码登录的时候需要执行password与username

curl -b ./cookie.txt "http://10.22.33.44:8080/saiku/rest/saiku/admin/discover/refresh"    #这是主要的执行刷新操作的语句啦

ps:注意上方的 password username 一定是saiku本身的密码以及用户信息哦!!!(因为如果你的登录接口除了使用saiku本身的校验还调用了其他接口WS类似的接口校验,只能使用saiku本身的用户及密码信息刷新哦!!!!)

最后通过 sh saiku_refresh.sh  执行此脚本,便能实现刷新换缓存中的数据啦!!!

Saiku缓存处理(七)的更多相关文章

  1. saiku缓存整理

    使用saiku的人,肯定都有这么一个经历,查询了一次多维分析数据表,第二次之后就特别快,因为它缓存了结果,可问题是过了一天,甚至几天,来源数据早都更换了,可还是这个缓存结果.问题来了,缓存不失效! 那 ...

  2. 【Mybatis】MyBatis之缓存(七)

    MyBatis缓存介绍 Mybatis 使用到了两种缓存:一级缓存(本地缓存.local cache)和二级缓存(second level cache). 一级缓存:基于PerpetualCache ...

  3. Mybatis之一级缓存(七)

    1. 介绍 Mybatis缓存分为一级缓存和二级缓存,在本节中我们介绍下一级缓存的使用及其特性 MyBatis的一级缓存是在一个Session域内有效的,当Session关闭后,缓存内容也随之销毁.缓 ...

  4. Mybatis之二级缓存(八)

    1. 介绍 Mybatis缓存分为一级缓存和二级缓存,在本节中我们介绍下二级缓存的使用及其特性 MyBatis的一级缓存是在一个Session域内有效的,当Session关闭后,缓存内容也随之销毁.但 ...

  5. linux(六)__进程与任务控制

    一.程序.进程.线程 1.程序是一个普通文件,是一系列指令和数据的集合,是一个静态的实体,是程序员写好之后存储于外设之上的代码.它是"死"的,而进程和程序都是"活&quo ...

  6. 理解OAuth 2.0

    转自:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛 ...

  7. RedHat Enterprise Linux 6.4 使用 Centos 6 的yum(转)

    概述 redhat的yum源需注册付费,费时费力,整理RedHat yum 安装CentOS的方法. 安装系统文件 系统:RedHat Enterprise Linux 6.4-x86_64 md5: ...

  8. 解决redhat的未注册问题

    昨天安装第五步的时候:开始是没有网,,,居然ping不通  网  ,服务器也ping不通,,,,,可能和我前几天删除了网络适配器有关,,把linux桥接对应的适配器给删了,,, 解决办法是打开虚拟网络 ...

  9. 理解OAuth 2.0(转载)

    作者: 阮一峰 原文地址:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html OAuth是一个关于授权(authorization)的开放网络标 ...

随机推荐

  1. linux基础07-bash编程(变量,变量类型)

    (1)shell: 弱类型编程语言 强:变量在使用前,必须事先声明,甚至还需要初始化:弱:变量用时声明,甚至不区分类型: 变量赋值:VAR_NAME=VALUE (2)bash变量类型: 环境变量 本 ...

  2. 关于select的默认样式问题

    select { border: solid 1px #000; appearance:none; -moz-appearance:none; -webkit-appearance:none; pad ...

  3. windows安装使用docker

    doker就是一个容器,如果想要在windows安装还必须要用另外一个工具docker-toolbox.下载地址:https://mirrors.aliyun.com/docker-toolbox/w ...

  4. 开发者说 | Apollo控制算法之汽车动力学模型和LQR控制

    参考:https://mp.weixin.qq.com/s?__biz=MzI1NjkxOTMyNQ==&mid=2247486444&idx=1&sn=6538bf1fa74 ...

  5. ROS中遇到的一些问题和解决(更新)

    检查 roscore 是否正常打开 [ERROR] Failed to contact master at [localhost:11311]. Retrying... [ERROR] [144653 ...

  6. php安装soap等扩展的方式: 已经安装了php却发现少安装了一下扩展

    php安装soap等扩展的方式: 已经安装了php却发现少安装了一下扩展 1.首先确认下php.ini的安装位置 我的安装目录是: /usr/local/php 一般位置: /usr/local/ph ...

  7. 雷林鹏分享:C# 常量

    C# 常量 常量是固定值,程序执行期间不会改变.常量可以是任何基本数据类型,比如整数常量.浮点常量.字符常量或者字符串常量,还有枚举常量. 常量可以被当作常规的变量,只是它们的值在定义后不能被修改. ...

  8. vs2013安装及opencv3.0的配置

     vs2013的安装改善计划,不勾选. Windows8  和 windows phone不勾选  然后进行解压安装.(我安装在了e盘的次级目录) 安装完成,点击“启动” 登陆界面,点击“以后再说”. ...

  9. 3.2 定位shellcode

    前言 此帖为 0day_2th 一书第三章实践不完全记录. 流程记录 searchAddr.c 文件: #include <windows.h> #include <stdio.h& ...

  10. LeetCode--007--整数反转(java)

    给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出 ...