Greetz's successful migration from Oracle RAC to MariaDB Galera Cluster

Greetz's successful migration from Oracle RAC to MariaDB Galera Cluster

About Greetz

Greetz provides an online personalized greeting card service to 1000s of customers in Europe and North America. Greetz approached MariaDB to provide them with a replacement database technology for their online shop that would significantly reduce the total cost of ownership (TCO) whilst ensuring high availability and a solid, predictable performance. The company’s web store application is built on Java and Hibernate (Object Relation mapping) and, prior to working with us, used Oracle® RAC as its underlying database. Their infrastructure is based on Linux and they use Ansible for configuration management.

The Challenge

Greetz was concerned by the shortage of internal Oracle DBA resources and the increasing complexity of managing their Oracle database as their business grew. They approached us to provide them with a replacement database technology for their online store that would significantly reduce the total cost of ownership (TCO) whilst ensuring high availability and a solid, predictable performance.

Our Solution

Greetz stressed to our project team that Linux, Hibernate and Ansible were to remain with only the database component being replaced. 

Before the migration, MySQL® was already in use at Greetz for Business Intelligence, Disaster Recovery and other supplementary services. These servers were updated on a regular basis using purpose built scripts and programs.

Fortunately the client’s existing Hibernate deployment used Hibernate’s default query setup. This ensured there was no native SQL to replace prior to the migration. Therefore the project team understood that migrating the application would consist of moving the database schema and data, pointing Hibernate to the new database, end-to-end testing and performance tuning.

There were a few issues in the migration process, mainly dealing with differences in character sets and data type behavior.

The differences between Oracle and MariaDB/Galera caused few issues from the application point of view due to the use of Hibernate. However the project team did have to take into account the differences in infrastructure. For example, they had to develop Ansible configuration for MariaDB and had to extend this work to support Galera. The load balancer / failover also needs to be configured, as well as Galera itself.

Also, as part of the project, Greetz wanted their existing BI and Disaster Recovery databases to be migrated from MySQL to MariaDB. Rather than deploying these systems using Galera, standard MariaDB replication was used. This has the added advantage that the BI and Disaster Recovery databases could be updated in real-time. 

One issue that is common to many migration projects is that there is bad data in the system being migrated and there was no exception here – a problem that had to be handled carefully. The schema was reasonably easy to migrate, but this was continually fine tuned during the migration process, e.g. data type mappings and indexing. The big issue with the migration of data was performance during scheduled downtime. During a very restricted time window large amounts of data had to be extracted from the existing servers, transferred to the new ones and then finally imported into MariaDB/Galera. This proved very challenging and require close co-operation with the client team. 

The testing of the resulting schema and data was a continuous process through the migration, including application testing as well as automated verification of migrated data. As part of the migration, consideration was also given to Greetz’s future data growth and services to ensure the system could be scaled, both horizontally and vertically.

Immediately after the new system went live there were some stability issues but these were anticipated as new database technologies were being used to support an existing high performance application. Even so, the newly migrated application was soon stable as our Developer and Remote DBA teams systematically resolved each remaining issue.

The Results

The Greetz migration project set out to deploy a more scalable, more performant and highly available database solution whilst providing real-time disaster recovery and BI databases. 

From a performance point of view, the new MariaDB/Galera setup is now faster than Oracle RAC and provides just as good, if not better, stability and high availability.

We successfully reduced the Total Cost of Ownership of Greetz’s database solution by removing the need for a SAN and significantly lowering license and maintenance costs.

Today, MariaDB with Galera provides a stable, proven and reliable new platform for Greetz’s high capacity online store. Whilst the migration was more complex than initially envisioned, our project team rapidly resolved issues as they arose. Greetz has also engaged our Remote DBA’s team on an ongoing basis to keep the store running optimally and assists with implementing new features and/or modifications as required.

Jan van der Venn, Chief Technology Officer at Greetz said:

“A key part of any database implementation is the accuracy of data together with the successful migration of data from the old legacy systems. This is particularly important in the e-commerce sector where customer details and purchasing history must be fully traceable and auditable.”

“We engaged with MariaDB in order to establish a single point of governance and control across all of the disparate strands relating to data and to help us ensure that best practice principles would be applied to our data migration activities.”

“MariaDB’s controlled and structured approach gave us certainty in relation to data and enabled us to achieve the overall project goal of going live on time. I would not hesitate in working again with MariaDB and would highly recommend them.”

Anders Karlsson, Sales Engineer for MariaDB on the Greetz project, said:

“We were proud to play an important role in such a critical project for Greetz. Our approach to data migration with its emphasis on data quality and process control was particularly well suited to the e-commerce industry.”

“Our team managed to deliver a successful data migration within challenging timelines because they remained focused on the key drivers of success: scope agreement, business engagement, robust approval procedures and sign-off.”

Customer testimonial

I would not hesitate in working again with MariaDB and would highly recommend them.

Jan van der Venn, Chief Technology Officer, Greetz