kylin创建cube
- 创建立方体(Cube)
参考文档:
播客:http://tech.meiyou.com/?p=97
官网创建cube: http://kylin.apache.org/cn/docs15/tutorial/create_cube.html
Cube执行原理:
1、创建Cube:
2、编译Cube(Build Cube):
定义好Cube之后,Apache Kylin通过MapReduce,将存储在Hive中的事实表和维度表,转换成Cube,存储在HBase中,以实现快速分析查询,整个过程如下图所示:
STEP1. 根据Cube定义的事实表和维度,在Hive中生成一张中间表;
Create Intermediate Flat Hive Table;
STEP2. 使用MapReduce,从事实表中抽取维度的Distinct值,并以字典树的方式压缩编码,同时也对所有维度表进行压缩编码,生成维度字典;
Extract Fact Table Distinct Columns
Build Dimension Dictionary
STEP3. 计算和统计所有的维度组合,并保存,其中,每一种维度组合,称为一个Cuboid,后面会详细介绍。
Save Cuboid Statistics
STEP4. 创建HBase Table;
Create HTable
STEP5. 利用step1中间表的数据,使用MapReduce,生成每一种维度组合(Cuboid)的数据;
Build Base Cuboid Data;
Build N-Dimension Cuboid Data : 7-Dimension;
Build N-Dimension Cuboid Data : 6-Dimension;
。。。。。。
Build N-Dimension Cuboid Data : 2-Dimension;
Build Cube;
STEP6. 将Cuboid数据转换成HFile,并导入到HBase Table中:
Convert Cuboid Data to HFile;
Load HFile to HBase Table;
STEP7. 更新Cube信息,清理中间表:
Update Cube Info;
Garbage Collection;
整个Build过程结束。
创建cube
选择models->点击new下拉框-》选择new cube.
选择创建好的model,并填入cube name。notification email list是选填项,表示报警接收人邮件地址,多个邮件地址以逗号隔开。
然后next。选择dimession,有两种方式:一是手动添加dimession,二是使用自动生成,我们这里使用自动生成,然后勾选需要的字段。
选择纬度后如下。
然后next,选择指标
count是系统默认自带的,不要删除。
需要注意的是kylin中hive表中每一列字段的类型要求比较严格。dimession字段需要为String,用来加和的指标字段须为bigint或者decimal,添加了所有需要的指标后,点击next
设置merge时间。Kylin每次build会生成一张hbase表,merge操作会把多天数据合并成一张新的hbase表。可加快查询。
设置partition Start Date,即数据源开始时间,默认为1970-01-01.点击Next.
Includes:查询包含列字段。
Mandatory Dimensions:每次查询均会使用的维度可添加在此。比如某些情况下的partition column.
Hierarchy Dimensions:维度列中彼此间存在层级关系的列,比如“国家-省份-市-县”
Joint Dimensions:每次查询会同时使用或不使用的维度组合。
Aggregation Group:在不同的查询中,两组维度组合之间不会产生交叉,可选择此选项,比如所有的cube维度有 [ a,b,c,d,e,f ] 6个,每次查询中只会同时查与 [ a,b,c ] 相关的信息(比如[a],[a,c]等)而不会查询 [ d,e,f ],或者相反,则可选择此选项。
以上选择均可减少build过程中的数据量,是加快build与query速度的优化点之一。
接下来基本上就是next,如下图
然后保存,创建成功后如下:
kylin创建cube相关推荐
- Cube和Kylin创建Cube的过程
转载:http://www.aboutyun.com/thread-20757-1-1.html 简介 Kylin作为一个OLAP引擎,需要Cube模型支撑,在我们的工作过程中,在和用户以及相关的开发 ...
- 7.Apache Kylin 创建cube 第一阶段报错Create Intermediate Flat Hive 报错 MapredLocalTask
文章目录 一.问题 二.解决 一.问题 版本: cdh6.2.0 kylin3.0.0 构建cube第一阶段Create Intermediate Flat Hive,报错 FAILED: Execu ...
- kylin KV+cube方案分析
2019独角兽企业重金招聘Python工程师标准>>> 前言 在使用Kylin的时候,最重要的一步就是创建cube的模型定义,即指定度量和维度以及一些附加信息,然后对cube进行 ...
- CC00027.kylin——|HadoopOLAP_Kylin.V27|——|Kylin.v27|Kylin构建Cube|实时OLAP.V3|
一.定义数据源 ### --- 定义数据源~~~ # 1.创建数据源 ~~~ # 2.填写kafka集群信息 ~~~ # 3.通过kylin加载的json字段:创建流表维表格式 ~~~ # 4.查看加 ...
- kylin的cube的原理
Kylin基本原理及概念 2019-01-24阅读 1K0 "带你走进Apache Kylin的世界" Kylin版本:2.5.1 前言 膜拜大神,Kylin作为第一个由国人主导并 ...
- Kylin的cube模型
1. 数据仓库的相关概念 OLAP 大部分数据库系统的主要任务是执行联机事务处理和查询处理,这种处理被称为OLTP(Online Transaction Processing, OLTP),面向的是顾 ...
- shell调度kylin的cube构建任务
shell调度kylin的cube调度任务 shell shell 1 #!/bin/bash2 3 echo "kylin_host_port:${1}"4 echo " ...
- 大数据Kylin(六):Kylin构建Cube算法
文章目录 Kylin构建Cube算法 一.layered cubing
- Apache Kylin Buid Cube详细流程2
1. Cube的物理模型 Cube物理模型 如上图所示,一个常用的3维立方体,包含:时间.地点.产品.假如data cell 中存放的是产量,则我们可以根据时间.地点.产品来确定产量,同时也可以根据时 ...
最新文章
- jQuery,Ashx发送站内信
- linux下git修改密码后无法使用,git push后账号密码输出错误和修改
- Angular报错-Error: ENOENT: no such file or directory, scandir '/Users/echo_hx/node_modules'
- 在服务器上安装网站环境,如何在服务器上搭建JSP环境,需要安装哪些软件?
- 操作数据库(对战小游戏)
- 高等数学下-赵立军-北京大学出版社-题解-练习8.4
- VS Code前端开发利器-常用快捷键
- oracle查询优化不走缓存,Oracle数据库存储优化问题
- 哪个计算机无法做到双屏显示,[工具/ PC]如何在计算机上实现双屏显示?
- 8.6 edu25 ,577#div2 CF补题(二分 ,dp 与 贪心
- 洛谷 P3404 斐波那契(线段树)
- PHP实现敏感词过滤
- 如何更改ElementUI组件的图标大小以及标签属性
- 利用 MATLAB 编程实现 Newton 法与阻尼 Newton 法
- Ubuntu修改源镜像方法(22.04也能用)附带常用源镜像地址
- 你真的了解Franka吗?一文带你揭秘Franka常见问题,你想知道的都在这里!
- 【易语言】微信跳一跳教程详细版,分分钟让新手学会的教程(附源码)
- 数据库 流量切分_ABTEST平行流量切分和分层流量切分高效实现及优缺点分析
- Oracle05:什么是OCP认证
- 计算几何之 旋转卡壳 代码模板与证明
热门文章
- 攻防世界--MISC高手进阶区(持续更新)
- Android集成FFmpeg
- 【Calico bgp连接失败问题】calico-node pod处于0/1ready状态
- 利用onsubmit事件实现表单提交前的验证
- mysql 类型_MySQL数据类型
- 字符与字符串中的‘\0‘, ‘0‘, 0;strlen()函数求字符串长度计算方法(sizeof()验证)
- HCL Notes/Domino多瑙河第五个Beta版本Drop5发布
- 智能自适应边缘系统:探索与挑战
- 直播预告 | 细胞因子检测方法介绍
- 帝国cms网站建设的基本流程