ClickHouse在58用户增长中的实战与架构揭秘

版权申诉
0 下载量 118 浏览量 更新于2024-07-05 收藏 2.77MB PDF 举报
"2020年8月18-19日的58同城大数据应用实践会议中,资深大数据工程师曹德嵩分享了ClickHouse在58用户增长业务中的实际应用和经验。ClickHouse是由俄罗斯Yandex开发的列式数据库管理系统,因其出色的OLAP性能和高效性而备受瞩目。 ClickHouse的特点包括:作为一个完备的DBMS,它提供了关系模型和SQL查询支持;通过shard+replica机制实现线性扩展和高可用性;利用列式存储,确保数据一致性并优化压缩效率;拥有丰富的表引擎和向量化处理能力,提升多核和分布式查询的性能。然而,它也存在局限性,比如不支持事务、异步删除和更新,以及在高并发场景下可能表现不佳。 在58同城的实际应用中,ClickHouse构成了复杂的数据处理架构,涵盖了Spark、Flink等实时处理层,以及离线分析、画像系统和BI系统等多个环节。集群规模庞大,包含47个节点,总存储量超过150TB,每天处理大量新增数据(约8TB),且tp90(90%请求响应时间)保持在1096毫秒以内。应用场景广泛,包括产品、运营和分析师的实时查询,以及Sketch画像系统和用户增长分析。 Sketch画像系统是ClickHouse的重要应用之一,它利用AggregatingMergeTree表引擎结合Bitmap技术,实现根据标签快速圈选人群、进行交并补计算、分群效果分析,并保持查询响应迅速。该系统能够满足大规模数据处理的需求,展现了ClickHouse在58同城用户增长业务中的核心作用。 ClickHouse在58同城的实践中证明了自己的价值,但同时也需要针对其不足进行优化,以适应不断变化的业务需求。通过深入理解和精细化运维,ClickHouse成为了推动用户增长业务关键的数据基础设施。"