9个版本
使用旧Rust 2015
0.0.9 | 2016年9月10日 |
---|---|
0.0.8 | 2016年9月6日 |
0.0.3 | 2016年8月30日 |
#259 在 数据库实现
每月21次下载
58KB
1.5K SLoC
dbkit
使用Rust编写的列式查询处理引擎。dbkit Rust库套件的一部分。dbkit不是一个独立的数据库,而是一组库,提供了构建数据库或类似数据处理应用程序的构建块。
dbkit可用于构建
- 它可以用来实现OLAP数据库的部分
- 构建使用关系代数/演算运算符的(大数据)工作流管道
- 构建操作结构化数据的工具
由于项目在早期阶段,并且目前正处于快速开发中,即使是次要版本也没有提供向后兼容性。
灵感来源
dbkit受到了谷歌的Supersonic列式查询引擎的启发。虽然dbkit从Supersonic中汲取了许多灵感,但它并不打算将C++直接移植到Rust。
目标
- 表示模式与数据的构建块
- 关系操作和表达式的实现 进行中
- 查询AST树表示
- 操作的单指令多数据(SIMD)实现
- 操作的开源计算语言(GPU OpenCL)实现
文档
来自docs.rs的自动生成文档
需求
项目需要Rust语言编译器和cargo来构建。由于项目大量使用仅在nightly Rust中存在的特性,目前项目只使用nightly通道构建。
Rust不安全
项目在底层原语中广泛使用不安全Rust。我非常希望收到可以减少使用不安全代码(在不牺牲性能的情况下)的PR。
依赖关系
~1MB
~19K SLoC