#performance #api #q #high #idiomatic #api-bindings #wrapper

kdb

Idiomatic, High performance API for using KDB+ and Q from Rust

3 unstable releases

0.3.0 Jun 28, 2021
0.2.1 Feb 12, 2021
0.2.0 Feb 12, 2021

#1865 in Database interfaces

MIT license

89KB
2K SLoC

Rust KDB

rust-kdb is an idiomatic Rust wrapper around the C API for KDB+, the ultra fast time series database from KX Systems.

Docs.rs Crates.io MIT licensed

Check out the examples for more information on using it. Performance should be extremely good - there is little to no overhead over and above using the API directly.

Compilation

In order to build the library or run the tests or any of the examples, you'll need to have libkdb.a available somewhere in LIBRARY_PATH. If you'd rather not use library path, you can set the variable LKDB_LIB_DIR instead.

Embedding

To use the library in an embedded context, compile with the the embedded feature. Make sure that you are compiling with the right architecture, and linking to the right version of libkdb.a for that architecture (either the 32-bit or 64-bit edition).

Future plans

  1. Table support!
  2. There are a few API calls's that aren't supported yet.
  3. Add better integration between chrono/std::time and the KDB time types.

Dependencies

~0.5–1MB
~22K SLoC