DBMS > Cassandra vs. NebulaGraph vs. Percona Server for MongoDB vs. SingleStore vs. TypeDB
System Properties Comparison Cassandra vs. NebulaGraph vs. Percona Server for MongoDB vs. SingleStore vs. TypeDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Cassandra Xexclude from comparison | NebulaGraph Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | SingleStore former name was MemSQL Xexclude from comparison | TypeDB formerly named Grakn Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Wide-column store based on ideas of BigTable and DynamoDB Optimized for write access | A distributed, linear scalable, high perfomant Graph DBMS | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | 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 | TypeDB is a strongly-typed database with a rich and logical type system and TypeQL as its query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Wide column store | Graph DBMS | Document store | Relational DBMS | Graph DBMS Relational DBMS Often described as a 'hyper-relational' database, since it implements the 'Entity-Relationship Paradigm' to manage complex data structures and ontologies. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Vector DBMS starting with release V5 | Document store Spatial DBMS Time Series DBMS Vector DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cassandra.apache.org | github.com/vesoft-inc/nebula www.nebula-graph.io | www.percona.com/mongodb/software/percona-server-for-mongodb | www.singlestore.com | typedb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cassandra.apache.org/doc/latest | docs.nebula-graph.io | docs.percona.com/percona-distribution-for-mongodb | docs.singlestore.com | typedb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top level project, originally developped by Facebook | Vesoft Inc. | Percona | SingleStore Inc. | Vaticle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2008 | 2019 | 2015 | 2013 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.3, July 2023 | 3.4.10-2.10, November 2017 | 8.5, January 2024 | 2.26.3, January 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source GPL Version 2 | commercial free developer edition available | Open Source GPL Version 3, commercial licenses 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. | Astra DB: Multi-cloud DBaaS built on Apache Cassandra. | 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 | C++ | C++ | C++, Go | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Windows | Linux | Linux | Linux 64 bit version required | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Strong typed schema | schema-free | yes | 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 | restricted only equality queries, not always the best performing solution | 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. | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like SELECT, DML and DDL statements (CQL) | SQL-like query language | no | yes but no triggers and foreign keys | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol CQL (Cassandra Query Language, an SQL-like language) Thrift | 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 | proprietary protocol using JSON | Cluster Management API as HTTP Rest and CLI HTTP API JDBC MongoDB API ODBC | gRPC protocol TypeDB Console (shell) TypeDB Studio (Visualisation software- previously TypeDB Workbase) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Erlang Go Haskell Java JavaScript Node.js Perl PHP Python Ruby Scala | .Net C++ Go Java PHP Python | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | Bash C C# Java JavaScript (Node.js) Python | All JVM based languages Groovy Java JavaScript (Node.js) Python Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | user defined functions | JavaScript | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding no "single point of failure" | Sharding | Sharding | Sharding hash partitioning | Sharding by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor Representation of geographical distribution of servers is possible | Causal Clustering using Raft protocol | Source-replica replication | Source-replica replication stores two copies of each physical data partition on two separate nodes | Multi-source replication by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | yes | no can define user-defined aggregate functions for map-reduce-style calculations | yes by using Apache Kafka and Apache Zookeeper | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency can be individually decided for each write operation | Immediate Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes Relationships in graphs | no | no | no substituted by the relationship feature | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no Atomicity and isolation are supported for single operations | ACID | no | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | 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. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes via In-Memory Engine | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per object | Role-based access control | Access rights for users and roles | Fine grained access control via users, groups and roles | yes at REST API level; other APIs in progress | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | NebulaGraph | Percona Server for MongoDB | SingleStore former name was MemSQL | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Apache Cassandra is the leading NoSQL, distributed database management system, well... » more | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | SingleStore offers a fully-managed , distributed, highly-scalable SQL database designed... » more | TypeDB is a polymorphic database with a conceptual data model, a strong subtyping... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | No single point of failure ensures 100% availability . Operational simplicity for... » more | NebulaGraph boasts the world's only graph database solution that is able to host... » more | SingleStore’s competitive advantages include: Easy and Simplified Architecture with... » more | TypeDB provides a new level of expressivity, extensibility, interoperability, and... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Internet of Things (IOT), fraud detection applications, recommendation engines, product... » more | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | Driving Fast Analytics: SingleStore delivers the fastest and most scalable reporting... » more | Life sciences : TypeDB makes working with biological data much easier and accelerates... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Apple, Netflix, Uber, ING,, Intuit,Fidelity, NY Times, Outbrain, BazaarVoice, Best... » more | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | IEX Cloud : Improves Financial Data Distribution Speed 15x with Singlestore DB Comcast,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Cassandra is used by 40% of the Fortune 100. » more | 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 | Apache license Pricing for commercial distributions provided by DataStax and available... » more | NebulaGraph is open source and free to use under Apache 2.0 license. » more | F ree Tier and Enterprise Edition » more | Apache f or language drivers, and AGPL and Commercial for the database server. The... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Introducing Tejas Kumar, Developer Relations Engineer Indexing All of Wikipedia on a Laptop An Introduction to Phil Nash, Developer Relations Focus on Creativity, Not Clusters: DataStax Mission Control in Action! How Concide Built its Chat Platform with Enhanced Document Management for Legal Tech Professionals | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more Cassandra Forward event: Want to level up your Cassandra game? Watch now replays of the March 2023 sessions. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | NebulaGraph | Percona Server for MongoDB | SingleStore former name was MemSQL | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cassandra keeps climbing the ranks of the DB-Engines Ranking Oracle is the DBMS of the Year Winners, losers and an attractive newcomer in Novembers DB-Engines ranking | Turbocharge Your Application Development Using WebAssembly With SingleStoreDB Cloud-Based Analytics With SingleStoreDB SingleStore: The Increasing Momentum of Multi-Model Database Systems | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Here's What to Know About Apache Cassandra 5.0 Cassandra is the “best f*cking database for gen AI,” says DataStax CEO Microsoft extends life support for aging Apache Cassandra 3.11 database How Uber Optimized Cassandra Operations At Scale How Zalando migrated their shopping carts to Amazon DynamoDB from Apache Cassandra | Amazon Web Services 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 | MongoDB Performance Tuning How to Plan Your MongoDB Upgrade Why Isn't the World Upgrading Its Databases? Percona launches management system aimed at open-source databases FerretDB goes GA: Gives you MongoDB, without the MongoDB... provided by Google News | Modelling Biomedical Data for a Drug Discovery Knowledge Graph Spacecraft Engineering Models: How to Migrate UML to TypeQL How Roche Discovered Novel Potential Gene Targets with TypeDB Building a Biomedical Knowledge Graph | by Daniel Crowe Bayer's Approach to Modelling and Loading Data at Scale provided by Google News |
Share this page