Tonbo incurs minimal cost for inserting and scanning structured data via Apache Arrow.
Tonbo incurs minimal cost for inserting and scanning structured data via Apache Arrow.
██████████████████████████ ██████████████████████████ ██████████████████████████ ██████████████████████████ ██████████████████████████ ▀▀██████████████████████ ▀████████████████████ ▀██████████████████ ▄▄ ▀████████████████ ▀██▄▄ ▀████▀█████████ ▀▀███▄▄ ███▀▀█▄████▀▀ ▀▀███▄▄█ ███▀▀ ██▄▄▄▄ ▄█▀ ▄██▄▄▄
Random range read with column projection:
╔═══════════════════════════════════════════════════════════════╗
║ ║
║ Tonbo | █████████▓▒ | 1666ms ║
║ RocksDB | ██████████████████████▓▒ | 3689ms ║
║ Sled | ███████████████████████▓▒ | 3837ms ║
║ ║
╚═══════════════════════════════════════════════════════════════╝
(lower is better) Latency (pct99)
CPU: AMD EPYC 7H12 RAM: 64GB DDR4 2933MHz * 8 DISK: SamSung 970 EVO Plus 4TB
2.2x faster than RocksDB
Because of Tonbo's native support for structured data zero-copy loading and projection pushing down, Tonbo is 2.2x faster than RocksDB.
We’re just getting started with commonly used async executors and file system implementations, there’s still plenty of room for further optimizations.
Vendor lock-in free
Tonbo is built as a thin wrapper over Arrow schema and Parquet format, which means you are able to use many analytic tools to can fully benefit from the Arrow ecosystem.
Combine agility of KV and convinient of structured
Thanks to Rust lifetime, type system and asynchronous, Tonbo allows user to save each overhead as need with safety: raw data reference, compile-time declared schema, and so on. And push-down support makes it convenient to query structured data: just about several minutes coding to be integrated into SQL engine for example.
From many sources to many targets
As an embedded database, Tonbo supports customizing runtime and file system, and also it is designed for running on kinds of target platforms, we will complete official support WASM / OPFS, Python asyncio and object storages in Sep 2024.