DBMS > AlaSQL vs. H2 vs. KeyDB vs. SQL.JS vs. SurrealDB
System Properties Comparison AlaSQL vs. H2 vs. KeyDB vs. SQL.JS vs. SurrealDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | AlaSQL Xexclude from comparison | H2 Xexclude from comparison | KeyDB Xexclude from comparison | SQL.JS Xexclude from comparison | SurrealDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | JavaScript DBMS library | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | Port of SQLite to JavaScript | A fully ACID transactional, developer-friendly, multi-model DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Key-value store | Relational DBMS | Document store Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | alasql.org | www.h2database.com | github.com/Snapchat/KeyDB keydb.dev | sql.js.org | surrealdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/AlaSQL/alasql | www.h2database.com/html/main.html | docs.keydb.dev | sql.js.org/documentation/index.html | surrealdb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Andrey Gershun & Mathias R. Wulff | Thomas Mueller | EQ Alpha Technology Ltd. | Alon Zakai ![]() | SurrealDB Ltd | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2005 | 2019 | 2012 | 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.2.220, July 2023 | v1.5.0, May 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | Open Source ![]() | Open Source ![]() | Open Source ![]() | Open Source | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | JavaScript | Java | C++ | JavaScript | Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less, requires a JavaScript environment (browser, Node.js) | All OS with a Java VM | Linux | server-less, requires a JavaScript environment (browser, Node.js) | Linux macOS Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | no | yes | partial ![]() | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | Close to SQL99, but no user access control, stored procedures and host language bindings. | yes | no | yes ![]() | SQL-like query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JavaScript API | JDBC ODBC | Proprietary protocol ![]() | JavaScript API | GraphQL RESTful HTTP API WebSocket | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | JavaScript | Java | 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 | JavaScript | Deno Go JavaScript (Node.js) Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | no | Java Stored Procedures and User-Defined Functions | Lua | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | none | none | Sharding | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | none | With clustering: 2 database servers on different computers operate on identical copies of a database | Multi-source replication Source-replica replication | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | none | Immediate Consistency | Eventual Consistency Strong eventual consistency with CRDTs | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | yes ![]() | ACID | Optimistic locking, atomic execution of commands blocks and scripts | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes, multi-version concurrency control (MVCC) | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes ![]() | yes | yes ![]() | no ![]() | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | no | fine grained access rights according to SQL-standard | simple password-based access control and ACL | no | yes, based on authentication and database rules | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AlaSQL | H2 | KeyDB | SQL.JS | SurrealDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Create a Marvel Database with SQL and Javascript, the easy way Multi faceted data exploration in the browser using Leaflet and amCharts provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Garnet–open-source faster cache-store speeds up applications, services Snap Acquires KeyDB for Open-Source Services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources unique “Garnet” cache-store; a Redis rival? provided by Google News | 9 Best JavaScript and TypeScript ORMs for 2024 — SitePoint Execute millions of SQL statements in milliseconds in the browser with WebAssembly and Web Workers. SQLite On The Web: Absurd-sql In Praise Of SQLite 10 Low-Code Rules for Serious Coders provided by Google News | SD Times Open-Source Project of the Week: SurrealDB Meet Tobie Morgan Hitchcock, CEO & Co-Founder Of SurrealDB Cloud, privacy and AI: Trends defining the future of data and databases SurrealDB raises $6M for its database-as-a-service offering Introducing SurrealDB: A Quantum Leap in Database Technology provided by Google News |
Share this page