公司希望也开发一套多维分析系统,以解决运营/产品无休止的需求和技术人力不足的矛盾!

一、开发选型:

一、BIRT:易用性差,所以没再使用

二、JasperReport+ireport:文档收费,不支持ETL工具

三、Pentaho:在中国比较普及,文档多,报表是其中的一部分,比如数据同步和ETL也都有

四、Openi:老牌BI工具,以前淘宝等公司都使用过,可惜过时啦

结合公司实际,综合考虑决定使用Pentaho的saiku做为报表平台

二、搭建环境:

选型结束后,就开始准备,搭建环境!

方案一、下载源代码,编译安装

git地址:https://github.com/OSBI/saiku

clone下来之后,按照ReadMe安装,可是各种jar包找不到(尝试翻墙和多种版本)没有解决问题之后放弃了,下面是报错的信息(如果哪位高手解决了下面的问题,望不吝赐教):

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Saiku Module Project ............................... SUCCESS [ 15.192 s]
[INFO] saiku - core libraries ............................. SUCCESS [ 8.457 s]
[INFO] saiku olap util .................................... SUCCESS [09:05 min]
[INFO] saiku - services ................................... FAILURE [25:41 min]
[INFO] saiku - web ........................................ SKIPPED
[INFO] saiku-ui ........................................... SKIPPED
[INFO] saiku - webapp ..................................... SKIPPED
[INFO] saiku-server ....................................... SKIPPED
[INFO] saiku biserver plugin .............................. SKIPPED
[INFO] saiku biserver plugin .............................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 35:21 min
[INFO] Finished at: 2016-02-04T21:22:34+08:00
[INFO] Final Memory: 35M/145M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project saiku-service: Could not resolve dependencies for project org.saikuanalytics:saiku-service:jar:3.7.4: Failed to collect dependencies at org.saiku:saiku-query:jar:0.1-SNAPSHOT -> pentaho:mondrian:jar:4.3.0.1-SPARK: Failed to read artifact descriptor for pentaho:mondrian:jar:4.3.0.1-SPARK: Could not transfer artifact pentaho:mondrian:pom:4.3.0.1-SPARK from/to atlassian2 (http://repository.opencastproject.org/): repository.opencastproject.org:80 failed to respond -> [Help 1]

方案二、直接安装

  1. 下载源代码:http://community.meteorite.bi/
  2. 解压:saiku-latest.zip(版本是saiku 3.7 Released)
  3. 启动:我使用的是OSX系统,所以直接运行脚本:start-saiku.sh
  4. 查看结果:

三、配置

1、填写schema

选择Admin Console,再选择Add Schema,如下图:

上传saiku.xml,内容如下:

<Schema name="test_schema">
<cube name="test_cube">
<Table name="t_data"/>
<Dimension name="user" foreignKey="user_id">
<Hierarchy hasAll="true" allMemberName="user_id" primaryKey="user_id">
<Table name="t_user"/>
<Level name="user_id" column="user_id" uniqueMembers="true" type="Integer"/>
</Hierarchy>
</Dimension>
<Measure column="count" aggregator="sum" datatype="Numeric" name="all_count" caption="all_count"/>
</cube>
</Schema>

2、添加数据源,我使用的是postgresql

首先添加数据表:

CREATE TABLE t_data
(
user_id integer,
count numeric(4,2)
);
CREATE TABLE t_user
(
user_id serial NOT NULL,
user_name character varying(50),
pwd character varying(50)
);
--t_data的数据
1;33.00
2;32.00
3;34.00
4;38.00
2;23.00
2;3.00
--t_user的数据
1;"user1";"1"
2;"user2";"2"
3;"user3";"3"
4;"user4";"4"

3、添加数据源

其中url的格式是:jdbc:postgresql://l-***.tkt.cn6.***.com:5432/saiku

查看数据

拖动字段到如下位置即可:

四、参考:

saiku开源的github地址:https://github.com/OSBI/saiku

saiku安装过程:http://blog.csdn.net/gsying1474/article/details/45918275

五、后记

我会持续跟进saiku的使用,在以后的博文中会介绍schema的编写规范,英文文档链接如下:http://mondrian.pentaho.com/documentation/schema.php

pentaho saiku 安装全过程的更多相关文章

  1. saiku安装方法总结

    最近研究pentaho和saiku,在网上搜集了一些安装和配置的方法,亲测有效,在这分享总结一下方便日后使用. Saiku主要提供两种安装方式,独立运行和集成在Pentaho BI平台上,本文会简单介 ...

  2. CentOS 6.0图解网络安装全过程

    转自CentOS 6.0图解网络安装全过程 国内镜像站点(东北大学.网易) 网易镜像站点:http://mirrors.163.com/centos/6.0/isos/ 中科大镜像站点:http:// ...

  3. PYQT4 + Python2.6 + eric4-4.2.2a的安装全过程

    PYQT4 + Python2.6 + eric4-4.2.2a的安装全过程 - beike - ITeye技术网站 PYQT4 + Python2.6 + eric4-4.2.2a的安装全过程 博客 ...

  4. FastDFS安装全过程记录(V5.05)

    FastDFS安装全过程记录 1.安装准备 HA虚拟IP:192.168.1.208 HA软件:Keepalived 操作系统:CentOS 7 用户:root 数据目录:/data/fastdfs ...

  5. Redis介绍——Linux环境Redis安装全过程和遇到的问题及解决方案

    一:redis的入门介绍: 首先贴出官网; 英文:https://redis.io/ 中文:http://www.redis.cn/ 1.是什么 --REmote DIctionary Server( ...

  6. FastDFS部署安装全过程

    你好!欢迎阅读我的博文,你可以跳转到我的个人博客网站,会有更好的排版效果和功能. 此外,本篇博文为本人Pushy原创,如需转载请注明出处:https://pushy.site/posts/153205 ...

  7. Sphinx 2.2.6 window下安装全过程 未完 持续标记~~~~

    由于在win8.1下安装 选的这个版本 Win64 binaries w/MySQL+PgSQL+libstemmer+id64 support 2.2.6-release 7.3M 下载页面 htt ...

  8. zabbix安装全过程

    在了解<zabbix硬件.软件需求>之后,在你心里应该有备选的机器.今天开始安装zabbix.zabbix需要LNMP或者LAMP环境.环境的搭建不在本章范围内. LNMP环境配置Linu ...

  9. esxi安装全过程及基本配置

    esxi6.0下载地址 链接: http://pan.baidu.com/s/1jIfg2yU 密码: qacv 支持检测可以参考:http://www.linuxidc.com/Linux/2012 ...

随机推荐

  1. 基于OWIN WebAPI 使用OAUTH2授权服务【授权码模式(Authorization Code)】

    之前已经简单实现了OAUTH2的授权码模式(Authorization Code),但是基于JAVA的,今天花了点时间调试了OWIN的实现,基本就把基于OWIN的OAUHT2的四种模式实现完了.官方推 ...

  2. Objective-C入门

    厂长最近又有新计划,准备做iOS上的开发,要操作工们(其实就是我自己)学习Objective-C,准备为厂子下一步的发展做出巨大贡献.拿人钱财,替人消灾,又得花时间折腾一门语言.话说自从来到现车间,用 ...

  3. 转:C# DataGridView控件清空数据出错解决方法

    C# DataGridView控件绑定数据后清空数据在清除DataGridview的数据时: 1.DataSource为NULL(DataGridView.DataSource= null;)这样会将 ...

  4. [MFC] MFC 仿 Flappy bird PC桌面版

    http://www.cr173.com/ 前些日子发现朋友都在玩flappy bird这款虐心的小游戏,网上也炒得很火,于是俺也想下一个玩玩.可是矮穷挫至今还没配上高端的智能机,于是去网上搜了一下, ...

  5. AngularJS快速入门指南01:导言

    AngularJS使用新的attributes扩展了HTML AngularJS对单页面应用的支持非常好(SPAs) AngularJS非常容易学习 现在就开始学习AngularJS吧! 关于本指南 ...

  6. 将Eclipse代码导入到AndroidStudio的两种方式

    版权声明: 欢迎转载,但请保留文章原始出处 作者:GavinCT 出处:http://www.cnblogs.com/ct2011/p/4183553.html 说到使用AndroidStudio,除 ...

  7. Atitit 三论”(系统论、控制论、信息论

    Atitit 三论"(系统论.控制论.信息论 1. 系统论的创始人是美籍奥地利生物学家贝塔朗菲1 2. 信息论是由美国数学家香农创立的,2 3. 什么是控制论? 2 1. 系统论的创始人是美 ...

  8. 解决 "Windows 无法启动Mongo DB服务 错误:1067 进程意外终止"

    在启动MongoDB服务时,有时会报上图所示的错误,解决方案为: 1. MongoDB安装目录\data\将此文件夹下的mongod.lock删除 2. 查看官方文档或按照上一篇安装文章检查是否设置d ...

  9. TF Boys (TensorFlow Boys ) 养成记(五)

    有了数据,有了网络结构,下面我们就来写 cifar10 的代码. 首先处理输入,在 /home/your_name/TensorFlow/cifar10/ 下建立 cifar10_input.py,输 ...

  10. Maven学习总结(四)——Maven核心概念——转载

    一.Maven坐标 1.1.什么是坐标? 在平面几何中坐标(x,y)可以标识平面中唯一的一点. 1.2.Maven坐标主要组成 groupId:组织标识(包名) artifactId:项目名称 ver ...