#presto #trino #prestosql

prusto

一个 presto/trino 客户端库

11 个版本

0.5.1 2023年10月19日
0.5.0 2023年2月27日
0.4.0 2022年2月7日
0.3.3 2021年6月8日
0.1.1 2020年10月9日

#366数据库接口

Download history 156/week @ 2024-03-13 43/week @ 2024-03-20 35/week @ 2024-03-27 172/week @ 2024-04-03 161/week @ 2024-04-10 92/week @ 2024-04-17 100/week @ 2024-04-24 107/week @ 2024-05-01 292/week @ 2024-05-08 243/week @ 2024-05-15 112/week @ 2024-05-22 95/week @ 2024-05-29 145/week @ 2024-06-05 226/week @ 2024-06-12 223/week @ 2024-06-19 124/week @ 2024-06-26

732 每月下载量
connectorx 中使用

MIT 许可证

105KB
3K SLoC

Prusto

一个用 Rust 编写的 presto/trino 客户端库。

安装

# Cargo.toml
[dependencies]
prusto = "0.5"

为了将此 crate 作为 presto 客户端使用,请启用 "presto" 功能。

# Cargo.toml
[dependencies]
prusto = { version = "0.5", features = ["presto"] }

示例

use prusto::{ClientBuilder, Presto};

#[derive(Presto, Debug)]
struct Foo {
    a: i64,
    b: f64,
    c: String,
}

#[tokio::main]
async fn main() {
    let cli = ClientBuilder::new("user", "localhost")
        .port(8090)
        .catalog("catalog")
        .build()
        .unwrap();

    let sql = "select 1 as a, cast(1.1 as double) as b, 'bar' as c ";

    let data = cli.get_all::<Foo>(sql.into()).await.unwrap().into_vec();

    for r in data {
        println!("{:?}", r)
    }
}

许可证

MIT

依赖项

~11–25MB
~384K SLoC