#thrift #iotdb #api

iotdb-rs

Rust client for Apache IotDB

2 releases

0.0.2 Feb 5, 2021
0.0.1 Feb 5, 2021

#3 in #iotdb

Apache-2.0

430KB
11K SLoC

Logo

iotdb-rs

(WIP) Rust client for Apache IotDB

Crates.io Api Docs Crates.io License Rust Build Crates Publish


How to use

Add iotdb to your Cargo.toml

[dependencies]
iotdb = "0.0.2"

Example

use thrift::Error;

use iotdb::client::Client;
use iotdb::pretty;
use iotdb::session::Session;
use std::collections::HashMap;

fn main() -> Result<(), Error> {
    // create client 4 ways
    // let client = Client::new("localhost", "6667").create();
    // let client = Client::new("localhost", "6667").enable_rpc_compaction().create();
    // let client = Client::default().enable_rpc_compaction().create()?;
    let client = Client::default().create()?;

    // open a session
    let mut session = Session::new(client);

    // config session
    let mut config_map = HashMap::new();
    config_map.insert("", "");

    // session
    //     .user("root")
    //     .password("root")
    //     .fetch_size(2048)
    //     .zone_id("UTC+8")
    //     .config("", "")
    //     .config_map(config_map)
    //     .open()?;

    // using default config
    session.open()?;

    let res = session.query("SHOW TIMESERIES root")?;
    println!("{:#?}", res);
    pretty::result_set(res);

    session.close()?;

    Ok(())
}

Dependencies

~3.5–4.5MB
~63K SLoC