DBMS > Elasticsearch vs. GraphDB vs. Heroic vs. LokiJS vs. PouchDB
System Properties Comparison Elasticsearch vs. GraphDB vs. Heroic vs. LokiJS vs. PouchDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | GraphDB former name: OWLIM Xexclude from comparison | Heroic Xexclude from comparison | LokiJS Xexclude from comparison | PouchDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed, RESTful modern search and analytics engine based on Apache Lucene Elasticsearch lets you perform and combine many types of searches such as structured, unstructured, geo, and metric | 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. | Time Series DBMS built at Spotify based on Cassandra or Google Cloud Bigtable, and ElasticSearch | In-memory JavaScript DBMS | JavaScript DBMS with an API inspired by CouchDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine | Graph DBMS RDF store | Time Series DBMS | Document store | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS Vector DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | www.ontotext.com | github.com/spotify/heroic | github.com/techfort/LokiJS | pouchdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | graphdb.ontotext.com/documentation | spotify.github.io/heroic | techfort.github.io/LokiJS | pouchdb.com/guides | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | Ontotext | Spotify | Apache Software Foundation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2000 | 2014 | 2014 | 2012 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 10.4, October 2023 | 7.1.1, June 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | commercial Some plugins of GraphDB Workbench are open sourced | Open Source Apache 2.0 | Open Source | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | Java | JavaScript | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM Linux OS X Windows | server-less, requires a JavaScript environment (browser, Node.js) | server-less, requires a JavaScript environment (browser, Node.js) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free and OWL/RDFS-schema support; RDF shapes | schema-free | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | yes, supports real-time synchronization and indexing in SOLR/Elastic search/Lucene and GeoSPARQL geometry data indexes | yes via Elasticsearch | yes via views | yes via views | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | stored SPARQL accessed as SQL using Apache Calcite through JDBC/ODBC | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | GeoSPARQL GraphQL GraphQL Federation Java API JDBC RDF4J API RDFS RIO Sail API Sesame REST HTTP Protocol SPARQL 1.1 | HQL (Heroic Query Language, a JSON-based language) HTTP API | JavaScript API | HTTP REST only for PouchDB Server JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net C# Clojure Java JavaScript (Node.js) PHP Python Ruby Scala | JavaScript | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | well-defined plugin interfaces; JavaScript server-side extensibility | no | View functions in JavaScript | View functions in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | no | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding | none | Sharding with a proxy-based framework, named couchdb-lounge | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | Multi-source replication | yes | none | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | no | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Immediate Consistency, Eventual consistency (configurable in cluster mode per master or individual client request) | Eventual Consistency Immediate Consistency | none | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes Constraint checking | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no | no atomic operations within a single collection possible | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes by using IndexedDB, WebSQL or LevelDB as backend | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Memcached and Redis integration | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | 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. | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | GraphDB former name: OWLIM | Heroic | LokiJS | PouchDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Understanding the Graph Center of Excellence Migrating From LPG to RDF Graph Model Case study: Policy Enforcement Automation With Semantics Okay, RAG… We Have a Problem Scaling Understanding with the Help of Feedback Loops, Knowledge Graphs and NLP | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | GraphDB former name: OWLIM | Heroic | LokiJS | PouchDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | PostgreSQL is the DBMS of the Year 2017 Elasticsearch moved into the top 10 most popular database management systems MySQL, PostgreSQL and Redis are the winners of the March ranking | New kids on the block: database management systems implemented in JavaScript | New kids on the block: database management systems implemented in JavaScript Elasticsearch Enables 400 Criteo Engineers to Search 4 TB of Log Data per Week Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently Splunk vs Elasticsearch | A Comparison and How to Choose Introducing Elasticsearch Vector Database to Azure OpenAI Service On Your Data (Preview) ElasticSearch Goes Deep on OpenTelemetry with eBPF Donation provided by Google News Ontotext's GraphDB Solution Now Available on the Microsoft Azure Marketplace Ontotext Unveils GraphDB 10.4 with Enhanced AWS Integration and ChatGPT Connector Ontotext's GraphDB 10 Brings Modern Data Architectures to the Mainstream with Better Resilience and Еаsier Operations Ontotext Platform 3.0 for Enterprise Knowledge Graphs Released Ontotext GraphDB 9.4 Enables SQL Access to Knowledge Graphs and Visual Mapping of Tabular Data to RDF provided by Google News LokiJS - A JavaScript Database LokiJS Reaches 1.4 provided by Google News Building an Offline First App with PouchDB — SitePoint Getting Started with PouchDB Client-Side JavaScript Database — SitePoint 3 Reasons To Think Offline First Create Offline Web Apps Using Service Workers & PouchDB — SitePoint Offline-first web and mobile apps: Top frameworks and components provided by Google News |
Share this page