DBMS > Elasticsearch vs. Google Cloud Spanner vs. PostgreSQL
System Properties Comparison Elasticsearch vs. Google Cloud Spanner vs. PostgreSQL
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | Google Cloud Spanner Xexclude from comparison | PostgreSQL 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 | A horizontally scalable, globally consistent, relational database service. It is the externalization of the core Google database that runs the biggest aspects of Google, like Ads and Google Play. | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine Vector DBMS | Relational DBMS | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | cloud.google.com/spanner | www.postgresql.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | cloud.google.com/spanner/docs | www.postgresql.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | PostgreSQL Global Development Group www.postgresql.org/developer | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2017 | 1989 1989: Postgres, 1996: PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 16.4, August 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | commercial | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | PostgreSQL Flex @ STACKIT offers managed PostgreSQL Instances with adjustable CPU, RAM, storage amount and speed and several extensions available, in enterprise grade to perfectly match all application requirements. All 100% GDPR-compliant. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | hosted | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | 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 | no | yes specific XML-type available, but no XML query functionality. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | yes Query statements complying to ANSI 2011 | yes standard with numerous extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | gRPC (using protocol buffers) API JDBC At present, JDBC supports read-only queries. No support for DDL or DML statements. RESTful HTTP API | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | Go Java JavaScript (Node.js) Python | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | no | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | partitioning by range, list and (since PostgreSQL 11) by hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | Multi-source replication with 3 replicas for regional instances. | Source-replica replication other methods possible by using 3rd party extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | yes using Google Cloud Dataflow | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID Strict serializable isolation | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Memcached and Redis integration | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more.
» more pgDash: In-Depth PostgreSQL Monitoring. » more CYBERTEC is a premier consulting company that provides open-source database PostgreSQL management and data science solutions. By offering PostgreSQL migrations, administration, design, and more, CYBERTEC provides an all-in-one catalog of powerful PostgreSQL support. It's through this exceptional service, equipped with a team of experts, that the company has established a proven reputation. When it comes to Machine Learning, Artificial Intelligence, and Big Data, CYBERTEC offers services customized for you. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | Google Cloud Spanner | PostgreSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | PostgreSQL is the DBMS of the Year 2023 Snowflake is the DBMS of the Year 2022, defending the title from last year Snowflake is the DBMS of the Year 2021 Elastic's AI-powered data search: Unlocking business insights Elastic Introduces Better Binary Quantization Technique in Elasticsearch Elasticsearch Was Great, But Vector Databases Are the Future Amazon OpenSearch Service announces Standard and Extended Support dates for Elasticsearch and OpenSearch versions Elastic Cloud Serverless enhances real-time search provided by Google News Google Cloud Spanner gets dual-region configuration option Google Cloud adds graph and vector search features to Spanner database New features make Google's Spanner a database for AI Google Cloud expands its database portfolio with new AI capabilities Google Cloud Enhances Spanner with Dual-Region Configuration provided by Google News Aurora Limitless: AWS Introduces New PostgreSQL Database with Automated Horizontal Scaling High-Severity Flaw in PostgreSQL Allows Hackers to Exploit Environment Variables Amazon Aurora PostgreSQL Limitless Database is now generally available Varonis Warns of Bug Discovered in PostgreSQL PL/Perl PostgreSQL tutorial: Get started with PostgreSQL 16 provided by Google News |
Share this page