Supersonic:一个面向列的数据库查询引擎

jopen 11年前

Supersonic 是一个超快速的、针对列存储数据库(Column-oriented DBMS)的查询引擎库,使用 C++ 编写。

  Supersonic 提供了一组大量使用缓存相关算法、SIMD 指令和矢量化操作的转换原语,并可以利用现代的超线程 CPU 的优势。Supersonic 主要被用来作为各种数据仓库项目的后端。它的主要特性包括:

  1. 速度:

  • 缓存意识
  • 指令流水线技术
  • SIMD 使用
  • 高效的内存分配
  • 自定义数据结构

  2. 可靠性

  • 故障处理
  • 高测试覆盖范围(开发中)

  3. 健壮性

  • 支持标准的列存储数据库操作
  • 广泛的专属表达式(包括许多数学、字符串和日期操作功能)