ClickHouse在超高核心数Intel Xeon处理器上的性能优化

2025-09-17
ClickHouse在超高核心数Intel Xeon处理器上的性能优化

Intel最新的处理器拥有数百个核心,为ClickHouse等分析型数据库带来了巨大机遇和挑战。来自Intel上海的工程师们通过系统地分析ClickHouse在超高核心数服务器上的性能,识别并优化了五个关键瓶颈:锁竞争、内存优化、并行化不足、SIMD指令利用和伪共享。通过减少锁的持有时间、改进内存分配器、并行化串行阶段、使用更智能的SIMD算法以及优化内存布局,他们显著提升了ClickHouse在超高核心数系统上的可扩展性,部分查询速度提升达10倍,整体性能提升达10%。这项工作突显了在超高核心数时代,数据库优化需要从算法和内存布局等多个层面进行改进。

阅读更多

面向 ClickHouse 的 OLAP ORM:Moose OLAP 的探索

2025-08-17
面向 ClickHouse 的 OLAP ORM:Moose OLAP 的探索

现代应用越来越依赖于基于大型数据集聚合的用户端分析和 AI 功能,这推动开发者转向 ClickHouse 等分析型数据库。文章探讨了为 OLAP 数据库构建 ORM 的可能性及挑战。直接将 OLTP ORM 扩展到 OLAP 会导致语义差异带来的问题。Moose OLAP 作为一个开源项目,尝试为 ClickHouse 提供类似 ORM 的接口,它借鉴了 OLTP ORM 的优点,但针对 OLAP 的特性进行了调整,例如处理 NULL 值和唯一性约束的差异。Moose OLAP 强调代码即模式,提供 OLAP 原生的语义和默认值,并支持版本化迁移,以应对 OLAP 环境中 schema 的动态变化。

阅读更多
开发 OLAP

PostgreSQL复制槽位创建中的一个棘手Bug及修复

2025-07-15
PostgreSQL复制槽位创建中的一个棘手Bug及修复

ClickPipes团队在使用PostgreSQL的逻辑复制槽位创建时遇到一个奇怪的bug:一个本来只需几秒钟的查询却耗时数小时,且无法终止。经过调查,发现这是PostgreSQL自身的一个bug,该bug在读副本上创建逻辑复制槽位时,由于等待主库事务完成而陷入长时间的休眠循环,导致无法中断。团队提交了一个补丁到PostgreSQL社区,该补丁添加了中断检查,有效解决了这个问题。此案例说明即使是成熟的数据库系统,也可能存在一些意想不到的边缘情况,开源社区的协作对于解决这些问题至关重要。

阅读更多
开发 逻辑复制

ClickHouse云的100PB级可观测性平台:LogHouse的架构演进

2025-06-21
ClickHouse云的100PB级可观测性平台:LogHouse的架构演进

ClickHouse云的内部日志平台LogHouse一年内从19PB增长到100PB以上,行数从40万亿增长到500万亿。为了应对20倍的事件增长,LogHouse团队开发了SysEx,一个自定义数据导出器,将CPU使用率降低到之前的10%以下。SysEx直接从ClickHouse系统表复制数据,避免了OpenTelemetry解析和编组的瓶颈。同时,LogHouse整合了ClickHouse原生的可观测性UI HyperDX,提供无缝的探索、关联和根本原因分析。

阅读更多
科技 LogHouse

ClickHouse获3.5亿美元C轮融资,赋能AI原生应用

2025-05-29
ClickHouse获3.5亿美元C轮融资,赋能AI原生应用

实时分析数据库ClickHouse宣布完成3.5亿美元C轮融资,总融资额超过6.5亿美元。本轮融资将用于扩展产品开发、支持全球扩张以及深化与构建下一代AI原生应用的客户和技术提供商的合作。ClickHouse凭借其高性能的列式存储引擎,能够在海量数据集上进行交互式分析查询,并以极低的延迟支持AI和ML应用程序、实时分析、云数据仓库和可观察性工作负载。该公司过去一年增长超过300%,服务于2000多家客户,包括Anthropic、特斯拉和Mercado Libre等知名企业。ClickHouse旨在解决AI时代实时数据平台的挑战,成为下一代智能数据产品的默认引擎。

阅读更多
科技

ClickHouse的懒惰加载:查询速度提升1500倍

2025-04-22
ClickHouse的懒惰加载:查询速度提升1500倍

ClickHouse数据库通过一项名为“懒惰加载”的新优化,将查询速度提升了1500倍。这项技术延迟读取列数据,直到实际需要时才读取,从而显著减少了不必要的I/O操作。文章以亚马逊评论数据集为例,详细解释了懒惰加载与其他I/O优化技术(例如列存储、稀疏主键索引和PREWHERE)如何协同工作,最终将一个查询的执行时间从219秒缩短到139毫秒。懒惰加载尤其适用于Top N查询,它无需修改SQL代码即可大幅提升性能。

阅读更多
数据库 懒惰加载

ClickHouse拥抱Rust:一次充满挑战的集成之旅

2025-04-09
ClickHouse拥抱Rust:一次充满挑战的集成之旅

ClickHouse数据库,原本使用C++编写,为了吸引更多Rust开发者并扩展功能,开启了集成Rust的旅程。文章详细描述了这一过程,从最初选择BLAKE3哈希函数作为试点项目,到集成PRQL查询语言和Delta Lake库,期间经历了构建系统集成、内存管理、错误处理、交叉编译等诸多挑战。虽然过程中遇到了一些问题,例如Rust库的bug、庞大的符号名以及与C++代码的互操作性问题,但ClickHouse团队最终克服了这些困难,成功将Rust集成到项目中,为未来发展铺平了道路。

阅读更多
开发

ClickHouse 新型 JSON 数据类型:构建过程解析

2024-10-22
ClickHouse 新型 JSON 数据类型:构建过程解析

本文介绍了 ClickHouse 如何构建新的 JSON 数据类型,该类型解决了传统 JSON 实现的瓶颈问题,实现了真正的列式存储。文章详细解释了构建过程中的两个基础组件:Variant 类型和 Dynamic 类型,并阐述了如何利用这两个组件实现新的 JSON 类型,该类型支持动态变化数据、高性能的真正列式存储、可扩展性和可调优性。文章还介绍了新的 JSON 类型如何解决 JSON 数据存储和查询中的挑战,例如防止列数据文件过多、实现密集存储以及高效读取 JSON 路径等。

阅读更多
未分类