9个版本

使用旧Rust 2015

0.0.9 2016年9月10日
0.0.8 2016年9月6日
0.0.3 2016年8月30日

#259数据库实现

每月21次下载

Apache-2.0/MIT

58KB
1.5K SLoC

dbkit

Join the chat at https://gitter.im/rust-dbkit/Lobby Build Status Crates.io

使用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