A company is migrating its on-premises Oracle database to Google Cloud. They want to minimize licensing costs and use a fully managed database service with high availability. Which database should they choose?
Trap 1: Cloud Spanner
Cloud Spanner is a horizontally scalable, globally distributed relational database that provides strong consistency and high availability at scale. However, its unique architecture requires schema design using interleaved tables, commit timestamps, and different query optimization patterns, which are not directly compatible with an Oracle schema. For a single-region Oracle migration with ordinary transaction volumes, Spanner's per-node costs and operational complexity are far higher than necessary; it is intended for globally distributed or extremely high-throughput workloads, not for a straightforward lift-and-shift.
Trap 2: Bare Metal Solution for Oracle
Bare Metal Solution for Oracle provides dedicated physical servers on Google Cloud to run Oracle workloads, but it does not eliminate or reduce Oracle licensing costs. You are still responsible for obtaining and managing Oracle Database licenses, and you must also handle OS and database administration, patching, and tuning yourself. It is designed for workloads that require full Oracle compatibility or specific performance/security compliance, but it does not achieve the cost savings that an open-source migration would, making it unsuitable for a cost-driven migration away from Oracle.
- A
Cloud SQL for MySQL
Cloud SQL for MySQL is a managed database service, but Oracle applications often rely on proprietary PL/SQL stored procedures, hierarchical CONNECT BY queries, and Oracle-specific analytic functions that MySQL does not support. Migration would require substantial rewriting of SQL and procedural code, increasing the project's risk, timeline, and cost. While MySQL is open source and cost-effective, its SQL dialect differs significantly from Oracle's, making it a poor fit unless the application is very simple and uses only standard SQL.
- B
Cloud Spanner
Why wrong: Cloud Spanner is a horizontally scalable, globally distributed relational database that provides strong consistency and high availability at scale. However, its unique architecture requires schema design using interleaved tables, commit timestamps, and different query optimization patterns, which are not directly compatible with an Oracle schema. For a single-region Oracle migration with ordinary transaction volumes, Spanner's per-node costs and operational complexity are far higher than necessary; it is intended for globally distributed or extremely high-throughput workloads, not for a straightforward lift-and-shift.
- C
Bare Metal Solution for Oracle
Why wrong: Bare Metal Solution for Oracle provides dedicated physical servers on Google Cloud to run Oracle workloads, but it does not eliminate or reduce Oracle licensing costs. You are still responsible for obtaining and managing Oracle Database licenses, and you must also handle OS and database administration, patching, and tuning yourself. It is designed for workloads that require full Oracle compatibility or specific performance/security compliance, but it does not achieve the cost savings that an open-source migration would, making it unsuitable for a cost-driven migration away from Oracle.
- D
Cloud SQL for PostgreSQL
Cloud SQL for PostgreSQL is the best choice here because PostgreSQL is the most feature-compatible open-source relational database with Oracle. It supports PL/pgSQL (similar to PL/SQL), CTEs, window functions, JSON data types, and a wide range of SQL features, reducing the amount of code changes needed during migration. Cloud SQL provides a fully managed service with automatic failover, backups, and high availability, removing administrative overhead and lowering total cost of ownership compared to running Oracle on VMs or on bare metal. This combination of SQL dialect compatibility and managed operations makes it the right fit for a single-region migration aiming to cut costs.