7个版本
新版本 0.19.0 | 2024年8月14日 |
---|---|
0.18.2 | 2024年8月7日 |
0.18.1 | 2024年6月24日 |
0.17.3 | 2024年5月1日 |
0.17.0 | 2024年2月6日 |
在 数据库接口 中排名第 1398
每月下载量 307,719
被 13 个crate使用 (直接使用7个)
2MB
39K SLoC
Deltalake
Rust语言的Delta Lake本地实现
用法
API
let table = deltalake::open_table("./tests/data/simple_table").await.unwrap();
println!("{}", table.get_files());
CLI
首先进入 delta-inspect
目录,然后运行以下命令。请注意,测试数据位于 rust
目录,而不是 delta-inspect
❯ cargo run --bin delta-inspect files ../rust/tests/data/delta-0.2.0
part-00000-cb6b150b-30b8-4662-ad28-ff32ddab96d2-c000.snappy.parquet
part-00000-7c2deba3-1994-4fb8-bc07-d46c948aa415-c000.snappy.parquet
part-00001-c373a5bd-85f0-4758-815e-7eb62007a15c-c000.snappy.parquet
❯ cargo run --bin delta-inspect info ./tests/data/delta-0.2.0
DeltaTable(./tests/data/delta-0.2.0)
version: 3
metadata: GUID=22ef18ba-191c-4c36-a606-3dad5cdf3830, name=None, description=None, partitionColumns=[], createdTime=1564524294376, configuration={}
min_version: read=1, write=2
files count: 3
示例
示例文件夹展示了如何使用Rust API操作Delta表。
首先进入 rust
目录,然后可以使用 cargo run --example
命令运行示例。例如
cargo run --example read_delta_table
可选的cargo包功能
azure
- 启用Azure存储后端,以便与Azure Data Lake Storage Gen2账户中的Delta表一起工作。datafusion
- 启用Delta表的datafusion::datasource::TableProvider
特性实现,允许使用 DataFusion 进行查询。datafusion-ext
- 已弃用:datafusion
特性的别名gcs
- 启用Google存储后端,以便与Google Cloud Storage中的Delta表一起工作。json
- 启用parquet
crate的JSON功能,以实现更好的JSON互操作性。
开发
要运行本地机器上的s3集成测试,我们使用docker-compose启动AWS本地堆栈。在 delta-rs
仓库的根目录下运行 docker-compose up
来启动测试环境。
依赖关系
~36–59MB
~1M SLoC