Global Financial Data Firm's Database Migration from Oracle to CockroachDB

Global Financial Data Firm's Database Migration from Oracle to CockroachDB

A global financial data firm migrated off its legacy Oracle infrastructure, creating a single hybrid, geo-partitioned deployment of CockroachDB.

Frustrated by its legacy Oracle database architecture, a major American financial data firm wanted to consolidate its legacy databases and migrate to public cloud infrastructure. 

Through numerous acquisitions and organic growth, the firm had accumulated a multitude of Oracle databases and application platforms spread across the U.S., Canada, Australia, and Europe. 

They wanted to consolidate this infrastructure into a single platform and migrate many of their applications to the cloud. The financial data firm evaluated multiple options, including Google Spanner, but found that Spanner couldn’t bridge both cloud and on-prem servers. 

The financial data firm ultimately chose CockroachDB because it offered them the flexibility and high performance they required, in addition to enabling a hybrid cloud deployment. In order to provide high read and write performance, they used geo-partitioned replicas, a capability that allows for the partitioning of data by location.

After migrating its identity and access management (IAM) system, the firm plans to migrate more apps from Oracle to CockroachDB.

Challenge: Legacy Database Migration

A large financial and customer data firm headquartered in the United States was facing the tasks of consolidating its legacy databases and migrating to public cloud infrastructure. The team decided they needed to simplify and modernize their application architecture. They planned to migrate many of their systems to Google Cloud Platform (GCP), while keeping some systems in traditional data centers.

Their first priority was to modernize their identity and access management (IAM) system, followed by a user service that tracks application authorization. After that, there were various additional applications they needed to modernize. The team ruled out direct lift-and-shift migration of their legacy database systems since their Oracle databases were inordinately expensive and poorly suited for multi-datacenter cloud deployments. They decided to explore new solutions.

Requirements: Provide a hybrid cloud deployment that spans on-prem and Google Cloud

The team had several requirements for their replacement database. Principal among these requirements was the ability to provide a single hybrid cloud deployment that could span their nine physical and cloud regions around the globe. They planned to keep some data on-prem and migrate other data to Google Cloud (GCP). However, across this global setting, the team needed to provide low latency reads and writes to their customers .

Solution: A Multi-Region, Hybrid Cloud Deployment of CockroachDB

multi-region, hybrid cloud deployment of CockroachDB running on-prem and on Google Cloud

*Diagram: An example of a CockroachDB cluster similar to the financial data firm’s. The cluster uses CockroachDB’s geo-partitioned replicas feature, where all replicas for a set of data are constrained to a region, and each replica is pinned to separate datacenter.*

CockroachDB’s architecture allows developers to deploy the same software across on-prem servers and cloud regions, creating a single logical cluster that can address all data around the globe and can be accessed from any node. With this characteristic, the financial data firm could create the hybrid cloud deployment they needed.

First Application Migrated: Identity Access Management (IAM) Microservice

The first application the firm migrated, their identity access management (IAM) microservice. The application’s requirement of high read and write performance, was a compelling fit for CockroachDB’s geo-partitioning capability because the entities being authenticated are globally distributed and strongly tied to specific geographic regions. 

The team deployed CockroachDB across four GCP regions and two on-prem datacenters. Within each region, there are three different availability zones, each housing one CockroachDB node. 

They used CockroachDB’s geo-partitioned replicas, allowing the team to pin replicas of data to locations to minimize latency. 

Geo-Partitioning for low latency and resiliency

By default, CockroachDB replicates data and distributes the replicas in a way that maximizes geographic diversity. This replication and distribution allows the database to remain available in the event of an outage. With the geo-partitioned replicas feature, all replicas are constrained to the region closest to the end-user, in order to reduce read and write latency. The replicas are then pinned to different datacenters within that region so the data can survive availability zone failures. This pattern provides high availability without sacrificing performance. (For an indepth explainer, check out this video.)

With CockroachDB, the financial data firm has found a solution for its new cloud-first database strategy, consolidating its datacenter footprint and moving services to the cloud. CockroachDB is supporting them in this process, enabling them to scale and migrate their databases across physical data centers and cloud regions, without causing any downtime or requiring application changes.

Read the full case study here.

Further reading: