数组枚举:一种提升数据处理效率的新型数据结构

2024-12-21

本文介绍了一种名为“数组枚举”(EoA)的数据结构,它与常用的“结构体数组”(SoA)类似,但将枚举类型作为数据结构的核心。EoA 通过将多个枚举值打包成一个数组,并使用单个标签标识整个数组的类型,从而减少了内存占用和分支预测开销,提升了数据处理效率,尤其适合 SIMD 优化。文章以数据库系统 TigerBeetle 为例,解释了 EoA 如何在批量处理中发挥作用,有效地分离控制平面和数据平面,从而实现更高的性能。

阅读更多
开发 EoA SIMD优化

从历史和第一性原理重新发现事务处理

2024-07-24

本文回顾了事务处理的演变历史,特别是Jim Gray提出的“DebitCredit”基准测试对行业的影响。文章指出,传统数据库在处理高并发事务时存在局限性,主要是因为行锁和网络往返时间导致的延迟。TigerBeetle数据库通过将“debit/credit”作为基本操作单元,并优化网络交互,实现了更高的交易处理性能,同时提升了安全性。

阅读更多