• Customer: Payment automation solution provider
  • Country: United States
  • Product Used: Ispirer Migration Service
  • Source Technology: Db2 LUW
  • Target Technology: PostgreSQL
  • Project Scope: 50,000 LOC
  • Project Duration: 5 months

Replacing IBM Db2 with an open source PostgreSQL database as the primary storage solution across the platform enabled the innovator in business payment automation technologies to save on licensing, support, and maintenance costs.


  • Moves away from a proprietary database management system and restrictive licensing.
  • Gets both an increase in speed and an improvement in system stability.
  • Leverages one of the best open source databases and the latest integration and reporting services to meet business needs.
  • Obtains an optimized database update and replication process thanks to PostgreSQL clustering capabilities.

Migrated about 50,000 lines of Db2 LUW code to PostgreSQL in 5 months


Our customer is a trusted SaaS provider with an in-depth expertise in domestic and international payment solutions. The company enables banks and businesses to simplify and manage their operations and end-user solutions securely, so they can focus on what matters most – the growth of their business. The organization helps thousands of companies of all sizes across all industries in 92 countries around the world.


The customer owns a platform consisting of multiple applications that interact with shared data stores to allow client insurance company users and law firm users to work together processing legal bills.

The goal of this project was to replace IBM Db2 LUW 9.1 as the primary storage solution across the platform. The customer chose to move to PostgreSQL 12.12 on Linux to save on licensing, support, as well as maintenance costs. Platform functionality was not expected to change due to the migration.


In order to implement this digital transformation project, the customer turned to an IT service and consulting company. Their team, reinforced with Ispirer experts and Ispirer migration automation solutions, carried out the transfer of the Db2 database to PostgreSQL.

Having reviewed the offers of migration service providers, the consulting company decided Ispirer Migration Service was the most suitable solution for handling the end-customer’s database system migration. Ispirer Systems was chosen because of our proven track record of delivering comprehensive database migration services, as well as our proprietary toolkit that markedly reduces the time and cost of the migration project.

The Ispirer team was responsible for converting the SQL scripts. The task was to deliver the scripts with the converted code of the approved object scope within the set deadlines. Deployment and data migration were out of the project scope.

The assessment stage, was carried out entirely on the side of Ispirer. It included the following steps:

  • The end-customer provided the Db2 database scripts that were restored in the Ispirer’s environment.
  • Our experts used Ispirer Toolkit to convert all SQL objects.
  • Ispirer completed import of the results into PostgreSQL.
  • Our team analyzed the conversion results and import logs for errors.

Based on the analysis, the Ispirer team compiled a report listing the bugs, their complexity, suggested ways and required time to eliminate them.

Challenges identified during the analysis and assessment:

  • Large number of system objects (functions, views, tables), as well as their use in stored procedures. The logic of the source and target databases is different, therefore, additional efforts were required to resolve this issue.
  • Conversion of error handlers. The Ispirer team had experience in dealing with a similar issue, however, the automated conversion still required manual adjustments.

At the conversion stage, the customer had several requirements that differ from the standard migration patterns. For example, converting CURRENT TIMESTAMP to CLOCK_TIMESTAMP, and then to CURRENT_TIMESTAMP.

In addition, the end-customer had requests related not only to bug fixes in database objects:

  • High performance was urgently needed in a critical part of the code. Ispirer's team managed to increase productivity by 20 times, thereby fulfilling the customer’s requirement.
  • In PostgreSQL, the generation of a primary key is accompanied by the automated generation of a unique index. The subsequent generation of custom unique indexes on the primary key columns results in their duplication. It was necessary to change the syntax for generating custom unique indexes to solve the issue. The list of tables that required a special index syntax was obtained by querying system tables.

Nonetheless, all the above issues and requirements were successfully resolved. The Ispirer team converted the scripts and uploaded them from VDI to the version control system. Once approved by the end-customer reviewers, the scripts were uploaded to the main project repository. All SQL code was converted and delivered to the end-customer ahead of schedule.


With the help of Ispirer's experts, the database migration from Db2 LUW to PostgreSQL was completed in 5 months. The project scope included 50,000 lines of converted Db2 LUW code.

Ispirer Migration Service served as the cornerstone of the customer's digital modernization for the following reasons:

  • The transition to PostgreSQL allowed the company to improve system performance and scalability, with geospatial support and unrestricted concurrency, as well as deep and extensive data analysis across multiple data types.
  • The replacement of a proprietary solution with an open source alternative such as PostgreSQL helped the customer markedly reduce licensing, support and maintenance costs.

The robustness, world-class performance, extensibility, and support for a variety of data types and index methods of an open source alternative like PostgreSQL make it a popular choice among enterprise owners.