DBMS > Firebase Realtime Database vs. HarperDB vs. KeyDB vs. Microsoft SQL Server vs. RavenDB
System Properties Comparison Firebase Realtime Database vs. HarperDB vs. KeyDB vs. Microsoft SQL Server vs. RavenDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Firebase Realtime Database Xexclude from comparison | HarperDB Xexclude from comparison | KeyDB Xexclude from comparison | Microsoft SQL Server Xexclude from comparison | RavenDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | 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 | Microsofts flagship relational DBMS | Open Source Operational and Transactional Enterprise NoSQL Document Database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Key-value store | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Graph DBMS Spatial DBMS | Graph DBMS Spatial DBMS Time Series DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | firebase.google.com/products/realtime-database | www.harperdb.io | github.com/Snapchat/KeyDB keydb.dev | www.microsoft.com/en-us/sql-server | ravendb.net | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | firebase.google.com/docs/database | docs.harperdb.io/docs | docs.keydb.dev | learn.microsoft.com/en-US/sql/sql-server | ravendb.net/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Google acquired by Google 2014 | HarperDB | EQ Alpha Technology Ltd. | Microsoft | Hibernating Rhinos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2017 | 2019 | 1989 | 2010 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.1, August 2021 | SQL Server 2022, November 2022 | 5.4, July 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | commercial free community edition available | Open Source BSD-3 | commercial restricted free version is available | Open Source AGPL version 3, commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | SQLServer Flex @ STACKIT offers a managed version of SQL Server with adjustable CPU, RAM, storage amount and speed, in enterprise grade to perfectly match all application requirements. All services are 100% GDPR-compliant. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Node.js | C++ | C++ | C# | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | Linux OS X | Linux | Linux Windows | Linux macOS Raspberry Pi Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | dynamic schema | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes JSON data types | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes by using the Redis Search module | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like data manipulation statements | no | yes | SQL-like query language (RQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Android iOS JavaScript API RESTful HTTP API | JDBC ODBC React Hooks RESTful HTTP/JSON API WebSocket | Proprietary protocol RESP - REdis Serialization Protoco | ADO.NET JDBC ODBC OLE DB Tabular Data Stream (TDS) | .NET Client API F# Client API Go Client API Java Client API NodeJS Client API PHP Client API Python Client API RESTful HTTP API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java JavaScript Objective-C | .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++ Delphi Go Java JavaScript (Node.js) PHP Python R Ruby Visual Basic | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | limited functionality with using 'rules' | Custom Functions since release 3.1 | Lua | Transact SQL, .NET languages, R, Python and (with SQL Server 2019) Java | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | Callbacks are triggered when data changes | no | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | A table resides as a whole on one (or more) nodes in a cluster | Sharding | tables can be distributed across several files (horizontal partitioning); sharding through federation | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes the nodes on which a table resides can be defined | Multi-source replication Source-replica replication | yes, but depending on the SQL-Server Edition | Multi-source replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Immediate Consistency | Eventual Consistency Strong eventual consistency with CRDTs | Immediate Consistency | Default ACID transactions on the local node (eventually consistent across the cluster). Atomic operations with cluster-wide ACID transactions. Eventual consistency for indexes and full-text search indexes. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes | Atomic execution of specific operations | Optimistic locking, atomic execution of commands blocks and scripts | ACID | ACID, Cluster-wide transaction available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes, based on authentication and database rules | Access rights for users and roles | simple password-based access control and ACL | fine grained access rights according to SQL-standard | Authorization levels configured per client per database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for SQL Server gives you a fully graphical approach to database management and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for SQL Server and many other database management systems. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase Realtime Database | HarperDB | KeyDB | Microsoft SQL Server | RavenDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Microsoft SQL Server is the DBMS of the Year | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Google launches Firebase Genkit, a new open source framework for building AI-powered apps Realtime vs Cloud Firestore: Which Firebase Database to go? Atos cybersecurity blog: Misconfigured Firebase: A real-time cyber threat Don't be like these 900+ websites and expose millions of passwords via Firebase Google Firebase may have exposed 125M records from misconfigurations provided by Google News | Startups of the Year 2023: Meet HarperDB - A Database and Application Development Platform Unlocking immersive golfing experiences with AWS Wavelength | Amazon Web Services HarperDB: An underdog SQL / NoSQL database | ZDNET Stephen Goldberg Named 2023 Bill Daniels Ethical Leader of the Year | CU Denver Business School News Build a Hacker News Clone using React and HarperDB — SitePoint provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Microsoft open-sources Garnet cache-store -- a Redis rival? Redis 6 arrives with multithreading for faster I/O provided by Google News | Configure change data capture parameters on Amazon RDS for SQL Server | Amazon Web Services Data Virtualization in SQL Server 2022 SQL Server 2014 end of support: Keep your customers secure How to Know When It's Time for a Microsoft SQL Server Upgrade Mallox Ransomware Deployed Via MS-SQL Honeypot Attack provided by Google News | RavenDB Welcomes David Baruc as Chief Revenue Officer: Seasoned Tech Leader to Drive Global Sales and ... Install the NoSQL RavenDB Data System Oren Eini on RavenDB, Including Consistency Guarantees and C# as the Implementation Language RavenDB Adds Graph Queries How I Created a RavenDB Python Client provided by Google News |
Share this page