简体中文 | English
EasyDB 是一个由 Rust 编写的 SQL 助手,旨在简化文本文件查询过程。通过 EasyDB,你可以将多个文本文件视为一个数据库,并使用 SQL 进行查询。它支持多种文件格式,包括 CSV、NdJson、JSON、xlsx 和 Parquet 文件,无需进行文件转换,开箱即用。
底层采用了由 Rust 编写的高性能可扩展查询引擎 DataFusion
。
- 支持 CSV 文件
- 支持 NdJson 文件
- 支持 TSV 文件
- 支持 xlsx 文件 - beta
- 使用标准 SQL 语句对文件数据进行查询
- 优化异常提示
- 根据路径自动识别表
- 自动生成 table schema
- 支持输出更多数据类型
- 支持
select * from '/path/example.csv'
直接访问本地文件,不需要提前create table
- 支持 s3 远程文件
- 支持 JSON 文件
- 支持多路径
- 支持 MySQL 表
- 支持 Parquet 文件
- 支持 Tsv 文件
- 支持 xlsx 文件
- xlsx 文件性能优化(提高兼容性)
- 增加 session 减少文件载入次数
git clone https://github.com/shencangsheng/easy_db.git
cd easy_db
docker compose up -d
# http://127.0.0.1:8088
select *
from '/var/lib/easydb/example/order*.csv'
create table user
(
) location 'example/user.csv'
create table log
(
) location 'example/2025*.log'
select *
from user as t1
inner join log as t2 on (t1.id = t2.user_id)
这些开源库用于创建本项目。
A short snippet describing the license (MIT)
MIT © Cangsheng Shen