Skip to content

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

Name CrossDB
Description Ultra High-performance Lightweight Embedded and Server OLTP RDBMS✨
Primary database model Relational DBMS
Secondary database models Document store (TBD)
Key-value store(TBD)
Website crossdb.org
Technical documentation crossdb.org/intro
Developer JC Wang
Initial release 2023
License Open Source, MPL
Cloud-based only no
Implementation language C
Server operating systems Server-Less Mode
Embedded Server Mode
Standalone Server Mode
Linux/MacOS/Windows/FreeBSD
32-bit or 64-bit X86, ARM, PowerPC, MIPS, etc
Data scheme yes
Typing yes
BOOL
TINYINT, SMALLINT, INT, BIGINT
TIMESTAMP
FLOAT, DOUBLE
CHAR, VARCHAR
BINARY, VARBINARY
INET(IPv4/IPv6 host and subnet), MAC address
XML support no
Secondary indexes yes
HASH, RBTREE
SQL yes, many extensions from MySQL
APIs and other access methods Proprietary native APIs
Multi-statement APIs
Prepared statement APIs
JDBC (TBD)
ODBC (TBD)
Supported programming languages C, C++, Python, GO, Rust
More bindings (TBD)
Server-side scripts LUA (TBD)
Triggers yes, native languages
Partitioning methods none
Replication methods Source-replica replication (TBD)
Multi-source replication (TBD)
Logical Replication (TBD)
Data Subscription yes (TBD)
MapReduce no
Consistency concepts Immediate Consistency
Foreign keys yes (TBD)
TTL yes (TBD)
Transaction concepts ACID
Concurrency yes
Table-level read-write locks
Row-level read-write locks (TBD)
Reader-Writer MVCC (write transaction doesn't block read transactions)
PostgreSQL-like MVCC (TBD)
Durability yes, WAL
In-memory capabilities yes
User concepts yes (TBD)
Storage Model Row-oriented On-Disk, In-Memory, RamDisk
Hybrid Storage (on a table-by-table basis, tables can be designated for in-memory or on-disk storage)
Admin Embedded shell
xdb-cli tool
telnet
WEB GUI (TBD)

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.

Comments