2023.11.25电商项目平台建设2 -四大业务之核销主题建模

news2024/11/26 2:32:17

1.数仓建模步骤

自下而上 ADS-DWS-DWM-DWD

 

2.DWD方案(清洗转换,降维拉宽) 

DWD层的表

dwd_sale_store_sale_dtl_i 门店销售明细宽表

维度dim        销售sale合成成的宽表

dwd_dim_date_f

日期表

store_sale_dtl

门店销售明细表

dwd_sale_store_sale_dtl_i

门店销售明细表

dwd_dim_source_type_map_f

交易类型映射表

store_sale_info

门店销售信息表

dwd_dim_store_f

分店信息表

store_sale_pay

门店销售支付表

dwd_dim_goods_f

门店商品信息表

dwd_dim_store_goods_f

店组信息表 

 

先合并销售的三张表(事实表),再去和维度的5张表合并,最后生成门店销售明细表的宽表

先与销售的3张事实表进行关联

销售日期:基于门店销售信息表中的库存日期处理
注意:所有时间数据都建议格式化下
 

母店编码和店铺编码: 母店编码为销售信息表的门店编码, 门店编码使用销售信息表的销售门店编码,如果没有, 再使用门店编码
交易来源:如果为null, 返回1,代表线下POS
会员类型: 如果以OL- 或者 SF- 开头的为1线上会员, 如果是''或者null为0非会员, 否则为实体卡会员
是否余额支付: 基于门店销售支付表,如果订单id为null返回0代表不是,否则返回1代表是
结算类型: 判断trade_id,如果为1 返回0(正常交易), 为2返回2, 如果为3,4返回5
母订单编号: 判断明细表中商品销售金额sale_amount如果小于0采用销售表的source_order_sn(退款单据ID),反之如果大于等于0采用销售表的parent_order_sn. 否则选order_no
item,sort,cashier_no,cashier_name,zt_id(member_center_sn),member_id: 如果为null设为0
支付时间: 选择商品信息表的支付日期pay_date
最后更新时间: 选择商品信息表的库存时间deal_date
是否为组合类型: 判断明细表combination_flag,如果为1返回1(是),否则返回0(否)
trade_mode_id,share_user_id,commission_amount: 如果为null, 设置为0
余额支付金额: 判断单据总支付金额如果等于0 , 则结果为0; 如果余额支付金额为null,则结果也为0,                                          否则使用余额支付金额 * (商品销售金额 / 单据总支付金额)

基于合并后的3个事实表结果,再去和其他五个维度表关联,生成最终商品明细宽表

刻钟: 判断0-14为1,15-29为2,30-44为3,45-59位4
刻钟数: 计算格式为hourly*4+刻钟
销售类型: 判断source_type或者original_source_type,当为1返回1, 当为9返回5 , 当为 4,5,6,7,8返回6. 当为11返回8 ,否则返回7
供应链类型: 判断门店商品信息表的 tag 商品标识为null, 返回4
采购仓库编号:	判断门店商品信息表的 dc_no 如果为null 返回-1
采购仓库名称:	判断门店商品信息表的 dc_name 如果为null 返回其他仓
采购柜组编号:	判断门店商品信息表的 group_no 如果为null, 返回-1
采购柜组名称:	判断门店商品信息表的 group_name 如果为null, 返回其他柜组
供应商ID: 判断门店明细表的vendor_id 如果为null, 返回0
是否日清: 判断门店商品信息表的is_clear 如果为null, 返回0
写入时间: 设置为昨天
核销时间: 设置为交易日期

冲减:冲减是会计学上使用较多的术语。是指收入或者费用之间相互抵消,冲减可以部分冲掉,也可以全额冲掉。 

 

3.DWM方案(提前聚合,业务合并)

4.DWS方案(基于主题需求-维度指标,形成大宽表)

5.ADS方案(基于主题需求-维度指标,分析和计算最终指标)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1257777.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

漏洞分析 | 经典的Shiro反序列化

0x01、前言 相信大家总是面试会问到java反序列化,或者会问到标志性的漏洞,比如shiro反序列化,或者weblogic反序列化漏洞。 那我就这篇文章为大家讲解一下,不懂的哥哥直接背一下,理解一下就好了。 至于为什么要选择sh…

力扣(LeetCode)907. 子数组的最小值之和(C++)

枚举 请对题目有疑惑的小伙伴看枚举思想,有助于掌握最基本的解题思路。对于本题数据范围,枚举算法会超时。 请看题目描述:给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续&…

锂电池污水如何处理

锂电池是目前应用广泛的重要电池类型,然而其生产过程和废弃处理中产生的污水对环境造成了不可忽视的影响。本文将探讨锂电池污水的处理方法,以期为环境保护和可持续发展作出贡献。 首先,了解锂电池污水的组成是解决问题的关键。锂电池污水通…

解释LED显示屏的裸眼3D特效原理

LED电子大屏幕的3D特效技术正在不断发展,而实现这一技术的原理主要包括分光、分色、分时和光栅等四种方法。这些原理都有各自的特点和应用场景,下面将对它们进行详细介绍。 1. 分光方法 分光方法是一种基于偏振光的3D显示技术。通过使用偏振滤镜或偏振片…

webshell之编码免杀

Unicode编码 jsp支持unicode编码&#xff0c;如果杀软不支持unicode查杀的话&#xff0c;基本上都能绕过 注意这里的\uuuu00可以换成\uuuu00uuu...可以跟多个u达到绕过的效果 将代码&#xff08;除page以及标签&#xff09;进行unicode编码&#xff0c;并条件到<%%>标签…

Drupal Core 8 PECL YAML 反序列化任意代码执行漏洞(CVE-2017-6920)

漏洞描述 影响软件&#xff1a;Drupal方式&#xff1a;反序列化参考链接&#xff1a;CVE-2017-6920:Drupal远程代码执行漏洞分析及POC构造效果&#xff1a;任意代码执行 漏洞环境及利用 搭建docker环境 环境启动后&#xff0c;访问 将会看到drupal的安装页面&#xff0c;一路…

仅2万粉,带了2.6万件的货!TikTok Shop美区达人周榜(11.13-11.19)

11月24日&#xff0c;TikTok Shop近日公布了美国市场和英国市场的全托管黑五大促战绩。数据显示&#xff0c;11月14日至11月20日&#xff0c;其美国市场的订单量环比10月20日-10月26日增长了205%。 家居户外热销品有&#xff1a;数码触摸屏相框、毛绒地毯、家居毛毯。黑马商品…

Callable、Future和FutrueTask详解

一、Callable介绍 1.1 Runnable介绍 Runnable是一个接口&#xff0c;里面声明了run方法。但是由于run方法返回值类型为void&#xff0c;所以在执行完成任务后&#xff0c;无法返回任何结果。 FunctionalInterface public interface Runnable {public abstract void run(); }…

手机爬虫用Fiddler详细教程

如果你正在进行手机爬虫的工作&#xff0c;那么一款强大而又实用的网络调试工具Fiddler将会是你的好帮手。今天&#xff0c;我将和大家分享一份详细的Fiddler教程&#xff0c;教你如何使用它来轻松捕获和分析手机App的网络请求。让我们一起来探索Fiddler的功能和操作&#xff0…

内衣洗衣机怎么选?内衣洗衣机便宜好用的牌子推荐

相信不少用户并不太在意衣服和内衣裤裤能不能同时洗&#xff0c;每次清洗都是把内衣裤与其他衣服一起放入洗衣机清洗&#xff0c;其实内衣裤不能直接跟大件的衣物一起放入洗衣机洗的&#xff0c;很容易会造成我们皮肤的瘙痒&#xff0c;我们大部分时间都在户外&#xff0c;暴露…

2023年11月27日历史上的今天大事件早读

1852年11月27日 计算机程序创始人阿达-洛芙莱斯去世 1893年11月27日 抗日爱国将领续范亭诞辰 1895年11月27日 《茶花女》作者、法国著名作家小仲马逝世 1899年11月27日 董其武将军诞辰 1902年11月27日 《新小说》创刊 1907年11月27日 割让刚果给比利时的条约签订 1925年1…

AMD ROCm软件栈组件介绍

AMD ROCm™ Platform 1.1 ROCm简介 参考&#xff1a;https://github.com/RadeonOpenCompute/ROCm ROCm&#xff08;Radeon Open Compute&#xff09;开源软件栈。 在NVIDIA GPU上&#xff0c;术语“CUDA”通常是指GPU编程编译器、API和运行时库&#xff0c;但ROCm不那么单一…

C语言基础篇5:指针(一)

指针是C语言的核心、精髓所在&#xff0c;用好了指针可以在C语言编程中起到事半功倍的效果。指针一方面可以提高程序的编译效率和执行速度&#xff0c;而且还可以通过指针实现动态的存储分配&#xff0c;另一方面使用指针可使程序更灵活&#xff0c;便于表示各种数据结构&#…

数据结构与算法编程题26

计算二叉树深度 #define _CRT_SECURE_NO_WARNINGS#include <iostream> using namespace std;typedef char ElemType; #define ERROR 0 #define OK 1 #define Maxsize 100 #define STR_SIZE 1024typedef struct BiTNode {ElemType data;BiTNode* lchild, * rchild; }BiTNo…

Python基础:字符串(String)详解(需补充完善)

1. 字符串定义 在Python中&#xff0c;字符串是一种数据类型&#xff0c;用于表示文本数据。字符串是由字符组成的序列&#xff0c;可以包含字母、数字、符号和空格等字符。在Python中&#xff0c;你可以使用单引号&#xff08;&#xff09;或双引号&#xff08;"&#xf…

在 Banana Pi BPI-R2 PRO RK3568开源路由器上安装 OpenWrt 23 快照固件

这是在 BPI-R2 Pro&#xff08;到内部 eMMC&#xff09;上安装 OpenWrt 23 快照固件的快速指南。该固件已预装 LuCI 和一些软件包。这是 2023 年 9 月 2 日的屏幕截图。 LuCI 主页概述。Linux内核是6.1.50 网络接口概述。PPPoE 连接已启动并正在运行 速度测试和 CPU 使用情况…

谈谈中间件设计的思路

前言 想要设计和真正理解中间件的架构理论和思想。对于开发来说需要具备三个关键的能力 1&#xff1a;基础通用技术的深入理解和运用2&#xff1a;了解和熟悉常见中间件的设计思想&#xff0c;且有自己的感悟,并且能按照自己的理解模仿写一写3&#xff1a;业务的高度理解能力…

赞比亚市场开发攻略,带你走进非洲“铜矿王国”

赞比亚是非洲最早跟中国建交的国家&#xff0c;跟我们经贸联系一直也比较紧密。赞比亚很多生产生活资料比较依赖进口&#xff0c;市场潜力还是不错的。今天就来给大家分享一下非洲这个铜矿王国的开发攻略。文章略长&#xff0c;大家点赞收藏关注慢慢看。 文章目录&#xff1a;…

格雷希尔针对J2044燃油管测试专用快速接头都有哪些及各自的应用场合

J2044燃油管是汽车燃油系统中常见的管口&#xff0c;如&#xff1a;燃油泵、燃油滤清器、喷油嘴等部件中都有这样的管口&#xff0c;为了保证燃油系统的正常运行&#xff0c;这些零部件在出厂前就需要对其进行多种测试&#xff0c;在测试前需要对J2044燃油管管口进行密封用于连…