31 releases (14 breaking)

0.17.1 Apr 3, 2024
0.16.0 Mar 1, 2024
0.14.2 Nov 18, 2023
0.8.0 Jul 19, 2023
0.4.0 Mar 29, 2023

#1549 in Procedural macros

Download history 2687/week @ 2024-01-05 2726/week @ 2024-01-12 3062/week @ 2024-01-19 2995/week @ 2024-01-26 2921/week @ 2024-02-02 2329/week @ 2024-02-09 1970/week @ 2024-02-16 2686/week @ 2024-02-23 4378/week @ 2024-03-01 2783/week @ 2024-03-08 3432/week @ 2024-03-15 2922/week @ 2024-03-22 4082/week @ 2024-03-29 4352/week @ 2024-04-05 4559/week @ 2024-04-12 3124/week @ 2024-04-19

16,536 downloads per month
Used in 3 crates (via dbn)

Apache-2.0

35KB
777 lines

dbn

build Documentation license Current Crates.io Version pypi-version Slack

Databento Binary Encoding (DBN) is an extremely fast message encoding and storage format for normalized market data. The DBN specification includes a simple, self-describing metadata header and a fixed set of struct definitions, which enforce a standardized way to normalize market data.

All official Databento client libraries use DBN under the hood, both as a data interchange format and for in-memory representation of data. DBN is also the default encoding for all Databento APIs, including live data streaming, historical data streaming, and batch flat files.

This repository contains both libraries and a CLI tool for working with DBN files and streams. Python bindings for dbn are provided in the databento_dbn package.

For more details, read our introduction to DBN.

Features

  • Performant binary encoding and decoding
  • Highly compressible with Zstandard
  • Extendable fixed-width schemas

Usage

See the respective READMEs for usage details:

License

Distributed under the Apache 2.0 License.

Dependencies

~1.4–2MB
~42K SLoC