58.订单明细实时表和商品、品牌、spu 等维表关联

2.3.1 关联方式
(1)方法 1:用明细表依次和每个维度表进行关联
订单明细和商品关联
order_detail --> sku_id
订单明细商品宽表和 spu 关联
订单明细宽表(spu_id) --> spu 得到 spuname
订单明细商品和 spu 宽表和品牌关联
订单明细宽表(tm_id) --> tm 得到 tm_name
订单明细商品、spu、品牌宽表和品类关联
订单明细宽表(category3_id) --> cate 得到 cate_name
这种方式,订单明细事实表记录很多,每条记录都进行 4 次关联,效率较低。
(2)方法 2:维度退化
先用商品维度表和 Spu、品牌、品类维度表提前进行关联(维度退化)
订单明细和 --> sku 维度宽表
我们使用这种方式
2.3.2 在 Hbase 中创建表与维表对应
接收用户数据的新增和修改 保存到 hbase
(1)创建品牌表

 (2)创建分类表

 

 

2.3.3 创建对应的样例类
(1)品牌样例类

 (2)分类样例类

 (3)Spu 样例类

 (4)商品样例类

2.3.4 采集 Kafka 中维表数据到 Hbase 对应的表中
(1)采集 Kafka 中品牌数据到 Hbase

 

 

 

 (2)采集 Kafka 中分类数据到 Hbase

 

 (3)采集 Kafka 中 Spu 数据到 Hbase

 

 

 (4)采集 Kafka 中商品 Sku 数据到 Hbase

 

 

 

 

2.3.5 订单明细事实表和 Sku 维度关联
OrderDetailApp 中添加如下代码:

2.3.6 测试
(1)启动 Hdfs、ZK、Kafka、Redis、Hbase、Maxwell
(2)运行 BaseDBMaxwellApp
(3)运行 BaseTrademarkApp,初始化品牌数据,在 Hbase 品牌
表中查看效果

bin/maxwell-bootstrap --user maxwell --password 123456 --host hadoop202
--database gmall2020 --table base_trademark --client_id maxwell_1

(4)运行 BaseCategory3App,初始化分类数据,在 Hbase 分类表
中查看效果
bin/maxwell-bootstrap --user maxwell --password 123456 --host hadoop202
--database gmall2020 --table base_category3 --client_id maxwell_1

 

(5)运行 SpuInfoApp,初始化 SPU 数据,在 Hbase 的 SPU 表中
查看效果
bin/maxwell-bootstrap --user maxwell --password 123456 --host hadoop202
--database gmall2020 --table spu_info --client_id maxwell_1

 

(6)运行 SkuInfoApp,初始化商品数据,在 Hbase 商品表中查看
效果
bin/maxwell-bootstrap --user maxwell --password 123456 --host hadoop202 --database gmall2020 --table sku_info --client_id maxwell_1

 

(7)运行 OrderDetailApp,运行模拟生成业务数据的 jar 包,查看
控制台输出

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据开发工程师-宋权

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值