Clickhouse在货品标签场景的应用

背景

在电商场景中,我们经常需要对货品进行打标签的操作,简单来说就是对货品进行各种分类,按照价格段进行分组,此时运营人员就可以通过价格段捞取到满足条件的商品了,本文就来简单看下这个场景如何在clickhouse中实现

货品标签

1.创建一种商品的明细表,包含每个商品的各种标签属性的表:

java 复制代码
CREATE TABLE IF NOT EXISTS merchardis_src_tbl
    mid UInt64   //商品id
    category String //商品分类
    price Int32  // 商品价格
)ENGINE = ReplicatedMergeTree

2.创建一个标签属性的位图表,表示对应标签下的商品列表

java 复制代码
CREATE TABLE IF NOT EXISTS tag_bitmap_tbl
(
    tagname String,   --标签名称
    tagvalue String,  --标签值
    type  String //标签类型
    tagbitmap AggregateFunction(groupBitmap, UInt64 )  --mid集合
)
ENGINE = ReplicatedAggregatingMergeTree

3.从商品明细表中把数据聚合成标签后放入标签表中

java 复制代码
-- 导入数据, 将同一个分类的所有mid使用groupBitmapState函数合并成一个bitmap
INSERT INTO tag_bitmap_tbl
SELECT category,categoryName,'商品类型' as type groupBitmapState(mid)
FROM merchardis_src_tbl
GROUP BY category,categoryName;

自此,我们就有了一张货品标签的属性表,运营就可以基于这种表进行各种查询操作了

相关推荐
lhyzws15 小时前
CENTOS上的网络安全工具(三十七)SPARK on CLICKHOUSE
clickhouse
海南java第二人16 小时前
用户行为漏斗分析是什么?ClickHouse 如何轻松实现?
clickhouse
时空无限2 天前
clickhouse 数据损坏无法启动问题修复
clickhouse
阿演4 天前
我把这个桌面数据库工具又升级了一轮:现在支持 ClickHouse,还能可视化建表和改表了
数据库·clickhouse·ai编程·数据库连接工具
海南java第二人4 天前
ClickHouse 稀疏索引深度解析:为什么 OLAP 数据库不用 B-Tree?
数据库·clickhouse
海南java第二人5 天前
ClickHouse 主键索引详解:不是唯一标识,而是排序规则
clickhouse
海南java第二人5 天前
ClickHouse 列式存储深度解析:优点、缺点与选型实战
数据库·clickhouse
努力攻坚操作系统6 天前
ClickHouse虚拟列
clickhouse
海南java第二人6 天前
ClickHouse 备份与恢复完全指南:从物理拷贝到内置备份的实战选择
clickhouse·备份与恢复
海南java第二人7 天前
ClickHouse Sharding 分片与 Partitioning 分区:区别、联系与生产实践
clickhouse·分区·分片