DBMS > H2GIS vs. Oracle Berkeley DB vs. Percona Server for MongoDB vs. Spark SQL vs. TimesTen
System Properties Comparison H2GIS vs. Oracle Berkeley DB vs. Percona Server for MongoDB vs. Spark SQL vs. TimesTen
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | H2GIS Xexclude from comparison | Oracle Berkeley DB Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | Spark SQL Xexclude from comparison | TimesTen Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Spatial extension of H2 | Widely used in-process key-value store | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | Spark SQL is a component on top of 'Spark Core' for structured data processing | In-Memory RDBMS compatible to Oracle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Spatial DBMS | Key-value store supports sorted and unsorted key sets Native XML DBMS in the Oracle Berkeley DB XML version | Document store | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.h2gis.org | www.oracle.com/database/technologies/related/berkeleydb.html | www.percona.com/mongodb/software/percona-server-for-mongodb | spark.apache.org/sql | www.oracle.com/database/technologies/related/timesten.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.h2gis.org/docs/home | docs.oracle.com/cd/E17076_05/html/index.html | docs.percona.com/percona-distribution-for-mongodb | spark.apache.org/docs/latest/sql-programming-guide.html | docs.oracle.com/database/timesten-18.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | CNRS | Oracle originally developed by Sleepycat, which was acquired by Oracle | Percona | Apache Software Foundation | Oracle, TimesTen Performance Software, HP originally founded in HP Labs it was acquired by Oracle in 2005 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 1994 | 2015 | 2014 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 18.1.40, May 2020 | 3.4.10-2.10, November 2017 | 3.5.0 ( 2.13), September 2023 | 11 Release 2 (11.2.2.8.0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source LGPL 3.0 | Open Source commercial license available | Open Source GPL Version 2 | Open Source Apache 2.0 | 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, Java, C++ (depending on the Berkeley DB edition) | C++ | Scala | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | AIX Android FreeBSD iOS Linux OS X Solaris VxWorks Windows | Linux | Linux OS X Windows | AIX HP-UX Linux OS X Solaris SPARC/x86 Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no | yes | yes | 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 | yes only with the Berkeley DB XML edition | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes SQL interfaced based on SQLite is available | no | SQL-like DML and DDL statements | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | proprietary protocol using JSON | JDBC ODBC | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java | .Net Figaro is a .Net framework assembly that extends Berkeley DB XML into an embeddable database engine for .NET others Third-party libraries to manipulate Berkeley DB files are available for many languages C C# C++ Java JavaScript (Node.js) 3rd party binding Perl Python Tcl | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | Java Python R Scala | C C++ Java PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes based on H2 | no | JavaScript | no | PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes only for the SQL API | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | none | Sharding | yes, utilizing Spark Core | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes based on H2 | Source-replica replication | Source-replica replication | none | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency or Eventual Consistency depending on configuration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | no | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes, multi-version concurrency control (MVCC) | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | 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 | yes | yes via In-Memory Engine | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes based on H2 | no | Access rights for users and roles | no | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
H2GIS | Oracle Berkeley DB | Percona Server for MongoDB | Spark SQL | TimesTen | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | ACM recognizes far-reaching technical achievements with special awards Margo I. Seltzer | Berkman Klein Center Database Trends Report: SQL Beats NoSQL, MySQL Most Popular -- ADTmag How to store financial market data for backtesting The importance of bitcoin nodes and how to start one provided by Google News | 5 Reasons to Run MongoDB on Kubernetes Percona launches management system aimed at open-source databases FerretDB goes GA: Gives you MongoDB, without the MongoDB... The essential guide to MongoDB security Percona's DBMS Popularity Survey provided by Google News | Use Amazon Athena with Spark SQL for your open-source transactional table formats | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Performant IPv4 Range Spark Joins | by Jean-Claude Cote 18 Top Big Data Tools and Technologies to Know About in 2024 provided by Google News | Oracle starts peddling Exalytics in-memory appliance provided by Google News |
Share this page