DBMS > Amazon DocumentDB vs. Google Cloud Spanner vs. Microsoft SQL Server vs. Percona Server for MongoDB vs. PostgreSQL
System Properties Comparison Amazon DocumentDB vs. Google Cloud Spanner vs. Microsoft SQL Server vs. Percona Server for MongoDB vs. PostgreSQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Amazon DocumentDB Xexclude from comparison | Google Cloud Spanner Xexclude from comparison | Microsoft SQL Server Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | PostgreSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Fast, scalable, highly available, and fully managed MongoDB-compatible database service | 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. | Microsofts flagship relational DBMS | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS | Relational DBMS | Document store | 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 Graph DBMS Spatial DBMS | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | aws.amazon.com/documentdb | cloud.google.com/spanner | www.microsoft.com/en-us/sql-server | www.percona.com/mongodb/software/percona-server-for-mongodb | www.postgresql.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | aws.amazon.com/documentdb/resources | cloud.google.com/spanner/docs | learn.microsoft.com/en-US/sql/sql-server | docs.percona.com/percona-distribution-for-mongodb | www.postgresql.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | Percona | PostgreSQL Global Development Group www.postgresql.org/developer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2019 | 2017 | 1989 | 2015 | 1989 1989: Postgres, 1996: PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | SQL Server 2022, November 2022 | 3.4.10-2.10, November 2017 | 16.2, February 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | commercial | commercial restricted free version is available | Open Source GPL Version 2 | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | hosted | Linux Windows | Linux | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | 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 | no | yes specific XML-type available, but no XML query functionality. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes Query statements complying to ANSI 2011 | yes | no | yes standard with numerous extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | proprietary protocol using JSON (MongoDB compatible) | 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 ODBC OLE DB Tabular Data Stream (TDS) | proprietary protocol using JSON | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript (Node.js) PHP Python | Go Java JavaScript (Node.js) Python | C# C++ Delphi Go Java JavaScript (Node.js) PHP Python R Ruby Visual Basic | 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 | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | Transact SQL, .NET languages, R, Python and (with SQL Server 2019) Java | JavaScript | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | tables can be distributed across several files (horizontal partitioning); sharding through federation | Sharding | partitioning by range, list and (since PostgreSQL 11) by hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-availability zones for high availability, asynchronous replication for up to 15 read replicas | Multi-source replication with 3 replicas for regional instances. | yes, but depending on the SQL-Server Edition | Source-replica replication | Source-replica replication other methods possible by using 3rd party extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no may be implemented via Amazon Elastic MapReduce (Amazon EMR) | yes using Google Cloud Dataflow | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not used, however similar functionality with DBRef possible | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Atomic single-document operations | ACID Strict serializable isolation | ACID | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | 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 | yes | yes via In-Memory Engine | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | fine grained access rights according to SQL-standard | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat Monitor is a safe, simple and agentless remote server monitoring tool for SQL Server and many other database management systems. » more Navicat for SQL Server gives you a fully graphical approach to database management and development. » more | Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools.
» more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more Redgate webinars: A series of key topics for new PostgreSQL users. » more Fujitsu Enterprise Postgres: An Enterprise Grade PostgreSQL with the flexibility of a hybrid cloud solution combined with industry leading security, availability and performance. » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more Timescale: Calling all PostgreSQL users – the 2023 State of PostgreSQL survey is now open! Share your favorite extensions, preferred frameworks, community experiences, and more. Take the survey today! » more CYBERTEC is your professional partner in PostgreSQL topics for over 20 years. As our main aim is to be your single-source all-in-one IT service provider, we offer a wide range of products and services. Visit our website for more details. » more pgDash: In-Depth PostgreSQL Monitoring. » more Instaclustr: Fully Hosted & Managed PostgreSQL » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon DocumentDB | Google Cloud Spanner | Microsoft SQL Server | Percona Server for MongoDB | PostgreSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Microsoft SQL Server is the DBMS of the Year | 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 Monitoring PostgreSQL with Redgate Monitor Mask sensitive Amazon DocumentDB log data with Amazon CloudWatch Logs data protection | Amazon Web Services Vector search for Amazon DocumentDB (with MongoDB compatibility) is now generally available | Amazon Web Services AWS announces Amazon DocumentDB I/O-Optimized Reduce cost and improve performance by migrating to Amazon DocumentDB 5.0 | Amazon Web Services AWS announces vector search for Amazon DocumentDB provided by Google News Google Improves Cloud Spanner: More Compute and Storage without Price Increase Google turns up the heat on AWS, claims Cloud Spanner is half the cost of DynamoDB Google makes its Cloud Spanner database service faster and more cost-efficient Google Spanner: When Do You Need to Move to It? Google Cloud Spanner competes directly with Amazon DynamoDB provided by Google News Why migrate Windows Server and SQL Server to Azure: ROI, innovation, and free offers RDS Custom for SQL Server supports SQL Server Developer Edition How to Know When It's Time for a Microsoft SQL Server Upgrade Deploying a highly available Microsoft SQL Server database on Oracle Cloud Infrastructure (OCI) using AlwaysON ... Top 35 SQL Server Interview Questions And Answers for 2024 provided by Google News 5 Reasons to Run MongoDB on Kubernetes FerretDB goes GA: Gives you MongoDB, without the MongoDB... How to Plan Your MongoDB Upgrade Percona launches management system aimed at open-source databases Percona Platform aims to boost open source database support provided by Google News Introducing OCI Database with PostgreSQL: Completing Our Cloud Database Suite for Every Need Handle tables without primary keys while creating Amazon Aurora PostgreSQL zero-ETL integrations with Amazon ... PostgreSQL or MySQL: What Should I Choose for My Full-Stack Project? PeerDB raises $3.6M to accelerate PostgreSQL data movement Did One Guy Just Stop a Huge Cyberattack? provided by Google News |
Share this page