http://lxw1234.com/archives/2016/05/647.htm

关于Kylin的介绍和使用请参考之前的文章
《分布式大数据多维分析(OLAP)引擎Apache Kylin安装配置及使用示例》
Kylin对外提供的是SQL查询接口,基于Kylin构建OLAP多维分析系统,第一种方案是针对业务,定制开发一个前端界面,将界面上用户的选择和操作,翻译成SQL,提交给Kylin查询。另一种方案则是将Kylin与BI工具整合起来,借助BI工具,对Kylin中的Cube进行查询分析。Kylin本身对于BI工具Tableau可以非常好的整合使用,我自己下载了Tableau的试用版,效果确实不错,官方文档中也给出了详细的教程:

http://kylin.apache.org/cn/docs15/tutorial/tableau_91.html

可惜,Tableau是商业软件,收费的。

本文介绍另一个开源免费的BI工具–Saiku。
Saiku是一个轻量级的OLAP分析引擎,用户可以在非常友好的界面下利用OLAP和内存引擎进行向下钻取,过滤、分类、排序和生成图表。Saiku利用Mondrian完成了界面?MDX?SQL
的转换,最终将SQL通过JDBC提交给Kylin执行。

Github上已经有大神提供了编译好的相关jar包下载:

https://github.com/mustangore/kylin-mondrian-interaction

按照里面的说明,很简单就完成了Saiku+Kylin的整合部署。

Saiku中配置Kylin数据源


在浏览器输入Saiku的WEB地址:http://172.16.212.17:8080/
用户名密码为:admin/admin

STEP1:编写Mondrian Schema文件

 
  1. <?xml version="1.0"?>
  2. <Schema name="ad_schema">
  3. <Cube name="lxw1234_ad_cube2">
  4. <!-- 事实表(fact table) -->
  5. <Table name="AD_REPORT" />
  6. <Dimension name="地域">
  7. <Hierarchy hasAll="false">
  8. <Table name="AD_REPORT"></Table>
  9. <Level name="省份" column="PROVINCE" table="AD_REPORT"></Level>
  10. <Level name="城市" column="CITY" table="AD_REPORT"/>
  11. </Hierarchy>
  12. </Dimension>
  13. <Measure name="曝光数" column="IMP_PV" aggregator="sum" datatype="Integer" />
  14. <Measure name="唯一曝光数" column="COOKIEID_IMP" aggregator="distinct-count" datatype="Integer" />
  15. <Measure name="点击数" column="CLK_PV" aggregator="sum" datatype="Integer" />
  16. <Measure name="唯一点击数" column="COOKIEID_CLK" aggregator="distinct-count" datatype="Integer" />
  17. </Cube>
  18. </Schema>

STEP2:添加Kylin数据源

进入Saiku管理控制台,点击”Add Schema”,将编写好Schema文件上传。

接着点击”Add Data Source”,添加数据源:

STEP3:创建查询

回到Saiku Home主页,点击”Create a new query”,创建查询:

在多维数据下拉菜单中,选择Schema文件中定义好的Cube,自动获取指标和维度,双击指标和维度,在右边的区域即可自动进行查询展示。

Saiku中同样支持上钻、下钻、过滤、排序等操作。

存在的问题


在试用期间,发现两个严重的问题,导致Saiku和Kylin的整合甚至不能继续:

1. 事实表和维度表的join方式:

Mondrian中统一使用内关联(Inner Join)的方式将事实表和维度表关联,而Kylin中,我的Cube是将事实表和维度表进行左关联(Left Join)生成的,因此不支持Inner Join的查询。除非像我例子中的,把左右的维度名称都放置到事实表中,不和维度表关联,这样就没有问题。

2. Count Distinct的问题:

Mondrian对于Count Distinct的指标会翻译成SELECT COUNT(*) FROM (SELECT DISTINCT …)的形式,这种查询SQL提交给Kylin,并不支持,因此对于Count Distinct类型的指标无法查询分析。

看来要想很好的使用Saiku+Kylin,这两个问题还有待研究解决。

使用Saiku+Kylin构建多维分析OLAP平台相关推荐

  1. 猿辅导 x DorisDB:构建统一OLAP平台,全面升级数据分析能力

    猿辅导公司的数据中台部门为猿辅导.斑马.猿编程.小猿搜题.猿题库.南瓜科学等各个业务线的产品.运营.研发提供标准化的数据集(OneData)和统一数据服务(OneService).OLAP平台作为数据 ...

  2. 迈向更灵活,贝壳 OLAP 平台架构演进

    导语 |为了满足贝壳日益复杂.多样化业务场景下的多维数据分析需求,贝壳 OLAP 平台经历了从早期基 于Hive+MySQL 原始阶段,到基于 Kylin单一引擎的平台化建设,再到支持多种不同OLAP ...

  3. 迈向更灵活,贝壳 OLAP 平台架构演进历程

    导语 |为了满足贝壳日益复杂.多样化业务场景下的多维数据分析需求,贝壳 OLAP 平台经历了从早期基 于Hive+MySQL 原始阶段,到基于 Kylin单一引擎的平台化建设,再到支持多种不同OLAP ...

  4. Saiku + Kylin 多维分析平台探索

    作者:lxWei 背景 为了应对各种数据需求,通常,我们的做法是这样的: 对于临时性的数据需求:写HQL到Hive里去查一遍,然后将结果转为excel发送给需求人员. 对于周期性的.长期性的数据需求: ...

  5. 数据仓库-多维分析展示平台Saiku

    Saiku Saiku是一个轻量级的OLAP分析引擎,可以方便的扩展.嵌入和配置.Saiku通过REST API连接OLAP系统,利用其友好的界面为用户提供直观的分析数据的方式,它是基于jQuery做 ...

  6. oracle saiku_Apache Kylin | Saiku + Kylin 搭建多维 OLAP 平台

    随着数据量的激增,传统的 OLTP 平台已无法满足用户的分析需求.OLAP 平台应运而生,OLAP 平台通常由 OLAP Engine 与用户操作分析页面组成.本文将会以 Saiku + Kylin ...

  7. oracle saiku_有了 Kylin+Saiku,妈妈再也不用担心我的多维 OLAP 平台

    随着数据量的激增,传统的 OLTP 平台已无法满足用户的分析需求.OLAP 平台应运而生,OLAP 平台通常由 OLAP Engine 与用户操作分析页面组成.本文将会以 Saiku + Kylin ...

  8. 卷皮OLAP平台进化史:Apache Kylin在卷皮网大数据平台的运用

    \ AI 前线导读:"卷皮网"是一家专注高性价比商品的移动电商 ,日活跃高达 1000 多万,随着卷皮网的快速发展,数据规模快速增长,集群数据存储量成指数倍增大,服务器规模达到 1 ...

  9. 贝壳大数据OLAP平台架构演进

    分享嘉宾:肖赞 贝壳 资深工程师 编辑整理:赵冬生 出品平台:DataFunTalk 导读:随着大数据的持续发展及数字化转型的兴起,大数据OLAP分析需求越来越迫切,不论是大型互联网企业,还是中小型传 ...

最新文章

  1. 彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM+LIO-SAM)
  2. Android:理想的框架开发母板——高焕堂
  3. UVA 11100 The Trip, 2007
  4. 【转】蓝牙技术及其系统原理
  5. 为什么说Java中只有值传递(另一种角度)
  6. [html] 如果列表元素li的兄弟元素为div,会产生什么情况?
  7. PHP方向+go+rpc+swoole,瞅瞅 PHP+Swoole 作为网络通信框架
  8. Docker自动构建开发测试平台
  9. jmeter 聚合报告说明_Jmeter 测试结果分析之聚合报告简介
  10. 怎么看公司财务报表?
  11. 爆赞,java后端开发路线。
  12. VB编程:GetSetting控制软件试用期-56
  13. bmp转换为YUV420p指南
  14. SAP SM36如何设置后台作业 每月最后一天运行
  15. Java常用日志框架介绍(转载)
  16. Docker 镜像的存储机制
  17. 【CF833D】Red-Black Cobweb
  18. VM虚拟机安装使用OBS直播录屏软件图文教程及注意事项
  19. globalmapper如何选取图像上的点_图像去雾的算法历史与综述
  20. R语言用GAM广义相加模型研究公交专用道对行程时间变异度数据的影响

热门文章

  1. HTML如何设置幻灯片大小和位置,PPT教程:教你如何在PPT母版中统一标题的位置、大小、样式 | 演示说...
  2. 网站设计系列:网站易用性
  3. program received signal sigfpe,Arithmetic exception
  4. 什么是物联卡,物联卡注意事项
  5. 服务器系统2012浏览器,关闭Windows 2012系统IE浏览器”增强的安全配置已启用”问题 | 老左笔记...
  6. Java垃圾回收与算法
  7. 谷歌的云计算是什么样子的?
  8. MATLAB实现图像灰度直方图
  9. matlab实现彩色图像的直方图均衡化
  10. [转][JS]Math.random()随机数的二三事