Migrating a database from on-premise to cloud can be a daunting task, but it can also be an opportunity to save costs and improve efficiency. In this blog, we’ll share our experience of how we migrated our client’s MSSQL Server database to an open source PostgreSQL database hosted on AWS cloud, and the benefits it brought.
The time estimations for the migration were based upon the complexity of individual databases. For highly complex databases, which had a huge number of entities like procedures, functions, triggers, etc., the average migration time would be around 10-12 weeks based on our past experiences. Similarly, for simpler databases with fewer numbers, the migration time is around 5-6 weeks.
After migrating the database to the cloud and using AWS services like AWS Aurora, we were able to save the client almost 400K$ to 500k$ in both operational and licensing costs. This was a significant reduction in their expenses, which allowed them to invest more in other areas of their business.
This database migration was developed in a separate environment, not in production. Once the complete database was tested and analyzed, the database was moved to production by replacing the original database, resulting in close to zero downtime in the application.
During the migration, we also included an additional feature to test the logical entities in the database using unit testing. By writing unit tests and creating a dynamic HTML code coverage report, we were able to analyze and pinpoint exact blocks of code that were not unit tested.
The whole operation of unit testing and code coverage calculation was automated using Jenkins pipeline, and testing was done in containerized databases. This resulted in an extremely fast and efficient testing methodology, and we were able to test around 300 entities within a span of 10 minutes.
Thanks to this testing feature, the client could test their complete database within 10 minutes and increase the standardization and confidence during feature deployments, upgrades, and analysis of their database.
In conclusion, migrating to open source databases can bring significant cost savings and improved efficiency. By utilizing AWS services and implementing automated testing methodologies, we were able to migrate our client’s database to PostgreSQL and save them a significant amount of money.
If you have any other questions, feel free to ask us.