用户标签数据在ClickHouse的存储与使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户标签数据在ClickHouse的存储与使用相关的知识,希望对你有一定的参考价值。

参考技术A 宽表字段数量800+

子表A字段19,数据量3000W,子表B字段13,数据量5000W

对用户提交的条件拆分,分别从不同的表中把数据插入下发明细表( AggregatingMergeTree ),最终将数据按user_id去重后下发

对用户提交的条件拆分,分别从不同表中把user_id的 Bitmap 查询出来,将多组Bitmap合并后返回群组人数

源表使用 HDFS表引擎 直接读取hdfs中的子表,目标表建立大宽表使用 AggregatingMergeTree表引擎 实现子表导入的数据按排序键合并
使用 insert into 语句执行数据导入
使用 optimize 语句进行合并,合并前执行 SET optimize_throw_if_noop = 1 可以看到合并时的异常信息

这里由于Hive中的离线数据本身子表合并大宽表已经非常耗时了,用ClickHouse存储时不必要再浪费时间从离线大宽表

这里看到只执行了0.002秒,说明并没有真正去合并宽表数据,也没有任何的异常,这个问题导致了我们使用这种子表导入宽表合并数据的方案不可用

源表使用 HDFS表引擎 直接读取hdfs中的子表,目标表建立与hdfs表字段相同的子表
实时标签的表使用 AggregatingMergeTree表引擎 实现新增的数据按排序键合并

以上是关于用户标签数据在ClickHouse的存储与使用的主要内容,如果未能解决你的问题,请参考以下文章

《ClickHouse企业级应用:入门进阶与实战》8 基于ClickHouse Bitmap实现DMP用户画像标签圈人

clickhouse 20.x 与prometheus + grafana+ckman的集成

我用MRS-ClickHouse构建的用户画像系统,让老板拍手称赞

我用MRS-ClickHouse构建的用户画像系统,让老板拍手称赞

clickhouse,硬件管理与优化(cpu,内存,网络,存储,操作系统配置),profile管理,Quotas设置,约束管理,查询权限,用户管理配置等

clickhouse与kafka集成