DBMS > Neo4j vs. ScyllaDB vs. Solr vs. Tarantool vs. Virtuoso
System Properties Comparison Neo4j vs. ScyllaDB vs. Solr vs. Tarantool vs. Virtuoso
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Neo4j Xexclude from comparison | ScyllaDB Xexclude from comparison | Solr Xexclude from comparison | Tarantool Xexclude from comparison | Virtuoso Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Scalable, ACID-compliant graph database designed with a high-performance distributed cluster architecture, available in self-hosted and cloud offerings | Cassandra and DynamoDB compatible wide column store | A widely used distributed, scalable search engine based on Apache Lucene | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | Virtuoso is a multi-model hybrid-RDBMS that supports management of data represented as relational tables and/or property graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Graph DBMS | Wide column store | Search engine | Document store Key-value store Relational DBMS | Document store Graph DBMS Native XML DBMS Relational DBMS RDF store Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Key-value store | Spatial DBMS | Spatial DBMS with Tarantool/GIS extension | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | neo4j.com | www.scylladb.com | solr.apache.org | www.tarantool.io | virtuoso.openlinksw.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | neo4j.com/docs | docs.scylladb.com | solr.apache.org/resources.html | www.tarantool.io/en/doc | docs.openlinksw.com/virtuoso | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Neo4j, Inc. | ScyllaDB | Apache Software Foundation | VK | OpenLink Software | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2007 | 2015 | 2006 | 2008 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.20, May 2024 | ScyllaDB Open Source 5.4.1, January 2024 | 9.6.1, May 2024 | 2.10.0, May 2022 | 7.2.11, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPL version3, commercial licenses available | Open Source Open Source (AGPL), commercial license available | Open Source Apache Version 2 | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | 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. | Neo4j Aura: Neo4j’s fully managed cloud service: The zero-admin, always-on graph database for cloud developers. | Scylla Cloud: Create real-time applications that run at global scale with Scylla Cloud, the industry’s most powerful NoSQL DBaaS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java, Scala | C++ | Java | C and C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Can also be used server-less as embedded Java database. OS X Solaris Windows | Linux | All OS with a Java VM runs as a servlet in servlet container (e.g. Tomcat, Jetty is included) | BSD Linux macOS | AIX FreeBSD HP-UX Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free and schema-optional | schema-free | yes Dynamic Fields enables on-the-fly addition of new fields | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | 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 | yes supports customizable data types and automatic typing | string, double, decimal, uuid, integer, blob, boolean, datetime | 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 | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes pluggable indexing subsystem, by default Apache Lucene | yes cluster global secondary indices | yes All search fields are automatically indexed | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like DML and DDL statements (CQL) | Solr Parallel SQL Interface | Full-featured ANSI SQL support | yes SQL-92, SQL-200x, SQL-3, SQLX | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Bolt protocol Cypher query language Java API Neo4j-OGM Object Graph Mapper RESTful HTTP API Spring Data Neo4j TinkerPop 3 | Proprietary protocol (CQL) compatible with CQL (Cassandra Query Language, an SQL-like language) RESTful HTTP API (DynamoDB compatible) Thrift | Java API RESTful HTTP/JSON API | Open binary protocol | 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 | .Net Clojure Elixir Go Groovy Haskell Java JavaScript Perl PHP Python Ruby Scala | For CQL interface: C#, C++, Clojure, Erlang, Go, Haskell, Java, JavaScript, Node.js, Perl, PHP, Python, Ruby, Rust, Scala For DynamoDB interface: .Net, ColdFusion, Erlang, Groovy, Java, JavaScript, Perl, PHP, Python, Ruby | .Net Erlang Java JavaScript any language that supports sockets and either XML or JSON Perl PHP Python Ruby Scala | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | .Net C C# C++ Java JavaScript Perl PHP Python Ruby Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes User defined Procedures and Functions | yes, Lua | Java plugins | Lua, C and SQL stored procedures | yes Virtuoso PL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via event handler | no | yes User configurable commands triggered on index changes | yes, before/after data modification events, on replication events, client session events | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | yes using Neo4j Fabric | Sharding | Sharding | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Causal Clustering using Raft protocol available in in Enterprise Version only | selectable replication factor Representation of geographical distribution of servers is possible | yes | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | Chain, star, and bi-directional replication Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | spark-solr: github.com/lucidworks/spark-solr and streaming expressions to reduce | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Causal and Eventual Consistency configurable in Causal Cluster setup Immediate Consistency in stand-alone mode | Eventual Consistency Tunable Consistency can be individually decided for each write operation | Eventual Consistency | Casual consistency across sharding partitions Eventual consistency within replicaset partition when using asyncronous replication Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition when using Raft | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes Relationships in graphs | no | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no Atomicity and isolation are supported for single operations | optimistic locking | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, cooperative multitasking | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes, write ahead logging | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes in-memory tables | yes | yes, full featured in-memory storage engine with persistence | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Users, roles and permissions. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | Access rights for users can be defined per object | yes | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Neo4j | ScyllaDB | Solr | Tarantool | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Neo4j delivers graph technology that has been battle tested for performance and scale... » more | ScyllaDB is engineered to deliver predictable performance at scale. It’s adopted... » more | Virtuoso is a modern multi-model RDBMS for managing data represented as tabular relations... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Neo4j is the market leader, graph database category creator, and the most widely... » more | Highly-performant (efficiently utilizes full resources of a node and network; millions... » more | Performance & Scale — as exemplified by DBpedia and the LOD Cloud it spawned, i.e.,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Real-Time Recommendations Master Data Management Identity and Access Management Network... » more | ScyllaDB is ideal for applications that require high throughput and low latency at... » more | Used for — Analytics/BI Conceptual Data Virtualization Enterprise Knowledge Graphs... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Over 800 commercial customers and over 4300 startups use Neo4j. Flagship customers... » more | Discord, Epic Games, Expedia, Zillow, Comcast, Disney+ Hotstar, Samsung, ShareChat,... » more | Broad use across enterprises and governments including — European Union (EU) US Government... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Neo4j boasts the world's largest graph database ecosystem with more than 140 million... » more | ScyllaDB typically offers ~75% total cost of ownership savings, with ~5X higher throughput... » more | Largest installed-base of Multi-Model RDBMS for AI-friendly Knowledge Graphs Platform... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GPL v3 license that can be used all the places where you might use MySQL. Neo4j Commercial... » more | ScyllaDB Open Source - free open source software (AGPL) ScyllaDB Enterprise - subscription-based... » more | Available in both Commercial Enterprise and Open Source (GPL v2) Editions Feature... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | This Week in Neo4j: Importing Data, NODES, GenAI, Going Meta and more openCypher Will Pave the Road to GQL for Cypher Implementers 7 Tips for Submitting Your NODES 2024 Talk How to Configure Neo4j Aura With AWS PrivateLink This Week in Neo4j: Podcast, GraphRAG, GraphQL, Chatbot and more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Neo4j | ScyllaDB | Solr | Tarantool | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Applying Graph Analytics to Game of Thrones MySQL, PostgreSQL and Redis are the winners of the March ranking The openCypher Project: Help Shape the SQL for Graphs | Elasticsearch replaced Solr as the most popular search engine Enterprise Search Engines almost double their popularity in the last 12 months The DB-Engines ranking includes now search engines | Data processing speed and reliability: in-memory synchronous replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Neo4j Announces Collaboration with Microsoft to Advance GenAI and Data Solutions USA - English - India - English Neo Technology Announces Neo4j GraphDays Events in Seattle and Silicon Valley Neo4j CTO says new Graph Query Language standard will have 'massive ripple effects' Neo4j Is Planning IPO on Nasdaq, Largest Owner Greenbridge Says Give Your Graph Workload a Cost-Performance Boost with Neo4j and AWS Graviton | Amazon Web Services provided by Google News | ScyllaDB Raises $43M to Take on MongoDB at Scale, Push Database Performance to New Levels Sleeping at Scale - Delivering 10k Timers per Second per Node with Rust, Tokio, Kafka, and Scylla Running ScyllaDB NoSQL on Kubernetes with Spot Instances ScyllaDB on AWS is a NoSQL Database Built for Gigabyte-to-Petabyte Scale | Amazon Web Services ScyllaDB Database Review | eWeek provided by Google News | Solr Network Launches Groundbreaking Solana Token Creator SOLR-led walkout demands better conditions for Compass workers (SOLR) Proactive Strategies Have Insiders Been Buying Solar Alliance Energy Inc. (CVE:SOLR) Shares? Solana Token Creator by Solr Network Becomes the Fastest-Growing Platform on Solana provided by Google News | Deploying Tarantool Cartridge applications with zero effort (Part 1) VShard — horizontal scaling in Tarantool Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel provided by Google News |
Share this page