数据库查询引擎为何跑不过手写代码?从火山模型到编译执行的三十年突围

2008年,一位数据库研究员做了一个简单的实验:他用C++手写了一段处理TPC-H Query 1的代码,然后与当时最先进的数据库系统对比性能。结果令人震惊——手写代码比数据库快了整整一个数量级。这个结果刺痛了数据库社区:为什么精心设计的查询引擎,竟然输给了几行手写的循环? ...

9 min · 4500 words

Roaring Bitmaps:为什么这种压缩位图正在重塑大数据分析的存储范式

2014年,Daniel Lemire和Samy Chambi等人在arXiv上发表了一篇题为《Better bitmap performance with Roaring bitmaps》的论文。论文的核心结论令人印象深刻:相比当时主流的压缩位图方案WAH和Concise,Roaring bitmaps在交集操作上快了最多900倍,同时压缩率还提高了约2倍。这不是学术界的理论推演,而是基于真实数据集的实测结果。 ...

12 min · 5685 words

列式存储如何让数据分析提速百倍:从存储布局到向量化执行的技术真相

一个真实的数据对比揭示了令人震惊的性能差距:同样的1000万行数据,运行相同的分析查询,PostgreSQL需要12.2秒,而ClickHouse只需要453毫秒——27倍的差距。这不是硬件差异,不是索引设计,而是两种存储范式在数据仓库场景下的必然结果。 ...

9 min · 4480 words