How Apollo Hospitals Migrated 25 Years of Oracle to PostgreSQL
99.95% uptime. 90% of transactions under 5 seconds. 40% faster deployments. Here’s what happened.
I write about databases the good, the bad, and the why is this query taking 30 seconds?
Today, I’m sharing one of the biggest Oracle to PostgreSQL migration stories of 2025:
How Apollo Hospitals modernized their entire hospital information system using Azure Database for PostgreSQL.
Apollo Hospitals is one of India’s largest healthcare providers:
74+ hospitals
10,000+ beds
20,000+ outpatient visits per day
Their backend was a 2.5-decade-old Oracle database system, tightly integrated with critical clinical workflows across labs, pharmacy, diagnostics, and billing.
They migrated the whole thing to Azure PostgreSQL in 18 months a real-world healthcare database modernization that proves PostgreSQL can handle enterprise-scale clinical workloads.
The Breaking Point
Here’s what Apollo’s engineering leadership faced:
The Oracle-based architecture was getting harder to maintain.
Scaling required significant investment every time.
On-prem infrastructure couldn’t keep pace with clinical demands.
Performance tuning and troubleshooting consumed engineering bandwidth.
Fragmented legacy database systems slowed down hospital operations.
In their own words:
The infrastructure was quite fragmented. We had to work harder just to maintain availability, which left very little room for innovation. There was too much firefighting and not enough time to think about what’s next.
If you’ve ever maintained a legacy enterprise Oracle system while watching licensing costs climb, that probably hit close to home.
This wasn’t just a database performance problem it was a digital transformation bottleneck blocking Apollo’s healthcare cloud strategy.
The Decision: Azure Database for PostgreSQL
Apollo evaluated multiple database platforms for more than six months.
Their final decision was clear: migrate everything to Azure Database for PostgreSQL Flexible Server.
Why PostgreSQL?
The Oracle stack was getting harder to maintain, and scaling it meant significant investment every time. We saw Azure Database for PostgreSQL as the right foundation for the future. It’s open, cost-effective, and capable of supporting the hospital information system we built in-house.
1. Open-Source Flexibility
PostgreSQL offered freedom from Oracle licensing, a robust extension ecosystem, and compatibility with new clinical and AI-driven applications. Healthcare systems evolve quickly PostgreSQL’s extensibility made it future-proof.
2. Fully Managed Database Service
Azure Database for PostgreSQL provided built-in high availability, automatic patching, security and compliance aligned with healthcare regulations, and deep observability through Azure Application Insights.
This wasn’t just a database migration decision. It was an enterprise cloud migration strategy for Apollo’s next decade.
3. Cost-Effective Scaling
Moving away from Oracle licensing meant Apollo could scale infrastructure, not contracts. This is the same pattern you see across large enterprises evaluating Oracle versus PostgreSQL.
The Migration: 18 Months, 10 Regions, 25 Years of Data
This was one of the most complex healthcare data migration projects.
The scale was staggering:
100+ applications. 200 database schemas. Approximately 5,000 tables. 6,500 stored procedures. 80+ interfaces connecting the hospital information system with labs, billing, pharmacy, and diagnostics. Millions of lines of code.
Some of those stored procedures weren’t small.
Some of the procedures were over 5,000 lines long. It was all in Oracle PL/SQL format, and we used our QMigrator tool to convert and optimize it for PostgreSQL
The approach:
Apollo partnered with Quadrant Technologies and used Azure DevOps for CI/CD pipeline management. Azure Databricks synchronized data between the legacy Oracle system and PostgreSQL in near real-time, preserving data integrity across thousands of procedures and forms.
The internal development team stayed involved throughout the entire database migration process they weren’t just watching it happen.
Our development team didn’t just watch the migration happen they were part of it. They understood the logic behind the move and had the hands-on experience to support it post-migration.
Total timeline: 12 months of migration work, followed by 6 months deploying across 10 regional hospital clusters.
This wasn’t lift-and-shift. It was full-stack healthcare cloud modernization.
The Results
The benefits of migrating to Azure PostgreSQL were immediate and measurable.
99.95% uptime across hospital systems a major improvement for mission-critical clinical applications.
90% of transactions complete within 5 seconds clinical workflows became faster and more responsive.
40% faster deployment timelines weeks became days, thanks to standardized CI/CD in Azure DevOps.
Better database observability Application Insights helped catch PostgreSQL performance issues before clinicians felt them.
Reduced operational overhead from constant tuning to proactive optimization.
We’ve seen nearly 90% of transactions execute within five seconds since the migration. And our uptime has consistently hit 99.95%. That stability gives staff the confidence to work without interruption.
But the real shift was operational:
When we were on-prem, tuning and troubleshooting ate up so much of our time. Now we’re using Azure Virtual Machines, Azure Database for PostgreSQL, and Application Insights to stay ahead of issues instead of reacting to them. It’s changed how we work.
This is what a successful enterprise PostgreSQL migration looks like in production.
The Lessons Learned
Apollo shared specific PostgreSQL configuration and migration lessons the kind of stuff you learn after running PostgreSQL at healthcare scale.
1. Oracle habits don’t map directly to PostgreSQL.
Temporary tables, caching patterns, query plans, logical replication you must rethink database behavior, not just convert PL/SQL syntax.
Apollo found that heavy temporary table usage caused significant bloat in pg_catalog. They scheduled aggressive VACUUM jobs every 15 minutes per region.
2. Migration works best when internal teams participate.
Apollo’s dev team didn’t sit on the sidelines. They learned the PostgreSQL platform deeply and supported the system post-migration.
3. Managed PostgreSQL removes operational drag.
No manual patching. No emergency failovers. No hardware firefighting. Azure Database for PostgreSQL let Apollo focus on clinical applications, not database infrastructure.
4. Healthcare workloads are PostgreSQL-ready.
This wasn’t a toy workload. This was EMR/HIS-level OLTP at national scale 20,000+ daily patient visits running on PostgreSQL.
5. Good migration strategy matters more than tools.
Multiple conversion tools, incremental validation, real-time data sync, Azure DevOps pipelines the Oracle to PostgreSQL migration strategy mattered more than any single piece of code.
With reference to the story discussed at Microsoft Ignite:
AI-assisted migration: The path to powerful performance on PostgreSQL
The Bigger Picture
Apollo didn’t just migrate a legacy database system.
They built a foundation for the health system of the future.
Today, their Azure PostgreSQL infrastructure feeds Microsoft Fabric for real-time analytics, clinical copilots for caregivers and doctors, model training pipelines, and regional hospital systems across India.
We’ve opened the door to future technologies. We’re now in a position to build the next generation of hospital systems, not just maintain the current one.
Here’s what I keep coming back to:
PostgreSQL handled a 25-year-old, millions-of-lines-of-code, 74-hospital healthcare system. The enterprise database migration took 18 months. The results were better performance, better uptime, and faster deployments.
The managed PostgreSQL market has matured. Azure Database for PostgreSQL, Amazon Aurora PostgreSQL, Google Cloud SQL, Neon, Supabase, Crunchy Bridge the options are solid.
The question isn’t whether PostgreSQL can handle enterprise healthcare workloads.
It’s whether your team is ready for the migration.
Apollo figured out their answer.
What’s yours? Let me know in the comment section.


