本文共 1480 字,大约阅读时间需要 4 分钟。
选择所需数据表,并点击Sync按钮
model中的维度表dwd_dim_user_info_his为拉链表、dwd_dim_sku_info为每日全量表,故使用整张表作为维度表,必然会出现订单表中同一个user_id或者sku_id对应多条数据的问题
- 在hive中创建维度表的临时表,该临时表中只存放维度表最新的一份完整的数据,在kylin中创建模型时选择该临时表作为维度表。
- 与方案一思路相同,但不使用物理临时表,而选用视图(view)实现相同的功能。(采用)
create view dwd_dim_user_info_his_view as select * from dwd_dim_user_info_his where end_date='9999-99-99';--全量维度表视图create view dwd_dim_sku_info_view as select * from dwd_dim_sku_info where dt=date_add(current_date,-1);--当前情形我们先创建一个2020-03-10的视图create view dwd_dim_sku_info_view as select * from dwd_dim_sku_info where dt='2020-03-15';
- 点击Models,点击"+New"按钮,点击"★New Model"按钮。
- 填写Model信息,点击Next
- 指定事实表
- 选择维度表,并指定事实表和维度表的关联条件,点击Ok
- 指定维度字段,并点击Next
- 指定度量字段,并点击Next
- 指定事实表分区字段(仅支持时间分区),点击Save按钮,model创建完毕
- 点击new, 并点击new cube
- 填写cube信息,选择cube所依赖的model,并点击next
- 选择所需的维度
- 选择所需度量值
- cube自动合并设置,cube需按照日期分区字段每天进行构建,每次构建的结果会保存在Hbase中的一张表内,为提高查询效率,需将每日的cube进行合并,此处可设置合并周期。
- Kylin高级配置(优化相关,暂时跳过)
- Kylin相关属性配置覆盖
- Cube信息总览,点击Save,Cube创建完成
- 构建Cube(计算),点击对应Cube的action按钮,选择build
- 选择要构建的时间区间,点击Submit (这里我选择我表中15号的数据)
- 点击Monitor查看构建进度
我换了一个表
select ui.gender, si.category3_id, dp.region_id, sum(od.total_amount)from dwd_fact_order_detail odjoin dwd_dim_user_info_his_view uion od.user_id=ui.idjoin dwd_dim_sku_info_view sion od.sku_id=si.idjoin dwd_dim_base_province dpon od.province_id=dp.idgroup by ui.gender,si.category3_id,dp.region_id;
自己不能胜任的事情,切莫轻易答应别人,一旦答应了别人,就必须实践自己的诺言。——华盛顿
转载地址:http://ytzhn.baihongyu.com/