DBMS > Datomic vs. Memgraph vs. NebulaGraph vs. QuestDB vs. SingleStore
System Properties Comparison Datomic vs. Memgraph vs. NebulaGraph vs. QuestDB vs. SingleStore
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | Memgraph Xexclude from comparison | NebulaGraph Xexclude from comparison | QuestDB Xexclude from comparison | SingleStore former name was MemSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | An open source graph database built for real-time streaming and compatible with Neo4j | A distributed, linear scalable, high perfomant Graph DBMS | A high performance open source SQL database for time series data | MySQL wire-compliant distributed RDBMS that combines an in-memory row-oriented and a disc-based column-oriented storage with patented universal storage to handle transactional and analytical workloads in one single table type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Graph DBMS | Graph DBMS | Time Series DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Relational DBMS | Document store Spatial DBMS Time Series DBMS Vector DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | memgraph.com | github.com/vesoft-inc/nebula www.nebula-graph.io | questdb.io | www.singlestore.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | memgraph.com/docs | docs.nebula-graph.io | questdb.io/docs | docs.singlestore.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Memgraph Ltd | Vesoft Inc. | QuestDB Technology Inc | SingleStore Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2017 | 2019 | 2014 | 2013 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.7075, December 2023 | 8.5, January 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | Open Source BSL 1.1; commercial license for enterprise edition available | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source Apache 2.0 | commercial free developer edition available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | SingleStoreDB Cloud: The world's fastest, modern cloud database for both operational (OLTP) and analytical (OLAP) workloads. Available instantly with multi-cloud and hybrid-cloud capabilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java, Clojure | C and C++ | C++ | Java (Zero-GC), C++, Rust | C++, Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux | Linux | Linux macOS Windows | Linux 64 bit version required | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free and schema-optional | Strong typed schema | yes schema-free via InfluxDB Line Protocol | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes Nebula Graph internally uses the Key-Value store RocksDB for persistency. The vertices, edges, and their properties are stored as Key while their values are stored as Value. The primary indexes are per Key and secondary indexes are per Value. | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like query language | SQL with time-series extensions | yes but no triggers and foreign keys | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | Bolt protocol Cypher query language | Browser interface console (shell) Cypher Query Language GO Object Graph Mapper Java Object Graph Mapper NGBatis ORM framework for NebulaGraph and Spring-Boot Proprietary native API Python Object Graph Mapper Query language nGQL | HTTP REST InfluxDB Line Protocol (TCP/UDP) JDBC PostgreSQL wire protocol | Cluster Management API as HTTP Rest and CLI HTTP API JDBC MongoDB API ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | .Net C C++ Elixir Go Haskell Java JavaScript PHP Python Ruby Scala | .Net C++ Go Java PHP Python | C PostgreSQL driver C++ Go Java JavaScript (Node.js) Python Rust over HTTP | Bash C C# Java JavaScript (Node.js) Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | user defined functions | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | Sharding dynamic graph partitioning | Sharding | horizontal partitioning (by timestamps) | Sharding hash partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | Multi-source replication using RAFT | Causal Clustering using Raft protocol | Source-replica replication with eventual consistency | Source-replica replication stores two copies of each physical data partition on two separate nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | no can define user-defined aggregate functions for map-reduce-style calculations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes relationships in graphs | yes Relationships in graphs | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID with snapshot isolation | ACID | ACID for single-table writes | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, multi-version concurrency control (MVCC) | yes | yes | yes, multi-version concurrency control (MVCC) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes with periodic snapshot and write-ahead logging (WAL) of changes | yes using RocksDB | yes | yes All updates are persistent, including those to disk-based columnstores and memory-based row stores. Transaction commits are supported via write-ahead log. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes recommended only for testing and development | yes | yes | yes through memory mapped files | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Users, roles and permissions | Role-based access control | Fine grained access control via users, groups and roles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Memgraph | NebulaGraph | QuestDB | SingleStore former name was MemSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Memgraph directly connects to your streaming infrastructure so you and your team... » more | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | Relational model with native time series support Column-based storage and time partitioned... » more | SingleStore offers a fully-managed , distributed, highly-scalable SQL database designed... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Business Source License ensures a future for the Memgraph community MAGE algorithm... » more | NebulaGraph boasts the world's only graph database solution that is able to host... » more | High ingestion throughput: peak of 4M rows/sec (TSBS Benchmark) Code optimizations... » more | SingleStore’s competitive advantages include: Easy and Simplified Architecture with... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Graph algorithms in bioinformatics Social network analysis Cryptocurrency network... » more | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | Financial tick data Industrial IoT Application Metrics Monitoring » more | Driving Fast Analytics: SingleStore delivers the fastest and most scalable reporting... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | Banks & Hedge funds, Yahoo, OKX, Airbus, Aquis Exchange, Net App, Cloudera, Airtel,... » more | IEX Cloud : Improves Financial Data Distribution Speed 15x with Singlestore DB Comcast,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | At our very early stage, NebulaGraph has already received over 10,000 stars on GitHub... » more | Customers in various industries worldwide including US and International Industry... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | You can check out our pricing model and licenses on the company website . » more | NebulaGraph is open source and free to use under Apache 2.0 license. » more | Open source Apache 2.0 QuestDB Enterprise QuestDB Cloud » more | F ree Tier and Enterprise Edition » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | QuestDB 8.0: Major Release QuestDB and Raspberry Pi 5 benchmark, a pocket-sized powerhouse Build your own resource monitor with QuestDB and Grafana Does "vpmovzxbd" Scare You? Here's Why it Doesn't Have To Create an ADS-B flight radar with QuestDB and a Raspberry Pi | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Memgraph | NebulaGraph | QuestDB | SingleStore former name was MemSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Turbocharge Your Application Development Using WebAssembly With SingleStoreDB Cloud-Based Analytics With SingleStoreDB SingleStore: The Increasing Momentum of Multi-Model Database Systems Nubank buys firm behind Clojure programming language Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach James Dixon Imagines A Data Lake That Matters Zoona Case Study provided by Google News Enhance Your Network Analysis with the Power of a Graph DB Graph database company Memgraph raises $9.34M Croatian graph database startup Memgraph raises €8M with Microsoft as key investor, plans to boost R&D Graph Database Market to grow at a CAGR of 19.9% from 2022 to 2027|Increased demand for low-latency queries is a ... Making Your Own Memory Graph To Detect Memory Issues On iOS provided by Google News Vesoft (NebulaGraph) Recognized in the Gartner® Market Guide for Graph Database Management Systems NebulaGraph reaps from China's growing appetite for graph databases NebulaGraph Completes Series A to Scale Its Distributed Graph Database provided by Google News Kubernetes Annotations: Harnessing Power in Operator Development QuestDB snares $12M Series A with hosted version coming soon Read the Pitch Deck Database Startup QuestDB Used to Raise $12 Million QuestDB Raises $12M in Series A Funding Aquis Exchange goes live with QuestDB for real time monitoring provided by Google News |
Share this page