Kylin及数据仓库的技术概念详解

一 cube

1, Table

cube数据源的hive表的定义,在build cube之前需要进行同步。

2, Data Model

这描述了一个星型数据模型,定义了flat/lookup表和过滤条件。

3, Cube Desctiptor

这描述了一个cube实例的定义和配置,定义了采用那个model,拥有哪些维度和测量指标,如何区分区Segment,如果处理自动合并。

4, Cube instance

cube的实例,根据一个cube descriptor构建,然后由一个或者多个cube Segment组成(根据分区设置)。

5, Partition

用户可以在一个cube descriptor上定义DATE/String 列作为一个分区列。使用不同的时间周期,将一个cube分割成多个Segment。

6, Cube Segment

这是立方体数据的实际载体,并映射到HBase中的HTable。一个构建作业会为Cube实例创建一个新的Segment。 一旦数据在指定的数据周期内发生变化,我们可以刷新相关的Segment以避免重建整个Cube。

7, Aggregation

Group 每个聚合组都是维度的子集,并在里面构建cuboid。 它旨在修剪优化。

二 DIMENSION & MEASURE

1, Mandotary

此维度类型用于cuboid修剪,如果一个维度被指定为“Mandotary”,那么那些没有维度的组合被修剪。

2,Hierarchy

这个维度类型用于cuboid修剪,如果A,B,C三维形成一个“Hierarchy”关系,那么只剩下A,AB或ABC的组合。

3,Derived

在查找表中,可以从它的PK生成一些维度,所以它们和事实表中的FK有特定的映射关系。 所以这些维度是派生的,不参与长方体生成。

4,Count Distinct(HyperLogLog)

即时COUNT DISTINCT很难计算,近似算法 - HyperLogLog被引入,并且保持错误率在较低的水平。

5,Count Distinct(Precise)

精确COUNT DISTINCT将根据RoaringBitmap预先计算,目前只支持int或bigint。

6,Top N

例如,用这种度量类型,用户可以很容易地得到指定的最大卖家/买家数量等。

三 cube actions

1, build

给出一个新的分区列间隔,这个动作会建立一个新的cube Segment

2, REFRESH

此操作将在某个分区期间重建cube Segment,用于源表增加的情况。

3, MERGE

此操作将将多个连续的cube Segment合并为一个。 这可以通过立方体描述符中的自动合并设置进行自动化。

4, PURGE

清除多维数据集实例下的分段。 这只会更新元数据,不会从HBase删除多维数据集数据。

六 JOB STATUS

1, NEW

这表示一个job刚刚被创建

2, PENDING

这表示一个作业被作业调度程序暂停并等待资源。

3, RUNNING

这表示一项job正在进行中。

4, FINISHED

这表示一项job已经成功完成。

5, ERROR

这表示一个job有错误而终止

6, DISCARDED

这表示一个job被用户取消

五 JOB ACTION

1, RESUME

一旦工作处于ERROR状态,此操作将尝试从最近的成功点恢复它。

2, DISCARD

无论工作状态如何,用户都可以用DISCARD操作结束并释放资源。

数据仓库的基础概念

以下是我们在ApacheKylin中使用的一些领域术语,可以百度它们以供参考。他们是Apache Kylin的基本知识,这也将有助于理解数据仓库,商业智能等分析方面的这些关注,术语,知识,理论和其他知识。

数据仓库(Data Warehouse)

数据仓库(DW或DWH)也称为企业数据仓库(EDW),是一个用于报告和数据分析的系统

商业智能(Business Intelligence)

商业智能(BI)是将原始数据转化为有意义且有用的信息以用于业务分析的一套技术和工具。

OLAP

OLAP是联机分析处理的首字母缩写

OLAP Cube

OLAP Cube是根据其0维或更多维理解的数据数组。

星型模式(Star Schema)

星形模式(Star Schema)包含一个或多个事实表、一组维表,其中维表的primary key与事实表的foreign key相对应。这种模式很像星光四射,维表显示在围绕事实表的射线上。下图是我根据某数据源所建立的星形模式:

事实表(Fact Table)

事实表包含业务流程的度量,指标或事实。

LookupTable

Lookup Table包含对事实表的某些列进行扩充说明的字段。在Kylin的quick start中给出sample cube(kylin_sales_cube)——其Fact Table为购买记录,lookup table有两个:用于对购买日期PART_DT、商品的LEAF_CATEG_ID与LSTG_SITE_ID字段进行扩展说明。

维度(Dimension)

维表(Dimension Table)是由fact table与lookup table逻辑抽象出来的表,包含了多个相关的列(即dimension),以提供对数据的多维观察;其中dimension的值的数目称为cardinatily。在kylin_sales_cube的事实表的LSTG_FORMAT_NAME被单独抽出来做一个dimension,可与其他维度组合分析数据。

度量(Measure)

度量是可以进行计算(例如,总和,计数,平均值,最小值,最大值)的属性。

Cube

cube是所有的dimensions组合,任一dimensions的组合称为cuboid。因此,包含nn个dimensions的cube有2n2n个cuboid,如下图所示:

原文发布于微信公众号 - Spark学习技巧(bigdatatip)

原文发表时间:2017-11-13

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Web行业观察

我是如何爱上ag-grid框架的

与每个管理系统一样,我们需要选择一个网格来显示我们的数据,而我的前任已经在应用程序中使用了两个网格 -  ag-Grid(v2.7)和Ng-Table(v0.8...

1.3K40
来自专栏量子位

少年,这有套《街霸2》AI速成心法,想传授于你……

千平 发自 LZYY 量子位 出品 | 公众号 QbitAI ? “ 少年,我看你骨骼精奇,是万中无一的武学奇才。我这有套《街霸2》心法,见与你有缘,就十块钱卖...

42560
来自专栏企鹅号快讯

python-pcl以及相关资料分享

PCL(Point Cloud Library)是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C++编程库,它实现了大量点云相关的通用算法和高效数据结...

78550
来自专栏深度学习之tensorflow实战篇

用R进行文本分析初探——包含导入词库和和导入李白语句

用R进行文本分析初探——以《红楼梦》为例 一.写在前面的话~   刚吃饭的时候同学问我,你为什么要用R做文本分析,你不是应该用R建模么,在我和她解释了一会儿...

39940
来自专栏VRPinea

VR建模工具Blocks发布新版本,将更加易于使用

37490
来自专栏python爬虫日记

有关python下二维码识别用法及识别率对比分析

 最近项目中用到二维码图片识别,在python下二维码识别,目前主要有三个模块:zbar 、zbarlight、zxing。

62940
来自专栏数据科学与人工智能

【陆勤践行】小白一天之内玩转机器学习!

很多朋友都对机器学习心存各种敬畏之心。实际上,机器学习更多的也不过是我们“统计学习”的扩展延伸和行业实现的具体化。无非是通过样本数据发现规律性的东西而已。何况“...

20250
来自专栏专知

【下载】Scikit-learn作者新书《Python机器学习导论》, 教程+代码手把手带你实践机器学习算法

【导读】哥伦比亚大学老师Andreas C. Müller同时也是著名机器学习Python包scikit-learn的主要贡献者 Andreas Muller ...

69350
来自专栏AI研习社

刷爆朋友圈的 deepfakes 视频人物换脸是怎样炼成的?

最近,一个名叫deepfakes的技术火了,这是一个可以给视频人物换脸的技术。 这张图片源自雷神三预告片索尔大战浩克的片段,将索尔的脸替换为了Trump的,这个...

70750
来自专栏生信技能树

Bioconductor的质谱蛋白组学数据分析

46550

扫码关注云+社区

领取腾讯云代金券