Saiku_学习_01_saiku安装与运行

 一、下载saiku

1.下载地址

官网:https://community.meteorite.bi/

 2.解压后文件结构

3.ROOT和saiku

 在tomcat/webapp 下有两个web应用,是与saiku相关的。

将环境变量中的CATALINA_HOME设置为这里的tomcat,

然后运行saiku-server下的start-saiku.bat

访问 localhost:8080/upload.html ,可以看到一个让你上传license的页面,如下图:

4.获取license文件

前往  https://licensing.meteorite.bi/login  ,注册账号并进行登录。

创建公司,然后创建license,在下载license文件

5.上传license

前往 localhost:8080/upload.html  ,将 4 中下载的license文件上传。

上传时需要的账号:admin ,admin

6.登录saiku

前往 localhost:8080  ,输入admin,admin  ,即可登录saiku 系统。

二、创建数据库与数据库驱动

1.创建数据库

(1)新建一个数据库,数据库名称为:sakiu_demo(原谅我创建数据库的时候粗心把saiku打成sakiu了)。

(2)新建一个查询,运行以下sql语句,来建表和导入数据

建表和导入数据的sql语句太大上传不了,请移步:saiku安装部署资源

2.添加数据库驱动

下载相应的数据库驱动放到 saiku-server/tomcat/webapps/saiku/WEB-INF/lib 目录下

三、添加 schema

1.新建 sales_mondrian_schema.xml

(1)在 saiku-server\tomcat\webapps\saiku\WEB-INF\classes 路径下新建saiku-datasources文件夹

 (2)在 saiku-datasources文件夹下新建sales_mondrian_schema.xml,文件内容如下

<Schema name="Sauce Dallas schema">
  <Cube name="Sales" visible="true" description="sales cube or Sauce Dallas" cache="true" enabled="true">
    <Table name="fact_sales">
    </Table>
    <Dimension type="StandardDimension" visible="true" foreignKey="customer_id" highCardinality="false" name="customers dimension" caption="customers">
      <Hierarchy name="h_region" visible="true" hasAll="true" allMemberName="All" allLevelName="all levels" primaryKey="customer_id" caption="region" description="regions hierarchy">
        <Table name="dim_customers" alias="customers dimension">
        </Table>
        <Level name="continent" visible="true" column="continent" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="continent">
        </Level>
        <Level name="country" visible="true" column="country" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="country">
        </Level>
        <Level name="state" visible="true" column="state" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="state">
        </Level>
        <Level name="city" visible="true" column="city" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="city">
        </Level>
      </Hierarchy>
    </Dimension>
    <Dimension type="StandardDimension" visible="true" foreignKey="product_code" highCardinality="false" name="product" caption="product">
      <Hierarchy name="h_product" visible="true" hasAll="true" allMemberName="all products" allLevelName="all levels" primaryKey="product_code" caption="products" description="products hierarchy">
        <Table name="dim_products" alias="products dimension">
        </Table>
        <Level name="product type" visible="true" column="product_type" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="product type" description="product types">
        </Level>
        <Level name="product code" visible="true" column="product_code" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" caption="product code" description="product code">
        </Level>
      </Hierarchy>
    </Dimension>
    <Dimension type="TimeDimension" visible="true" foreignKey="date_id" highCardinality="false" name="time dimension" caption="time">
      <Hierarchy name="h_month" visible="true" hasAll="true" allMemberName="all years" allLevelName="all" primaryKey="date_id" caption="months hierarchy" description="months hierarchy">
        <Table name="dim_time" alias="time dimension">
        </Table>
        <Level name="year" visible="true" column="year" type="String" uniqueMembers="false" levelType="TimeYears" hideMemberIf="Never" caption="year">
        </Level>
        <Level name="quarter" visible="true" column="quarter" type="String" uniqueMembers="false" levelType="TimeQuarters" hideMemberIf="Never" caption="quarter">
        </Level>
        <Level name="month" visible="true" column="month_number" nameColumn="month_long_name" type="Integer" uniqueMembers="true" levelType="TimeMonths" hideMemberIf="Never" caption="month">
        </Level>
      </Hierarchy>
    </Dimension>
    <Measure name="sales amount" column="amount" datatype="Numeric" formatString="#,### $" aggregator="sum" visible="true">
    </Measure>
    <Measure name="quantity" column="quantity" datatype="Integer" aggregator="sum" visible="true">
    </Measure>
  </Cube>
</Schema>

2.添加 schema

按下图步骤,将sales_mondrian_schema.xml上传,Schema Name 随意取

四、配置数据源

 1.配置数据源

type=OLAP
name=sakiu_demo
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:mysql://localhost:3306/sakiu_demo;Catalog=res:saiku-datasources/sales_mondrian_schema.xml;JdbcDrivers=com.mysql.jdbc.Driver;
username=root
password=123
security.enabled=false

2.配置说明

type=OLAP  :     指定一个 OLAP 引擎.没有见过非OLAP的属性值。
name       :     给你的数据源命名,随意命名。
driver     :     指定 Mondrian driver(将二维关系表转化为多维度表的驱动).没有见过其他的属性值。
location   :      这个属性有几个部分组成,使用分号分隔。
             jdbc:mondrian:Jdbc=jdbc:mysql://localhost:3306/sakiu_demo;    指定数据库对应jdbc url,需要修改主机和对应的数据库名称。这里的主机是localhost,对应数据库是sakiu_demo
             Catalog=res:saiku-datasources/sales_mondrian_schema.xml       指定mondrian schema文件。res表明是文件的路径,这里是从saiku webapp目录开始;
             JdbcDrivers=com.mysql.jdbc.Driver 指明java 类文件作为数据库连接驱动。
username   :      连接数据库的用户名
password   :      连接数据库的密码

3.pgsql

type=OLAP
name=postgres
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:postgresql://192.168.11.197:5432/postgres;Catalog=res:saiku-datasources/bgt_amount.xml;JdbcDrivers=org.postgresql.Driver;
username=postgres
password=postgres
security.enabled=false

五、重新登录

 需要登录项目,才能在新建查询选择刚刚添加的数据源对应的cube。先注销,再登录。如下图

至此就可以很方便的对数据库中数据进行多维分析了

六、参考资料

精选:

1.saiku安装方法总结

其他:

1.[saiku] 在 Tomcat 下部署 saiku

2.saiku安装

3.在Tomcat上安装部署SAIKU

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

如何在CentOS 7上安装MySQL

MySQL是一个开源数据库管理系统,通常情况下,安装它作为流行的LEMP(Linux,Nginx,MySQL/ MariaDB,PHP / Python /Pe...

4314
来自专栏java达人

Oracle 常用命令

1、启动oracle数据库: 从root切换到oracle用户进入: su - oracle 进入sqlplus环境,nolog参数表示不登录: sqlplus...

1825
来自专栏Java成神之路

Linux_笔记_01_设置静态IP与 SecureCRT连接Linux

使用命令:vi /etc/sysconfig/network-scripts/ifcfg-eth0

952
来自专栏自然语言处理

真机环境下MySQL-Cluster搭建文档

MySQL cluster 和 Oracle RAC 完全不同,它采用 无共享架构Shared nothing(shared nothing arc...

972
来自专栏FreeBuf

Linux下的常见错误配置

经过对大量客户的配置审计与渗透测试,我们总结出了一些Linux系统下的常见配置错误。我们相信总结、回顾这些常见错误可以在以后为我们节省更多时间与资源,更重要...

2216
来自专栏白驹过隙

RabbitMQ - 引入库产生的一次pthread_create错误

1406
来自专栏程序员同行者

开启mysql慢查询

1352
来自专栏木子昭的博客

Github变身网络硬盘

1836
来自专栏白驹过隙

RabbitMQ - 引入库产生的一次pthread_create错误

37615
来自专栏desperate633

浅谈应对数据库高负载访问的几种思路1.使用优化查询的方法2.主从复制, 读写分离, 负载均衡3.数据库分表, 分区, 分库

目前,大部分的主流关系型数据库都提供了主从复制的功能,通过配置两台(或多台)数据库的主从关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。网站可以利用...

951

扫码关注云+社区

领取腾讯云代金券