DBMS > Cassandra vs. NebulaGraph vs. Riak TS vs. Tkrzw vs. Virtuoso
System Properties Comparison Cassandra vs. NebulaGraph vs. Riak TS vs. Tkrzw vs. Virtuoso
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Cassandra Xexclude from comparison | NebulaGraph Xexclude from comparison | Riak TS Xexclude from comparison | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet Xexclude from comparison | Virtuoso 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 | Riak TS is a distributed NoSQL database optimized for time series data and based on Riak KV | A concept of libraries, allowing an application program to store and query key-value pairs in a file. Successor of Tokyo Cabinet and Kyoto Cabinet | Virtuoso is a multi-model hybrid-RDBMS that supports management of data represented as relational tables and/or property graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Wide column store | Graph DBMS | Time Series DBMS | Key-value store | Document store Graph DBMS Native XML DBMS Relational DBMS RDF store Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Vector DBMS starting with release V5 | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cassandra.apache.org | github.com/vesoft-inc/nebula www.nebula-graph.io | dbmx.net/tkrzw | virtuoso.openlinksw.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cassandra.apache.org/doc/latest | docs.nebula-graph.io | www.tiot.jp/riak-docs/riak/ts/latest | docs.openlinksw.com/virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top level project, originally developped by Facebook | Vesoft Inc. | Open Source, formerly Basho Technologies | Mikio Hirabayashi | OpenLink Software | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2008 | 2019 | 2015 | 2020 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.3, July 2023 | 3.0.0, September 2022 | 0.9.3, August 2020 | 7.2.11, September 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source | Open Source Apache Version 2.0 | Open Source GPLv2, extended commercial license 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. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++ | Erlang | C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Windows | Linux | Linux OS X | Linux macOS | AIX FreeBSD HP-UX Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Strong typed schema | schema-free | schema-free | yes SQL - Standard relational schema RDF - Quad (S, P, O, G) or Triple (S, P, O) XML - DTD, XML Schema DAV - freeform filesystem objects, plus User Defined Types a/k/a Dynamic Extension Type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | no | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | restricted | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like SELECT, DML and DDL statements (CQL) | SQL-like query language | yes, limited | no | yes SQL-92, SQL-200x, SQL-3, SQLX | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | HTTP API Native Erlang Interface | ADO.NET GeoSPARQL HTTP API JDBC Jena RDF API ODBC OLE DB RDF4J API RESTful HTTP API Sesame REST HTTP Protocol SOAP webservices SPARQL 1.1 WebDAV XPath XQuery XSLT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Erlang Go Haskell Java JavaScript Node.js Perl PHP Python Ruby Scala | .Net C++ Go Java PHP Python | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | C++ Java Python Ruby | .Net C C# C++ Java JavaScript Perl PHP Python Ruby Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | user defined functions | Erlang | no | yes Virtuoso PL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes pre-commit hooks and post-commit hooks | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding no "single point of failure" | Sharding | Sharding | none | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | selectable replication factor | none | Chain, star, and bi-directional replication Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes Relationships in graphs | no links between datasets can be stored | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using RocksDB | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes using specific database classes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per object | Role-based access control | no | no | Fine-grained Attribute-Based Access Control (ABAC) in addition to typical coarse-grained Role-Based Access Control (RBAC) according to SQL-standard. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | NebulaGraph | Riak TS | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Virtuoso is a modern multi-model RDBMS for managing data represented as tabular relations... » 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 | Performance & Scale — as exemplified by DBpedia and the LOD Cloud it spawned, i.e.,... » 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 | Used for — Analytics/BI Conceptual Data Virtualization Enterprise Knowledge Graphs... » 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 | Broad use across enterprises and governments including — European Union (EU) US Government... » 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 | Largest installed-base of Multi-Model RDBMS for AI-friendly Knowledge Graphs Platform... » 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 | Available in both Commercial Enterprise and Open Source (GPL v2) Editions Feature... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | An Introduction to David Jones-Gilardi, Developer Relations 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! | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Cassandra Forward event: Want to level up your Cassandra game? Watch now replays of the March 2023 sessions. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | NebulaGraph | Riak TS | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Cassandra is the “best f*cking database for gen AI,” says DataStax CEO Here's What to Know About Apache Cassandra 5.0 DataStax Enterprise 4.0 Gives in-Memory Option to Cassandra How Uber Optimized Cassandra Operations At Scale Microsoft extends life support for aging Apache Cassandra 3.11 database 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 | New Basho Data Platform Provides Operational Simplicity for Enterprise Big Data Applications Best open source databases for IoT applications provided by Google News |
Share this page