Migrating Oracle Workloads to Google Cloud - Cloud Spanner
There are plenty of database migration options out there, and we love working with clients to help them assess and evaluate which one is best for them. Options include:
- Bare Metal Solution (BMS)
- On Cloud SQL
- On GCE (Google Compute Engine)
- Cloud Spanner
Cloud SpannerIf your application requires a relational database with global reach and scalability, you’ll have to undergo a rewrite. Fortunately, you can also take advantage of cloud-native databases such as Cloud Spanner which combine the benefits of a relational database structure with non-relational horizontal scaling. Cloud Spanner is the only enterprise-grade, globally distributed database service and storage solution specifically built for the cloud. It provides features such as global transactions, strongly consistent reads and automatic multi-site replication and failover. When migrating your application to Cloud Spanner, it’s important to take into account the different features available. You’ll also almost certainly need to redesign / rewrite your application architecture to fit with Cloud Spanner’s feature set, which includes:
- Strongly consistent scale-out relational database management system (RDBMS) cluster.
- Cross-table transactional support – transactions can span multiple tables.
- Primary key (PK) design driven tables – all tables must have a declared primary key, which can be composed of multiple table columns.
- Interleaved tables – tables can have physical dependencies with each other.
- Indexes – supports secondary indexes.
- Schema and data model conversion.
- SQL queries translation.
- Refactoring of your application to use Cloud Spanner.
- Bulk export of data from Oracle and import into Cloud Spanner using Cloud Dataflow.
- Consistency maintenance between both database systems during the migration.
- Cut-over and go live of the application away from Oracle.
- Focus on your app logic instead of spending time managing hardware and software.
- Scale out RDBMS solutions without complex sharding or clustering.
- Gain horizontal scaling without migration from relational to NoSQL databases.
- No support for server side code such as stored procedures and triggers.
- Lack of implementation of a sequence generator.
- Support only for database-level access controls using IAM access permissions and roles.