DBMS > Ehcache vs. InfinityDB vs. Oracle NoSQL vs. OrientDB vs. SQLite
System Properties Comparison Ehcache vs. InfinityDB vs. Oracle NoSQL vs. OrientDB vs. SQLite
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Ehcache Xexclude from comparison | InfinityDB Xexclude from comparison | Oracle NoSQL Xexclude from comparison | OrientDB Xexclude from comparison | SQLite Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A widely adopted Java cache with tiered storage options | A Java embedded Key-Value Store which extends the Java Map interface | A multi-model, scalable, distributed NoSQL database, designed to provide highly reliable, flexible, and available data management across a configurable set of storage nodes | Multi-model DBMS (Document, Graph, Key/Value) | Widely used embeddable, in-process RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Key-value store | Document store Key-value store Relational DBMS | Document store Graph DBMS Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.ehcache.org | boilerbay.com | www.oracle.com/database/nosql/technologies/nosql | orientdb.org | www.sqlite.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.ehcache.org/documentation | boilerbay.com/infinitydb/manual | docs.oracle.com/en/database/other-databases/nosql-database/index.html | www.orientdb.com/docs/last/index.html | www.sqlite.org/docs.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Terracotta Inc, owned by Software AG | Boiler Bay Inc. | Oracle | OrientDB LTD; CallidusCloud; SAP | Dwayne Richard Hipp | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2009 | 2002 | 2011 | 2010 | 2000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.10.0, March 2022 | 4.0 | 24.1, May 2024 | 3.2.29, March 2024 | 3.46.0 (23 May 2024), May 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2; commercial licenses available | commercial | Open Source Proprietary for Enterprise Edition (Oracle Database EE license has Oracle NoSQL database EE covered: details) | Open Source Apache version 2 | Open Source Public Domain | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM | Linux Solaris SPARC/x86 | All OS with a Java JDK (>= JDK 6) | server-less | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes nested virtual Java Maps, multi-value, logical ‘tuple space’ runtime Schema upgrade | Support Fixed schema and Schema-less deployment with the ability to interoperate between them. | schema-free Schema can be enforced for whole record ("schema-full") or for some fields only ("schema-hybrid") | yes dynamic column types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes all Java primitives, Date, CLOB, BLOB, huge sparse arrays | optional | yes | yes not rigid because of 'dynamic typing' concept. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | no manual creation possible, using inversions based on multi-value capability | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like DML and DDL statements | SQL-like query language, no joins | yes SQL-92 is not fully supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JCache | Access via java.util.concurrent.ConcurrentNavigableMap Interface Proprietary API to InfinityDB ItemSpace (boilerbay.com/docs/ItemSpaceDataStructures.htm) | RESTful HTTP API | Tinkerpop technology stack with Blueprints, Gremlin, Pipes Java API RESTful HTTP/JSON API | ADO.NET inofficial driver JDBC inofficial driver ODBC inofficial driver | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java | Java | C C# Go Java JavaScript (Node.js) Python | .Net C C# C++ Clojure Java JavaScript JavaScript (Node.js) PHP Python Ruby Scala | Actionscript Ada Basic C C# C++ D Delphi Forth Fortran Haskell Java JavaScript Lisp Lua MatLab Objective-C OCaml Perl PHP PL/SQL Python R Ruby Scala Scheme Smalltalk Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | no | Java, Javascript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes Cache Event Listeners | no | no | Hooks | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding by using Terracotta Server | none | Sharding | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes by using Terracotta Server | none | Electable source-replica replication per shard. Support distributed global deployment with Multi-region table feature | Multi-source replication | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | with Hadoop integration | no could be achieved with distributed queries | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Tunable Consistency (Strong, Eventual, Weak) | Immediate Consistency READ-COMMITTED or SERIALIZED | Eventual Consistency Immediate Consistency depending on configuration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no manual creation possible, using inversions based on multi-value capability | no | yes relationship in graphs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes supports JTA and can work as an XA resource | ACID Optimistic locking for transactions; no isolation for bulk loads | configurable ACID within a storage node (=shard) | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes via file-system locks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using a tiered cache-storage approach | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes off heap cache | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Access rights for users and roles | Access rights for users and roles; record level security configurable | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for SQLite is a powerful and comprehensive SQLite GUI that provides a complete set of functions for database management and development. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ehcache | InfinityDB | Oracle NoSQL | OrientDB | SQLite | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category | Big gains for Relational Database Management Systems in DB-Engines Ranking Scaling Australia's Most Popular Online News Sites with Ehcache Atlassian asks customers to patch critical Jira vulnerability Critical Jira Flaw in Atlassian Could Lead to RCE DZone Coding Java JBoss 5 to 7 in 11 steps provided by Google News OpenWorld 2013: Oracle NoSQL Database On the Rise? Blog Theme - Details We built a geo-distributed, serverless modern app using the Oracle NoSQL Database Cloud Service Oracle Defends Relational DBs Against NoSQL Competitors Oracle Adds New AI-Enabling Features To MySQL HeatWave provided by Google News OrientDB: A Flexible and Scalable Multi-Model NoSQL DBMS Comparing Graph Databases II. Part 2: ArangoDB, OrientDB, and… | by Sam Bell The 12 Best Graph Databases to Consider for 2024 ArangoDB raises $10 million for NoSQL database management Introducing Gremlin The Graph Database provided by Google News Microsoft Research chief scientist has no issue with Windows Recall How to Work with SQLite Database in Python How to work with Dapper and SQLite in ASP.NET Core A Guide to Working with SQLite Databases in Python SQLite Vulnerability Could Put Thousands of Apps at Risk provided by Google News |
Share this page