DBMS > EDB Postgres vs. Elasticsearch vs. FoundationDB vs. ObjectBox vs. Spark SQL
System Properties Comparison EDB Postgres vs. Elasticsearch vs. FoundationDB vs. ObjectBox vs. Spark SQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EDB Postgres Xexclude from comparison | Elasticsearch Xexclude from comparison | FoundationDB Xexclude from comparison | ObjectBox Xexclude from comparison | Spark SQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | The EDB Postgres Platform is an enterprise-class data management platform based on the open source database PostgreSQL with flexible deployment options and Oracle compatibility features, complemented by tool kits for management, integration, and migration. | 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 | Ordered key-value store. Core features are complimented by layers. | Extremely fast embedded database for small devices, IoT and Mobile | Spark SQL is a component on top of 'Spark Core' for structured data processing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Search engine | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Object oriented DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store Spatial DBMS Vector DBMS | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.enterprisedb.com | www.elastic.co/elasticsearch | github.com/apple/foundationdb | objectbox.io | spark.apache.org/sql | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.enterprisedb.com/docs | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | apple.github.io/foundationdb | docs.objectbox.io | spark.apache.org/docs/latest/sql-programming-guide.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | EnterpriseDB | Elastic | FoundationDB | ObjectBox Limited | Apache Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2005 | 2010 | 2013 | 2017 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 14, December 2021 | 8.6, January 2023 | 6.2.28, November 2020 | 3.5.0 ( 2.13), September 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial BSD for PostgreSQL-components | Open Source Elastic License | Open Source Apache 2.0 | Open Source Apache License 2.0 | Open Source Apache 2.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 | C | Java | C++ | C and C++ | Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Windows | All OS with a Java VM | Linux OS X Windows | Android iOS Linux macOS Windows | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free some layers support schemas | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no some layers support typing | 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. | yes specific XML-type available, but no XML query functionality. | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes All search fields are automatically indexed | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes standard with numerous extensions | SQL-like query language | supported in specific SQL layer only | no | SQL-like DML and DDL statements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC native C library ODBC streaming API for large objects | Java API RESTful HTTP/JSON API | Proprietary native API | JDBC ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Delphi Java Perl PHP Python Tcl | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | C C++ Dart Go Java JavaScript planned (as of Jan 2019) Kotlin Python planned (as of Jan 2019) Swift | Java Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | yes | in SQL-layer only | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes by using the 'percolation' feature | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning by hash, list or range | Sharding | Sharding | none | yes, utilizing Spark Core | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication | yes | yes | online/offline synchronization between client and server | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | ES-Hadoop Connector | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Linearizable consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | in SQL-layer only | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | ACID | ACID | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes, multi-version concurrency control (MVCC) | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | Memcached and Redis integration | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EDB Postgres | Elasticsearch | FoundationDB | ObjectBox | Spark SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | The on-device Vector Database for Android and Java Vector search: making sense of search queries Python on-device Vector and Object Database for Local AI Evolution of search: traditional vs vector search On-device Vector Database for Dart/Flutter | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EDB Postgres | Elasticsearch | FoundationDB | ObjectBox | Spark SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | EDB unveils EDB Postgres AI EDB Puts Postgres in the Middle of Analytics Workflow with New Lakehouse Stack Nutanix partners with EDB to fit database service for AI – Blocks and Files Enterprise DB begins rolling AI features into PostgreSQL EDB Announces EDB Postgres® AI, an Intelligent Platform for Transactional, Analytical and AI Workloads provided by Google News | Apache Doris for Log and Time Series Data Analysis in NetEase: Why Not Elasticsearch and InfluxDB? 8 Powerful Alternatives to Elasticsearch Splunk vs Elasticsearch | A Comparison and How to Choose Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently Introducing Elasticsearch Vector Database to Azure OpenAI Service On Your Data (Preview) provided by Google News | FoundationDB team's new venture, Antithesis, raises $47M to enhance software testing FoundationDB Raises $17 Million Series A Financing Stonebraker Seeks to Invert the Computing Paradigm with DBOS Antithesis raises $47M to launch an automated testing platform for software FoundationDB, a very interesting NoSQL database owned by Apple, is now an open-source project provided by Google News | Run Apache Hive workloads using Spark SQL with Amazon EMR on EKS | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Performance Insights from Sigma Rule Detections in Spark Streaming Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Simba Technologies(R) Introduces New, Powerful JDBC Driver With SQL Connector for Apache Spark(TM) provided by Google News |
Share this page