DBMS > Google Cloud Spanner vs. Microsoft Azure Table Storage vs. MySQL vs. NuoDB vs. Oracle
System Properties Comparison Google Cloud Spanner vs. Microsoft Azure Table Storage vs. MySQL vs. NuoDB vs. Oracle
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Google Cloud Spanner Xexclude from comparison | Microsoft Azure Table Storage Xexclude from comparison | MySQL Xexclude from comparison | NuoDB Xexclude from comparison | Oracle Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | 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. | A Wide Column Store for rapid development using massive semi-structured datasets | Widely used open source RDBMS | NuoDB is a webscale distributed database that supports SQL and ACID transactions | Widely used RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Wide column store | Relational DBMS Key/Value like access via memcached API | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store Graph DBMS with Oracle Spatial and Graph RDF store with Oracle Spatial and Graph Spatial DBMS with Oracle Spatial and Graph Vector DBMS since Oracle 23 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cloud.google.com/spanner | azure.microsoft.com/en-us/services/storage/tables | www.mysql.com | www.3ds.com/nuodb-distributed-sql-database | www.oracle.com/database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cloud.google.com/spanner/docs | dev.mysql.com/doc | doc.nuodb.com | docs.oracle.com/en/database | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | Dassault Systèmes originally NuoDB, Inc. | Oracle | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2012 | 1995 | 2013 | 1980 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.3.0, January 2024 | 23c, September 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | commercial | Open Source GPL version 2. Commercial licenses with extended functionallity are available | commercial limited edition free | commercial restricted free version is available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C and C++ | C++ | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | hosted | FreeBSD Linux OS X Solaris Windows | hosted Amazon EC2, Windows Azure, SoftLayer Linux OS X Windows | AIX HP-UX Linux OS X Solaris Windows z/OS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | yes | yes | yes Schemaless in JSON and XML columns | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes Query statements complying to ANSI 2011 | no | yes with proprietary extensions | yes | yes with proprietary extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | gRPC (using protocol buffers) API JDBC At present, JDBC supports read-only queries. No support for DDL or DML statements. RESTful HTTP API | RESTful HTTP API | ADO.NET JDBC ODBC Proprietary native API | ADO.NET JDBC ODBC | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript (Node.js) Python | .Net C# C++ Java JavaScript (Node.js) PHP Python Ruby | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net C C++ Go Java JavaScript JavaScript (Node.js) PHP Python Ruby | C C# C++ Clojure Cobol Delphi Eiffel Erlang Fortran Groovy Haskell Java JavaScript Lisp Objective C OCaml Perl PHP Python R Ruby Scala Tcl Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | yes proprietary syntax | Java, SQL | PL/SQL also stored procedures in Java possible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding Implicit feature of the cloud service | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | data is dynamically stored/cached on the nodes where it is read/written | Sharding, horizontal partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication with 3 replicas for regional instances. | yes implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Multi-source replication Source-replica replication | yes Managed transparently by NuoDB | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes using Google Cloud Dataflow | no | no | no | no can be realized in PL/SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | no | yes not for MyISAM storage engine | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID Strict serializable isolation | optimistic locking | ACID not for MyISAM storage engine | ACID tunable commit protocol | ACID isolation level can be parameterized | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes table locks or row locks depending on storage engine | yes MVCC | 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 | no | yes | yes Temporary table | yes Version 12c introduced the new option 'Oracle Database In-Memory' | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Access rights based on private key authentication or shared access signatures | Users with fine-grained authorization concept no user groups or roles | Standard SQL roles/ privileges, Administrative Users | 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 for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. » more | Navicat for Oracle improves the efficiency and productivity of Oracle developers and administrators with a streamlined working environment. » more Devart ODBC driver for Oracle accesses Oracle databases from ODBC-compliant reporting, analytics, BI, and ETL tools on both 32 and 64-bit Windows, macOS, and Linux. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Google Cloud Spanner | Microsoft Azure Table Storage | MySQL | NuoDB | Oracle | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | Meet some database management systems you are likely to hear more about in the future | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Architecting eCommerce Platforms for Zero Downtime on Black Friday and Beyond Oracle Cloud World Google Improves Cloud Spanner: More Compute and Storage without Price Increase Google makes its Cloud Spanner database service faster and more cost-efficient Google turns up the heat on AWS, claims Cloud Spanner is half the cost of DynamoDB Google Spanner: When Do You Need to Move to It? Google Cloud Spanner competes directly with Amazon DynamoDB provided by Google News Azure Cosmos DB Data Migration tool imports from Azure Table storage | Azure updates How to Use C# Azure.Data.Tables SDK with Azure Cosmos DB How to use Azure Table storage in .Net How to write data to Azure Table Store with an Azure Function Testing Precompiled Azure Functions Locally with Storage Emulator provided by Google News PostgreSQL or MySQL: What Should I Choose for My Full-Stack Project? Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade ... General Availability: Azure MySQL Import feature for Azure Database for MySQL Single to Flexible Server migrations ... Best Practices for Configuring MySQL Replication Zendesk Moves from DynamoDB to MySQL and S3 to Save over 80% in Costs provided by Google News Dassault Systèmes Announces the Acquisition of NuoDB, a Cloud-Native Distributed SQL Database Leader Deploy the NuoDB Database in Docker Containers NuoDB 4.0 improves cloud-native database capabilities Distributed SQL Database NuoDB 4.0 Supports Kubernetes Operator and Indexing Improvements NuoDB empowers distributed database users to optimize cloud and container resources with new graphical dashboard provided by Google News Blog Theme - Details RSA Conference 2024: The Art of Possible Proper SQL comes to MongoDB applications .. with the Oracle Database! Oracle and Microsoft bring Oracle Database@Azure to Europe Maximize database performance with Oracle Exadata and Oracle Linux provided by Google News |
Share this page