DBMS > Datomic vs. GraphDB vs. Postgres-XL vs. PouchDB vs. RDF4J
System Properties Comparison Datomic vs. GraphDB vs. Postgres-XL vs. PouchDB vs. RDF4J
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | GraphDB former name: OWLIM Xexclude from comparison | Postgres-XL Xexclude from comparison | PouchDB Xexclude from comparison | RDF4J formerly known as Sesame Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | Enterprise-ready RDF and graph database with efficient reasoning, cluster and external index synchronization support. It supports also SQL JDBC access to Knowledge Graph and GraphQL over SPARQL. | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | JavaScript DBMS with an API inspired by CouchDB | RDF4J is a Java framework for processing RDF data, supporting both memory-based and a disk-based storage. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Graph DBMS RDF store | Relational DBMS | Document store | RDF store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | www.ontotext.com | www.postgres-xl.org | pouchdb.com | rdf4j.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | graphdb.ontotext.com/documentation | www.postgres-xl.org/documentation | pouchdb.com/guides | rdf4j.org/documentation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Ontotext | Apache Software Foundation | Since 2016 officially forked into an Eclipse project, former developer was Aduna Software. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2000 | 2014 since 2012, originally named StormDB | 2012 | 2004 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 10.4, October 2023 | 10 R1, October 2018 | 7.1.1, June 2019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | commercial Some plugins of GraphDB Workbench are open sourced | Open Source Mozilla public license | Open Source | Open Source Eclipse Distribution License (EDL), v1.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, Clojure | Java | C | JavaScript | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM Linux OS X Windows | Linux macOS | server-less, requires a JavaScript environment (browser, Node.js) | Linux OS X Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free and OWL/RDFS-schema support; RDF shapes | yes | schema-free | yes RDF Schemas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | 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 | yes XML type, but no XML query functionality | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes, supports real-time synchronization and indexing in SOLR/Elastic search/Lucene and GeoSPARQL geometry data indexes | yes | yes via views | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | stored SPARQL accessed as SQL using Apache Calcite through JDBC/ODBC | yes distributed, parallel query execution | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | GeoSPARQL GraphQL GraphQL Federation Java API JDBC RDF4J API RDFS RIO Sail API Sesame REST HTTP Protocol SPARQL 1.1 | ADO.NET JDBC native C library ODBC streaming API for large objects | HTTP REST only for PouchDB Server JavaScript API | Java API RIO RDF Input/Output Sail API SeRQL Sesame RDF Query Language Sesame REST HTTP Protocol SPARQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | .Net C# Clojure Java JavaScript (Node.js) PHP Python Ruby Scala | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | JavaScript | Java PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | well-defined plugin interfaces; JavaScript server-side extensibility | user defined functions | View functions in JavaScript | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | none | horizontal partitioning | Sharding with a proxy-based framework, named couchdb-lounge | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | Multi-source replication | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency, Eventual consistency (configurable in cluster mode per master or individual client request) | Immediate Consistency | Eventual Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes Constraint checking | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | ACID MVCC | no | ACID Isolation support depends on the API used | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes in-memory storage is supported as well | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes recommended only for testing and development | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Default Basic authentication through RDF4J client, or via Java when run with cURL, default token-based in the Workbench or via Rest API, optional access through OpenID or Kerberos single sign-on. | fine grained access rights according to SQL-standard | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | GraphDB former name: OWLIM | Postgres-XL | PouchDB | RDF4J formerly known as Sesame | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Ontotext GraphDB is a semantic database engine that allows organizations to build... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | GraphDB allows you to link text and data in big knowledge graphs. It’s easy to experiment... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Metadata enrichment and management, linked data publishing, semantic inferencing... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | GraphDB provides a platform for building next-generation AI and Knowledge Graph... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | GraphDB is the most utilized semantic triplestore for mission-critical enterprise... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GraphDB Free is a non-commercial version and is free to use. GraphDB Enterprise edition... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Riding the Databricks Wave with Hybrid Knowledge Graphs Matching Skills and Candidates with Graph RAG A Triple Store RAG Retriever Integrating GraphDB with Relational Database Systems Understanding the Graph Center of Excellence | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | GraphDB former name: OWLIM | Postgres-XL | PouchDB | RDF4J formerly known as Sesame | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Nubank buys firm behind Clojure programming language Homoiconicity: It Is What It Is TerminusDB Takes on Data Collaboration with a git-Like Approach Zoona Case Study Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic provided by Google News | Ontotext's GraphDB Solution is Now Available on the Microsoft Azure Marketplace Ontotext Unveils GraphDB 10.4 with Enhanced AWS Integration and ChatGPT Connector Ontotext Platform 3.0 for Enterprise Knowledge Graphs Released Ontotext's GraphDB 8.10 Makes Knowledge Graph Experience Faster and Richer Ontotext's GraphDB 10 Brings Modern Data Architectures to the Mainstream with Better Resilience and Еаsier Operations provided by Google News | Building an Offline First App with PouchDB — SitePoint Create Offline Web Apps Using Service Workers & PouchDB — SitePoint 3 Reasons To Think Offline First Getting Started with PouchDB Client-Side JavaScript Database — SitePoint Offline-first web and mobile apps: Top frameworks and components provided by Google News | GraphDB Goes Open Source Ontotext's GraphDB 8.10 Makes Knowledge Graph Experience Faster and Richer provided by Google News |
Share this page