DBMS > Apache Pinot vs. EJDB vs. Lovefield vs. Oracle NoSQL vs. TimesTen
System Properties Comparison Apache Pinot vs. EJDB vs. Lovefield vs. Oracle NoSQL vs. TimesTen
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Pinot Xexclude from comparison | EJDB Xexclude from comparison | Lovefield Xexclude from comparison | Oracle NoSQL Xexclude from comparison | TimesTen Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Realtime distributed OLAP datastore, designed to answer OLAP queries with low latency | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | Embeddable relational database for web apps written in pure JavaScript | A multi-model, scalable, distributed NoSQL database, designed to provide highly reliable, flexible, and available data management across a configurable set of storage nodes | In-Memory RDBMS compatible to Oracle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Relational DBMS | Document store Key-value store Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | pinot.apache.org | github.com/Softmotions/ejdb | google.github.io/lovefield | www.oracle.com/database/nosql/technologies/nosql | www.oracle.com/database/technologies/related/timesten.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.pinot.apache.org | github.com/Softmotions/ejdb/blob/master/README.md | github.com/google/lovefield/blob/master/docs/spec_index.md | docs.oracle.com/en/database/other-databases/nosql-database/index.html | docs.oracle.com/database/timesten-18.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Softmotions | Oracle | Oracle, TimesTen Performance Software, HP originally founded in HP Labs it was acquired by Oracle in 2005 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2015 | 2012 | 2014 | 2011 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.0, September 2023 | 2.1.12, February 2017 | 23.3, December 2023 | 11 Release 2 (11.2.2.8.0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source GPLv2 | Open Source Apache 2.0 | Open Source Proprietary for Enterprise Edition (Oracle Database EE license has Oracle NoSQL database EE covered: details) | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | JavaScript | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java JDK11 or higher | server-less | server-less, requires a JavaScript environment (browser, Node.js) tested with Chrome, Firefox, IE, Safari | Linux Solaris SPARC/x86 | AIX HP-UX Linux OS X Solaris SPARC/x86 Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | yes | Support Fixed schema and Schema-less deployment with the ability to interoperate between them. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes string, integer, double, bool, date, object_id | yes | optional | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | no | SQL-like query language via JavaScript builder pattern | SQL-like DML and DDL statements | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | in-process shared library | RESTful HTTP API | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java Python | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | JavaScript | C C# Go Java JavaScript (Node.js) Python | C C++ Java PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | no | PL/SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | Using read-only observers | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning | none | none | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | none | Electable source-replica replication per shard. Support distributed global deployment with Multi-region table feature | Multi-source replication Source-replica replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | with Hadoop integration | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency depending on configuration | Immediate Consistency or Eventual Consistency depending on configuration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | configurable ACID within a storage node (=shard) | ACID | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes, by using IndexedDB or the cloud service Firebase Realtime Database | yes | 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 using MemoryDB | yes off heap cache | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Access rights for 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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Pinot | EJDB | Lovefield | Oracle NoSQL | TimesTen | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | StarTree Finds Apache Pinot the Right Vintage for IT Observability StarTree Makes Observability Case for Apache Pinot Database StarTree broadly enhances Apache Pinot-based analytics platform Open source Apache Pinot advances as StarTree boosts real-time analytics and observability Real-Time Analytics for Mobile App Crashes using Apache Pinot provided by Google News | Database Technologies Oracle NoSQL database comes to the cloud Oracle Defends Relational DBs Against NoSQL Competitors Larry Ellison Just Embraced the Enemy. Or Did He? Oracle Adds New AI-Enabling Features To MySQL HeatWave provided by Google News | Oracle starts peddling Exalytics in-memory appliance provided by Google News |
Share this page