DBMS > JanusGraph vs. Microsoft Azure Cosmos DB vs. Solr vs. Tarantool vs. TimesTen
System Properties Comparison JanusGraph vs. Microsoft Azure Cosmos DB vs. Solr vs. Tarantool vs. TimesTen
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | JanusGraph successor of Titan Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | Solr Xexclude from comparison | Tarantool Xexclude from comparison | TimesTen Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A Graph DBMS optimized for distributed clusters It was forked from the latest code base of Titan in January 2017 | Globally distributed, horizontally scalable, multi-model database service | 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 | In-Memory RDBMS compatible to Oracle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Graph DBMS | Document store Graph DBMS Key-value store Wide column store | Search engine | Document store Key-value store Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Spatial DBMS | Spatial DBMS with Tarantool/GIS extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | janusgraph.org | azure.microsoft.com/services/cosmos-db | solr.apache.org | www.tarantool.io | www.oracle.com/database/technologies/related/timesten.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.janusgraph.org | learn.microsoft.com/azure/cosmos-db | solr.apache.org/resources.html | www.tarantool.io/en/doc | docs.oracle.com/database/timesten-18.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Linux Foundation; originally developed as Titan by Aurelius | Microsoft | Apache Software Foundation | VK | Oracle, TimesTen Performance Software, HP originally founded in HP Labs it was acquired by Oracle in 2005 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2014 | 2006 | 2008 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 0.6.3, February 2023 | 9.6.0, April 2024 | 2.10.0, May 2022 | 11 Release 2 (11.2.2.8.0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0 | commercial | Open Source Apache Version 2 | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix Windows | hosted | All OS with a Java VM runs as a servlet in servlet container (e.g. Tomcat, Jetty is included) | BSD Linux macOS | AIX HP-UX Linux OS X Solaris SPARC/x86 Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes JSON types | 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 | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes All properties auto-indexed by default | yes All search fields are automatically indexed | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like query language | Solr Parallel SQL Interface | Full-featured ANSI SQL support | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | Java API RESTful HTTP/JSON API | Open binary protocol | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java Python | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | .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 | C C++ Java PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | JavaScript | Java plugins | Lua, C and SQL stored procedures | PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | JavaScript | yes User configurable commands triggered on index changes | yes, before/after data modification events, on replication events, client session events | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | yes depending on the used storage backend (e.g. Cassandra, HBase, BerkeleyDB) | Sharding Implicit feature of the cloud service | Sharding | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | yes Implicit feature of the cloud service | yes | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes via Faunus, a graph analytics engine | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | spark-solr: github.com/lucidworks/spark-solr and streaming expressions to reduce | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | 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 or Eventual Consistency depending on configuration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Multi-item ACID transactions with snapshot isolation within a partition | 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 Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes | yes | yes, write ahead logging | yes by means of logfiles and checkpoints | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes, full featured in-memory storage engine with persistence | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | User authentification and security via Rexster Graph Server | Access rights can be defined down to the item level | 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 access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JanusGraph successor of Titan | Microsoft Azure Cosmos DB former name was Azure DocumentDB | Solr | Tarantool | TimesTen | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | 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 | Database Deep Dives: JanusGraph JanusGraph Picks Up Where TitanDB Left Off Simple Deployment of a Graph Database: JanusGraph | by Edward Elson Kosasih Compose for JanusGraph arrives on Bluemix Nordstrom Builds Flexible Backend Ops with Kubernetes, Spark and JanusGraph provided by Google News | Microsoft Build 2024: Cosmos DB for NoSQL gets vector search At Build, Microsoft Fabric, PostgreSQL and Cosmos DB get AI enhancements Public Preview: vCore-based Azure Cosmos DB for MongoDB cross-region disaster recovery (DR) | Atualizações do ... Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K General Availability: Data API builder | Azure updates provided by Google News | (SOLR) Technical Data SOLR-led walkout demands better conditions for Compass workers SOLR hosts May Day amid ongoing contract negotiations SOLR hosts teach-in of labor movements at Northwestern SearchStax Launches Serverless Solr Service to Accelerate Cloud-Native Application Development 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 | Oracle starts peddling Exalytics in-memory appliance provided by Google News |
Share this page