DBMS > BaseX vs. HarperDB vs. KeyDB vs. ObjectBox vs. RisingWave
System Properties Comparison BaseX vs. HarperDB vs. KeyDB vs. ObjectBox vs. RisingWave
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | BaseX Xexclude from comparison | HarperDB Xexclude from comparison | KeyDB Xexclude from comparison | ObjectBox Xexclude from comparison | RisingWave Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Light-weight Native XML DBMS with support for XQuery 3.0 and interactive GUI. | Ultra-low latency distributed database with an intuitive REST API supporting NoSQL and SQL (including joins). Deployment of functions and databases simultaneously with a consolidated node-level architecture. | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | Extremely fast embedded database for small devices, IoT and Mobile | A distributed RDBMS for stream processing, wire-compatible with PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Native XML DBMS | Document store | Key-value store | Object oriented DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | basex.org | www.harperdb.io | github.com/Snapchat/KeyDB keydb.dev | objectbox.io | www.risingwave.com/database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.basex.org | docs.harperdb.io/docs | docs.keydb.dev | docs.objectbox.io | docs.risingwave.com/docs/current/intro | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | BaseX GmbH | HarperDB | EQ Alpha Technology Ltd. | ObjectBox Limited | RisingWave Labs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2007 | 2017 | 2019 | 2017 | 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 10.7, August 2023 | 3.1, August 2021 | 1.2, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD license | commercial free community edition available | Open Source BSD-3 | Open Source Apache License 2.0 | Open Source Apache Version 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Node.js | C++ | C and C++ | Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux OS X | Linux | Android iOS Linux macOS Windows | Docker Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | dynamic schema | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no XQuery supports types | yes JSON data types | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes | Standard SQL-types and JSON | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes by using the Redis Search module | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like data manipulation statements | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP API RESTXQ WebDAV XML:DB XQJ | JDBC ODBC React Hooks RESTful HTTP/JSON API WebSocket | Proprietary protocol RESP - REdis Serialization Protoco | Proprietary native API | JDBC PostgreSQL wire protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# Haskell Java JavaScript Node.js Lisp Perl PHP Python Qt Rebol Ruby Scala Visual Basic | .Net C C# C++ ColdFusion D Dart Delphi Erlang Go Haskell Java JavaScript (Node.js) Lisp MatLab Objective C Perl PHP PowerShell Prolog Python R Ruby Rust Scala Swift | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | C C++ Dart Go Java JavaScript planned (as of Jan 2019) Kotlin Python planned (as of Jan 2019) Swift | Go Java JavaScript (Node.js) Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Custom Functions since release 3.1 | Lua | no | UDFs in Python or Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via events | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | A table resides as a whole on one (or more) nodes in a cluster | Sharding | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | yes the nodes on which a table resides can be defined | Multi-source replication Source-replica replication | online/offline synchronization between client and server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Strong eventual consistency with CRDTs | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | multiple readers, single writer | Atomic execution of specific operations | Optimistic locking, atomic execution of commands blocks and scripts | ACID | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes, using LMDB | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Users with fine-grained authorization concept on 4 levels | Access rights for users and roles | simple password-based access control and ACL | yes | Users and Roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BaseX | HarperDB | KeyDB | ObjectBox | RisingWave | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | The on-device Vector Database for Android and Java Vector search: making sense of search queries Python on-device Vector and Object Database for Local AI Evolution of search: traditional vs vector search On-device Vector Database for Dart/Flutter | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BaseX | HarperDB | KeyDB | ObjectBox | RisingWave | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | XML Injection Attacks: What to Know About XPath, XQuery, XXE & More 9 Skills You Need to Become a Data Engineer provided by Google News | Meet HarperDB, Winner of the Startups of the Year in Denver Startups of the Year 2023: Meet HarperDB - A Database and Application Development Platform Unlocking immersive golfing experiences with AWS Wavelength | Amazon Web Services A sharper HarperDB, connectivity done auspiciously Stephen Goldberg Named 2023 Bill Daniels Ethical Leader of the Year | CU Denver Business School News provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Garnet–open-source faster cache-store speeds up applications, services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? Redis 6 arrives with multithreading for faster I/O provided by Google News | The Megashift Towards Decentralized Edge Computing provided by Google News | Streaming Databases: Embracing the Convergence of Stream Processing and Databases RisingWave Cloud Democratizes Event Stream Processing, Making It Affordable at Cloud Scale Ibis 8 Adds Streaming Building a Formula 1 Streaming Data Pipeline With Kafka and Risingwave Open Source Ibis 8.0 Lets Data Teams Write Code Once and Use Across Local, Batch and Streaming Query Engines ... provided by Google News |
Share this page