#时间序列数据库 #时间序列 #协议 #API 客户端

sonnerie-api

用于 Sonnerie 时间序列数据库的客户端 API

9 个不稳定版本 (3 个重大更改)

使用旧的 Rust 2015

0.4.1 2018年12月14日
0.4.0 2018年11月26日
0.3.0 2018年10月20日
0.2.3 2018年9月18日
0.1.1 2018年9月7日

#2697 in 数据库接口

BSD-2-Clause

48KB
1.5K SLoC

此库作为 sonnerie 的 API 前端。

有关更多信息,请参阅该库。

由于此库为 Sonnerie 提供了 Rust API,因此它也有文档


lib.rs:

这是一个简单的 Sonnerie 时间序列数据库客户端 API。

它允许您进行各种插入和读取操作。

示例

extern crate sonnerie_api;
fn main() -> std::io::Result<()>
{
    let stream = std::net::TcpStream::connect("localhost:5599")?;
    let mut client = sonnerie_api::Client::new(stream)?;
    // read a series (a read transaction is automatically created and closed)
    // start a write transaction
    client.begin_write()?;
    client.create_series("fibonacci", "u")?;
    client.add_value(
        "fibonacci",
        &"2018-01-06T00:00:00".parse().unwrap(),
        13.0,
    )?;
    let results: Vec<(sonnerie_api::NaiveDateTime, Vec<sonnerie_api::OwnedColumn>)> =
        client.read_series("fibonacci")?;
    for row in &results
    {
        // interpret each column as an integer
        for col in &row.1 { let _: u32 = col.from(); }
    }
    // save the transaction
    client.commit()?;
    Ok(())
}

依赖项

~1MB
~19K SLoC