questdb-rs 4.0.3

QuestDB Client Library for Rust
Documentation
# QuestDB Client Library for Rust

Official Rust client for [QuestDB](https://questdb.io/), an open-source SQL
database designed to process time-series data, faster.

The client library is designed for fast ingestion of data into QuestDB via the
InfluxDB Line Protocol (ILP).

* [QuestDB Database docs]https://questdb.io/docs/
* [Docs on InfluxDB Line Protocol]https://questdb.io/docs/reference/api/ilp/overview/

## Quick Start

To start using `questdb-rs`, add it as a dependency of your project:

```bash
cargo add questdb-rs
```

Then you can try out this quick example, which connects to a QuestDB server
running on your local machine:

```rust no_run
use questdb::{
    Result,
    ingress::{
        Sender,
        Buffer,
        TimestampNanos}};

fn main() -> Result<()> {
   let mut sender = Sender::from_conf("http::addr=localhost:9000;")?;
   let mut buffer = Buffer::new();
   buffer
       .table("sensors")?
       .symbol("id", "toronto1")?
       .column_f64("temperature", 20.0)?
       .column_i64("humidity", 50)?
       .at(TimestampNanos::now())?;
   sender.flush(&mut buffer)?;
   Ok(())
}
```

## Docs

Most of the client documentation is on the
[`ingress`](https://docs.rs/questdb-rs/4.0.3/questdb/ingress/) module page.

## Crate features

This Rust crate supports a number of optional features, in most cases linked
to additional library dependencies.

For example, if you want to work with Chrono timestamps, use:

```bash
cargo add questdb-rs --features chrono_timestamp
```

### Default-enabled features

* `ilp-over-http`: Enables ILP/HTTP support via the `ureq` crate.
* `tls-webpki-certs`: Supports using the `webpki-roots` crate for TLS
  certificate verification.

### Optional features

These features are opt-in:

* `chrono_timestamp`: Allows specifying timestamps as `chrono::Datetime` objects.
* `tls-native-certs`: Supports validating TLS certificates against the OS's
  certificates store.
* `insecure-skip-verify`: Allows skipping server certificate validation in TLS
  (this compromises security).

## C, C++ and Python APIs

This crate is also exposed as a C and C++ API and in turn exposed to Python.

* This project's [GitHub page]https://github.com/questdb/c-questdb-client
  for the C and C++ API.
* [Python bindings]https://github.com/questdb/py-questdb-client.

## Community

If you need help, have additional questions or want to provide feedback, you
may find us on [Slack](https://slack.questdb.io/).

You can also sign up to our [mailing list](https://questdb.io/community/) to
get notified of new releases.