Introduction¶
CrossDB is a ultra high-performance, lightweight embedded and server OLTP RDBMS. It is designed for high-performance scenarios where the main memory can hold the entire database.
Features¶
- Supports multiple OS platforms: Linux, Windows, MacOS, FreeBSD, etc.
- Supports multiple CPU architectures: X86, ARM, PPC, MIPS, etc.
- Supports OnDisk, In-memory (IMDB), RamDisk, and Hybrid Storage.
- Supports the standard RDBMS model.
- Supports standard SQL and many extensions from MySQL.
- Supports multiple databases.
- Supports embedded and client-server modes (TBD).
- Supports primary keys and multiple secondary indexes.
- Supports HASH and RBTREE (TBD) indexes.
- Supports multi-column indexes.
- Supports exact match, leftmost match (TBD), and range match (TBD).
- Supports standard ACID transactions.
- Supports WAL for OnDisk storage (TBD).
- Supports multiple threads and multiple processes access.
- Supports table-level read-write locks.
- Supports Reader-Writer MVCC (write transaction doesn't block read transactions).
- Supports an embedded CrossDB shell with convenient auto-completion.
- Supports multi-statement APIs.
- Supports prepared statement APIs.
- Ultra high performance.
- Very simple: Simple header and library file.
- Zero config: No complex configuration, truly out-of-the-box.
Use Cases¶
- High-frequency trading (OLTP).
- High-performance queries.
- High-performance data management: Use CrossDB OnDisk DB to store data on HDD/SSD/Flash.
- High-performance IMDB: Use CrossDB In-Memory DB to manage process runtime data, replacing STL or hand-written data structures.
- Use CrossDB RamDisk DB to support process restartability and in-service software upgrades (ISSU) easily.
- Use CrossDB as a super-fast cache DB.