一个 Rust 编写的分布式数据库实现,麻雀虽小五脏俱全。
简介
编译
通过 cargo build
编译,以及 cargo test
测试。
target/debug/toydb
target/debug/toysql
测试
除了常规的测试用例之外,还可以通过 test-each-file
包调用某个目录下的文件 (通过 std::include_str
宏读取文件),最终通过 goldenscript
包来运行。
可以通过如下命令查看或者执行某个用例。
cargo test -- --list
cargo test sql::tests::expressions::op_math_multiply
源码解析
Planner::build_expression()
参考
- RisingLight 实验性质的 OLAP 引擎。
- SQLParser 作为 DataFusion 的子项目,用来作 SQL 解析,支持标准的 SQL 语句。