DBMS > Apache Jena - TDB vs. EsgynDB vs. JanusGraph vs. Tarantool vs. TinkerGraph
System Properties Comparison Apache Jena - TDB vs. EsgynDB vs. JanusGraph vs. Tarantool vs. TinkerGraph
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Jena - TDB Xexclude from comparison | EsgynDB Xexclude from comparison | JanusGraph successor of Titan Xexclude from comparison | Tarantool Xexclude from comparison | TinkerGraph Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A RDF storage and query DBMS, shipped as an optional-use component of the Apache Jena framework | Enterprise-class SQL-on-Hadoop solution, powered by Apache Trafodion | A Graph DBMS optimized for distributed clusters It was forked from the latest code base of Titan in January 2017 | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | A lightweight, in-memory graph engine that serves as a reference implementation of the TinkerPop3 API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | RDF store | Relational DBMS | Graph DBMS | Document store Key-value store Relational DBMS | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS with Tarantool/GIS extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | jena.apache.org/documentation/tdb/index.html | www.esgyn.cn | janusgraph.org | www.tarantool.io | tinkerpop.apache.org/docs/current/reference/#tinkergraph-gremlin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | jena.apache.org/documentation/tdb/index.html | docs.janusgraph.org | www.tarantool.io/en/doc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation originally developed by HP Labs | Esgyn | Linux Foundation; originally developed as Titan by Aurelius | VK | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2000 | 2015 | 2017 | 2008 | 2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.9.0, July 2023 | 0.6.3, February 2023 | 2.10.0, May 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache License, Version 2.0 | commercial | Open Source Apache 2.0 | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++, Java | Java | C and C++ | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux | Linux OS X Unix Windows | BSD Linux macOS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes RDF Schemas | yes | yes | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | 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 | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes | no | Full-featured ANSI SQL support | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Fuseki REST-style SPARQL HTTP Interface Jena RDF API RIO RDF Input/Output | ADO.NET JDBC ODBC | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | Open binary protocol | TinkerPop 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java | All languages supporting JDBC/ODBC/ADO.Net | Clojure Java Python | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | Groovy Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Java Stored Procedures | yes | Lua, C and SQL stored procedures | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via event handler | no | yes | yes, before/after data modification events, on replication events, client session events | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | yes depending on the used storage backend (e.g. Cassandra, HBase, BerkeleyDB) | 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 | none | Multi-source replication between multi datacenters | yes | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | yes via Faunus, a graph analytics engine | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Immediate 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 | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | yes Relationships in graphs | yes | yes Relationships in graphs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID TDB Transactions | ACID | ACID | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, cooperative multitasking | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes, write ahead logging | optional | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes, full featured in-memory storage engine with persistence | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access control via Jena Security | fine grained access rights according to SQL-standard | User authentification and security via Rexster Graph Server | 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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Jena - TDB | EsgynDB | JanusGraph successor of Titan | Tarantool | TinkerGraph | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Data processing speed and reliability: in-memory synchronous replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Sparql Secrets In Jena-Fuseki - DataScienceCentral.com Extract and query knowledge graphs using Apache Jena (SPARQL Engine) 6 Libraries in Java for Machine Learning A catalogue with semantic annotations makes multilabel datasets FAIR | Scientific Reports MarkLogic Hones Its Triple Store provided by Google News | Database Deep Dives: JanusGraph JanusGraph Picks Up Where TitanDB Left Off From graph db to graph embedding. In 7 simple steps. | by Andy Greatorex Compose for JanusGraph arrives on Bluemix Nordstrom Builds Flexible Backend Ops with Kubernetes, Spark and JanusGraph provided by Google News | Why developers like Apache TinkerPop, an open source framework for graph computing | Amazon Web Services Introducing Gremlin query hints for Amazon Neptune InfiniteGraph Gets Support for Common Graph Database Language and More provided by Google News |
Share this page