(23)DWS 层与DWT 层
1.设计
DWS 层和DWT 层统称宽表层,这两层的设计思想大致相同,通过以下案例进行阐述。
1)问题引出:两个需求,统计每个省份订单的个数、统计每个省份订单的总金额
2)处理办法:都是将省份表和订单表进行join,group by 省份,然后计算。同样数据被计算了两次,实际上类似的场景还会更多。
那怎么设计能避免重复计算呢?
针对上述场景,可以设计一张地区宽表,其主键为地区ID,字段包含为:下单次数、下单金额、支付次数、支付金额等。上述所有指标都统一进行计算,并将结果保存在该宽表中,这样就能有效避免数据的重复计算。
2.总结
(1)需要建哪些宽表:以维度为基准。
(2)宽表里面的字段:是站在不同维度的角度去看事实表,重点关注事实表聚合后的度量值。
(3)DWS 和DWT 层的区别:DWS 层存放的所有主题对象当天的汇总行为,例如每个地区当天的下单次数,下单金额等,DWT 层存放的是所有主题对象的累积行为,例如每个地区最近7天(15天、30天、60天)的下单次数、下单金额等。
3.ADS层
对电商系统各大主题指标分别进行分析。
(23)DWS 层与DWT 层相关推荐
- 【电商数仓】数仓搭建之数据主题(data warehouse topic-- DWT)层(DWT层之首日和每日数据导入脚本)
文章目录 一 首日数据导入脚本 1 编写脚本 2 脚本内容 3 脚本使用 二 每日数据导入脚本 1 编写脚本 2 脚本内容 3 脚本使用 一 首日数据导入脚本 1 编写脚本 在/home/hzy/bi ...
- 数据仓库之电商数仓-- 3.3、电商数据仓库系统(DWT层)
目录 八.数仓搭建-DWT层 8.1 访客主题 8.2 用户主题 8.3 商品主题 8.4 优惠券主题 8.5 活动主题 8.6 地区主题 8.7 DWT层首日数据导入脚本 8.8 DWT层每日数据导 ...
- 数据仓库搭建DWT层
本篇只是DWT层,其他内容请关注我的博客!在<项目>专栏里!!! 本篇文章参考尚硅谷大数据项目写成! 目录 一.DWT层 1.设备主题宽表 2.会员主题宽表 3.商品主题宽表 4.活动主题 ...
- 2层,3层,4层交换机的区别与特点!!
二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中.具体的工作流程如下: (1 ...
- mysql高可用 持久层_MyBatis持久层框架使用总结 转载
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis . 2 ...
- 2层,3层,4层交换机的区别与特点
原文:https://blog.csdn.net/linxiaowu66/article/details/7969316 二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MA ...
- dao层和serivce层的作用和区别
文章载来源:[http://blog.csdn.net/qq_34825926/article/details/69346084] 访问数据库的传统方法 传统访问数据库的方法非常面向过程,分为以下几 ...
- 利用Event实现WinUI层与Bussiness层 跨层间动态提示
在项目架构时,首先我们会考虑采用WINUI层与Bussiness层分离的N层结构.那么在WinUI层与Bussiness层之间一些动态提示,可采用Event来实现. 比如,Bussiness层中要对n ...
- 计算机网络汇聚层,31. 接入层 汇聚层 核心层 三层典型网络架构
# 网络 网络.互联网络.企业级经典网络拓扑和家庭网络 # 互联网服务提供商 基于ISP和IXP的多层结构 # OSI 参考模型 程序员 :应用层.表示层.会话层.传输层 网络工程师:网络层和数 ...
最新文章
- mysql更改数据库数据存储目录_MySQL更改数据库数据存储目录
- R语言ggplot2可视化为复杂图自定义图例、手动构造图例(legend)实战
- python 微信模块_Python使用itchat模块实现简单的微信控制电脑功能示例
- Razor语法(一)
- 为不同目录设置Forms身份验证
- 常见Java面试题之如何实现对象克隆
- 698. Partition to K Equal Sum Subsets
- 详解数据存储的 6 种可选技术
- ZBlog插件简洁轻巧的编辑器 iceEditor修复版
- 我的Dll(动态链接库)学习笔记(转)
- 美的集团:已耗资4.86亿元回购847.4万股
- Unity 3D 中NGUI插件设置中文label
- lambda,reserve list, list comprehension, string of slice
- Https下字体文件无法加载的解决方案
- oracle unused 语法_【转】Oracle set unused的用法
- MCSA 70-740 windows存储相关的基本概念
- Java使用DFA算法处理敏感词汇
- 最难学的十大编程语言,C++排第二,它竟是第一名!不服
- Vue+Element实现tab页多页面切换
- 如何使用JavaScript来判断用户设备类型
热门文章
- 超简单随机图片API制作教程
- python高级 笔记 08 (TCP服务器增强 + 文件下载器 案例 综合应用)
- 《中国日报国际版》创刊,传播中国声音
- python验证码识别算法_Python网站验证码识别
- 《Deep Active Learning for Axon-Myelin Segmentation on Histology Data》--阅读笔记-Arxiv
- ae插件form_MG动画教程 | 那些会用AE插件的设计师都可以提前下班了
- Spring Boot项目 整合Swagger2
- 全面分析分布式监控CAT
- 文本情绪分析学习篇(四)
- Delphi读写文本文件