分享

大数据技术之高频面试题(八):业务交互数据分析

本帖最后由 BGnv5 于 2020-10-26 21:47 编辑

问题导读:
1、电商业务流程是怎样的?
2、MySql中表是如何分类的?
3、什么是关系型数据库中的范式?

上一篇:大数据技术之高频面试题(七):用户行为数据分析(下篇)

6.1 电商常识
SKU:一台银色、128G内存的、支持联通网络的iPhoneX
SPU:iPhoneX
Tm_id:品牌Id苹果,包括IPHONE,耳机,mac等

6.2 电商业务流程
1.png

6.3 业务表关键字段
6.3.1 订单表(order_info)
2.png
6.3.2 用户表
3.png
6.3.3 订单详情表(order_detail)
4.png
6.3.4 商品表
5.png
6.3.5 商品一级分类表
6.png
6.3.6 商品二级分类表
7.png
6.3.7 商品三级分类表
8.png
6.3.8 支付流水表
9.png
订单表跟订单详情表有什么区别?
    订单表的订单状态会变化,订单详情表不会,因为没有订单状态。
    订单表记录user_id,订单id订单编号,订单的总金额order_status,支付方式,订单状态等。
    订单详情表记录user_id,商品sku_id ,具体的商品信息(商品名称sku_name,价格order_price,数量sku_num)

6.4 MySql中表的分类
实体表,维度表,事务型事实表,周期性事实表
其实最终可以把事务型事实表,周期性事实表统称实体表,实体表,维度表统称维度表

订单表(order_info)(周期型事实表)
订单详情表(order_detail)(事务型事实表)
商品表(实体表)
用户表(实体表)
商品一级分类表(维度表)
商品二级分类表(维度表)
商品三级分类表(维度表)
支付流水表(事务型实体表)

6.5 同步策略
10.png
实体表,维度表统称维度表,每日全量或者每月(更长时间)全量
事务型事实表:每日增量
周期性事实表:拉链表

6.6 关系型数据库范式理论
1NF:属性不可再分割(例如不能存在5台电脑的属性,坏处:表都没法用)
2NF:不能存在部分函数依赖(例如主键(学号+课名)-->成绩,姓名,但学号--》姓名,所以姓名部分依赖于主键(学号+课名),所以要去除,坏处:数据冗余)
3NF:不能存在传递函数依赖(学号--》宿舍种类--》价钱,坏处:数据冗余和增删异常)
Mysql关系模型:关系模型主要应用与OLTP系统中,为了保证数据的一致性以及避免冗余,所以大部分业务系统的表都是遵循第三范式的。
Hive 维度模型:维度模型主要应用于OLAP系统中,因为关系模型虽然冗余少,
但是在大规模数据,跨表分析统计查询过程中,会造成多表关联,这会大大降低执行效率。
所以HIVE把相关各种表整理成两种:事实表和维度表两种。所有维度表围绕着事实表进行解释。

6.7 数据模型
雪花模型、星型模型和星座模型
(在维度建模的基础上又分为三种模型:星型模型、雪花模型、星座模型。)
星型模型(一级维度表),雪花(多级维度),星座模型(星型模型+多个事实表)


没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /5 下一条