How to Build a Data Modernization Strategy: The Three Pillars That Have to Move Together
- LAST UPDATED
- 21 min read
Key takeaways
- Two years ago the insurer in this guide moved its warehouse to Amazon Redshift, and it was still paying for the old Netezza appliance, since its claims and policy systems had kept writing to the old schemas.
- Fixing that took all three pillars at once: the Redshift platform, the claims and policy systems that write to it and the triage agent that reads from it.
- Commercial auto claims went first, carried through all three pillars on one schedule, from the SQL Server refactor to the claims-triage agent.
- Compliance came out of the build itself, so lineage, reconciliation reports and agent access logs existed before the security review asked for them.
- The money came mostly from spend the insurer already had, starting with the Netezza support contract and, in the next slice, the Oracle license on policy administration.
- One slice reached production in about 90 days through five signed gates, and each retired contract helped fund the slice after it.
QUICK ANSWER
What is a data modernization strategy? It's a sequenced plan for moving the data platform, the applications and databases that feed it, and the AI workloads that read from it onto a modern cloud architecture, with a date for switching off each legacy system. For the insurer in this guide, that meant taking commercial auto claims through all three at once: a refactored claims database, governed claims data on the lakehouse and a claims-triage agent, with the old Netezza appliance scheduled to go dark.
Most of the data modernization programs we get called in to rescue stalled for the same reason. The warehouse moved, and the pipelines ran, while the applications that write the data and the AI workloads that read it sat in a "phase two" that never got funded. Eighteen months later, the company is paying for two estates and still can't put an AI agent in front of a customer.
We've spent more than 18 years building on AWS, a good share of it on secure, compliance-heavy AI systems for banks, insurers, healthcare payers, and manufacturers. Across that work, one pattern holds up. A data modernization strategy that runs the data platform, the application and database layer, and the AI layer as three separate projects tends to produce three partially finished systems and a budget that has to be defended twice.
Our running example is a property and casualty insurer, made up but typical. It writes about $1.6 billion in premium a year, mostly commercial auto and small-business policies sold through independent agents in 14 states, and its Dublin subsidiary writes the EU risks. Two years ago it moved its analytics off an IBM Netezza appliance and onto Amazon Redshift, on time and roughly on budget.
Then the bills arrived. The claims system on SQL Server and the policy administration system on Oracle still wrote to the old schemas, so the nightly loads still ran through Netezza, and finance kept pulling loss-ratio reports from there. A claims-triage assistant built last year looked good in the demo, then stalled at the security review, because it read claimant records from both sides of the Atlantic through one service account. The second phase that was meant to fix both was never funded.
What Is a Data Modernization Strategy, and Why Do Most Stall Before Production?
For the insurer, it would have been a plan that said which systems move, in what order, and the date each old one gets switched off, covering the claims and policy systems and the triage agent as well as the warehouse. In general terms, a data modernization strategy is that plan, with a target design, the controls each piece needs and what it should cost. It's finished when production systems run and the old contracts end.
That last part is where the insurer came up short. Its first program had a target design and a migration plan for the warehouse, but nothing tied that migration to the claims database feeding it or to the AI use case that was supposed to pay for it. Plenty of companies have a slide titled "data strategy." Far fewer have a plan with switch-off dates in it.
The insurer was far from alone. A Harvard Business Review Analytic Services survey for Cloudera found that "Only 7% say their organization's data is completely ready for AI adoption." When we look at estates like the insurer's, storage and data volume are almost never the problem. What decides readiness is whether the systems around the data moved on the same schedule as the data itself. It shows up in McKinsey's 2026 State of AI survey too, where 44% of respondents said AI was scaling across their enterprise. The rest were still experimenting or piloting, as the insurer was.
What are the warning signs that your program is drifting?
|
What you hear in the steering meeting |
What was actually happening at the insurer |
The pillar that got skipped |
|---|---|---|
|
"The new warehouse is live, but finance still pulls reports from the old one." |
The claims and policy systems still wrote to Netezza schemas, so loss-ratio reports came from there |
Applications and databases |
|
"The AI pilot looked great in the demo and fell apart on real data." |
The triage assistant read a reserves table that nobody owned and nobody had dated |
Data platform governance |
|
"Our AWS bill went up, and the legacy bill didn't go down." |
Nobody had put a switch-off date on the Netezza support contract |
All three |
|
"Security won't sign off on go-live." |
The assistant read EU and US claimant records through one service account |
Governance foundation |
|
"Phase two never got funded." |
The business case lived in claims triage, and that was never scoped |
AI and decision layer |
The insurer heard all five in the same quarter, and none of them came down to the technology it had picked. Each traced back to a plan that moved one pillar and parked the other two.
What Are the Three Pillars of a Data Modernization Strategy?
At the insurer, they were Redshift and the old Netezza appliance, the Oracle and SQL Server systems that wrote claims and policy data, and the triage assistant that read it. In general terms, that's the data platform, the applications and databases, and the AI and decision layer, with governance, security and funding running underneath all three.

Each of those had a different owner. The CIO's data team ran Redshift, a separate applications group ran the policy and claims systems on their own vendor contracts, and the triage assistant belonged to an innovation team that reported to the chief claims officer. Each had its own renewal calendar, and nobody was planning across them. Our data modernization framework goes deeper on the first pillar, splitting the platform into architecture, governance and consumption, but a strategy has to look one level up, at all three.
|
Pillar |
What it was at the insurer |
AWS building blocks we'd use |
What "done" looked like |
|---|---|---|---|
|
1. Data platform |
The Netezza appliance, the Redshift cluster and the nightly loads between them |
Amazon S3 with Apache Iceberg, AWS Glue, Amazon Redshift, AWS Lake Formation, Amazon MSK |
Netezza switched off, every report on the new platform, lineage published |
|
2. Applications and databases |
Oracle for policy administration, with about 2,300 PL/SQL procedures in it, and SQL Server for claims |
Amazon Aurora PostgreSQL, AWS DMS and DMS Schema Conversion, AWS Lambda |
The SQL Server license gone, and claims writing to Aurora with change data capture into the lake |
|
3. AI and decision layer |
Loss-ratio dashboards, a fraud model and the claims-triage assistant |
Amazon Bedrock, Amazon SageMaker AI, Amazon Quick Sight, Amazon OpenSearch Service |
The triage agent in production with access policy, an evaluation harness and observability |
The second pillar is the one most data modernization roadmaps underweight, and the insurer's was no exception. A lakehouse can't be cleaner than the Oracle and SQL Server schemas feeding it, and twenty years of rating and reserving rules sat in stored procedures nobody wanted to touch. In our application and database modernization work, agents handle the code analysis, dependency mapping and test generation for logic like that. The engineers spend their time on the harder call, which is how the reserving rules should look once they're out of SQL Server.
The insurer's business case sat in the third pillar, in faster claims triage. It's also the pillar we'd scope on day one, even when the first production agent ships in a later slice, because an agent inherits every weakness in the data beneath it. Our AI agents work closes each of its five stages with a signed exit.
Why Do the Three Pillars Have to Move Together?
The insurer found out the expensive way. Moving only the warehouse left Netezza running, because the claims system was still feeding it, and the triage assistant had no governed data to read. All three pillars share schemas, pipelines and access policies, and moving one on its own tends to cause both of those problems together. The legacy savings and the AI payoff then land in different fiscal years, if they land at all.
The insurer's case is a common one, and the figure below shows the other two ways it tends to go.

None of this means you modernize everything at once. Trying to boil the ocean is how programs end up with a two-year runway and no production system to show for it. The insurer's second program moved all three pillars together, but for one business domain at a time.
How do you sequence the pillars without boiling the ocean?
One business domain at a time, carried through all three pillars before the next one starts. We call that a domain slice, and it could be claims, card payments or plant operations depending on the business. The insurer's first slice was commercial auto claims. Its SQL Server claims database was refactored, governed claims data products went onto the lakehouse, and the claims-triage agent shipped against them.
Five sequencing rules keep slices honest, and here's how each one played out in the insurer's claims slice:
|
Rule |
At the insurer |
|---|---|
|
Map dependencies across pillars before committing a date |
Automated discovery of schemas, stored procedures and downstream consumers took three weeks and produced an inventory everyone signed |
|
Prove the riskiest assumption first |
The 4,000-line stored procedure that calculated case reserves was converted and tested before anything else |
|
Put the decommission date in the plan on day one |
Netezza's switch-off went into the plan in week one, tied to its support renewal |
|
Design controls into the pipeline |
Lineage, classification and access rules existed before the triage agent read its first table |
|
Fund the next slice from the last one's retired spend |
The Netezza support contract paid for part of the policy slice |
The AI layer adds requirements most warehouse migrations never had to meet. Ammar Nizami, Senior Forward-Deployed Engineer in our Data Engineering practice, put it plainly in his analysis of lakehouse design for agentic AI: "Storage is seldom where this goes wrong." His point is that the gaps sit in the catalog, the policy model and the write path. That's why the insurer built those pieces inside the claims slice, alongside the migration, rather than leaving them for later.
What Does the Target Architecture Look Like for Data Modernization on AWS?
Something like the reference architecture below. It's the pattern most of our data platform work starts from, and the service names matter less than the decisions at each layer. At the insurer, the two that mattered most were which system stayed authoritative for claims during the parallel run, and where the reserving logic would live once SQL Server was gone.

Warehouse, lakehouse, or data mesh: which pattern fits?
|
Pattern |
Where we'd use it |
What goes wrong |
|---|---|---|
|
Cloud data warehouse |
When nearly everyone reads through SQL and BI, as the insurer's finance team did |
Claim photos, adjuster notes and agent retrieval get bolted on later |
|
Lakehouse on open table formats |
When BI, models and agents need the same governed claims and policy data |
Without catalog discipline, it's a swamp with better branding |
|
Data mesh (domain-owned data products) |
When several business units have strong engineering teams of their own |
Each domain writes its own access rules unless policy is enforced centrally |
For most companies in the $500M to $5B range, we land on a lakehouse with domain-owned data products and centrally enforced policy, and that's where the insurer ended up. It maps cleanly onto domain slices and gives agents one governed place to read from. The Netezza appliance was the awkward part. Two years after the move it was still running "just in case," which our Redshift migration consulting team calls "a second bill, not a safety net."
What does an AI-ready data platform need that a BI platform didn't?
Agents use data very differently from dashboards, and Ammar's lakehouse analysis puts it in one line: "Agents query nothing like dashboards do." The insurer's triage agent hit a dozen tables in a few seconds on behalf of a named adjuster, and within weeks the claims team wanted it to suggest reserve changes as well. Those two facts produced the five additions in the table.
|
What the platform adds |
What it meant for the claims-triage agent |
|---|---|
|
A declared contract on every table an agent reads |
Owner, freshness and allowed use on the reserves table, the one the pilot got wrong |
|
Policy enforced at the query engine |
Checks against both the agent and the adjuster it was working for, through AWS Lake Formation |
|
Freshness the agent can check |
A timestamp it reads before quoting a reserve, so a three-day-old figure gets flagged |
|
A governed write path |
The agent proposes a reserve change, and the claims system applies it after an adjuster approves |
|
Cost per resolved request |
Finance can see what each triaged claim costs in tokens and compute |
How Do You Build Compliance Into a Data Modernization Strategy?
By designing controls into the pipelines and generating audit evidence while the migration runs. Lineage, reconciliation reports, access logs and decision records should come out of the build as by-products, because reconstructing them after go-live is slower and costlier, and it's the main reason security teams delay sign-off. That's what happened to the insurer's first triage pilot.
This matters more as AI moves into regulated workflows. Ram Tiwari, Forward-Deployed Engineer and Spark data engineer at Mactores, makes the point directly in his piece on data pipeline modernization on AWS: "Compliance controls belong inside the pipeline." We'd add that they belong inside the retrieval layer too, because that's where an agent decides what an adjuster is allowed to see.
Which regulations shape the strategy for US and European companies?

For the insurer, the US side meant SOX over the reserve figures, GLBA and the state insurance data security laws modeled on the NAIC's model law, and the NAIC's model bulletin on insurers' use of AI, which 29 jurisdictions had adopted as of October 2026. The Dublin subsidiary added GDPR and DORA, since insurers count as financial entities under DORA. The EU AI Act was lighter than the team expected, because Annex III lists risk assessment and pricing for life and health insurance as high-risk, and a P&C claims-triage agent isn't on that list.
The insurer designed to the stricter rule once and applied it in both regions. Running a separate EU stack would have doubled the governance work without lowering the risk, and we'd advise the same for any company operating on both sides of the Atlantic.
What audit evidence should the program produce by default?
|
Evidence |
What it showed the insurer's auditors |
|---|---|
|
Column-level lineage |
Every number in the loss-ratio report and every triage answer traced back to the claims source |
|
Record-level reconciliation from the parallel run |
Each variance between Netezza and the lakehouse explained and signed off |
|
Agent access logs |
Which adjuster the agent acted for on each claim it read |
|
Deletion that reaches embeddings |
An EU claimant's erasure request removed from the lake and the vector index |
|
Residency and classification tags |
Dublin claims data tagged EU-only, with the tag following it across services |
Insurers sit closer to banks than to retailers here. Our financial services data modernization work is scoped on the principle that "The evidence an examiner will ask for is generated while the system is being built." As always, we design against these frameworks, and your counsel and auditors make the final call on compliance.
How Much Does Data Modernization Cost, and How Do You Fund It?
Mostly on how much legacy you're carrying and how long you carry two of everything. At the insurer, the biggest hidden cost was one it was already paying: two warehouses, every month, for two years.
We'd rather give you the drivers than a ballpark that ignores your estate. Here's how each one showed up at the insurer, and how we'd contain it:
|
Cost driver |
At the insurer |
How we'd contain it |
|---|---|---|
|
Source systems |
Oracle and SQL Server, a billing system and about 40 feeds from agencies |
Automated discovery and schema mapping in the first two weeks |
|
Stored-procedure logic |
About 2,300 PL/SQL procedures, including the rating rules |
Agents convert the code, and engineers review the hard cases |
|
Parallel-run duration |
Netezza support plus Redshift, every month the cutover slipped |
A fixed cutover date and a signed reconciliation gate |
|
Compliance evidence |
SOX on reserves and GDPR for Dublin claimants |
Evidence generated by the pipeline during the build |
|
Engagement hours |
An earlier proposal staffed 14 analysts for discovery and test writing |
Agents take the repetitive work, and engineers own the judgment calls |
|
Post-cutover consumption |
A Redshift cluster sized for quarter-end that ran all month |
FinOps tagging and right-sizing in the target design |
Where does the budget actually come from?
From spend you already have, in most cases. Ammar's piece on Oracle and SQL Server modernization to Amazon Aurora argues that "a good part of the AI budget most enterprises think they need is already sitting inside existing IT spend." At the insurer, it sat in the Netezza support contract, the SQL Server licenses on the claims system and an integration tier that billed hours to keep itself alive. Each one became a reallocation candidate once the slice that depended on it was retired.
For eligible workloads, AWS's Migration Acceleration Program (MAP) can cover part of the migration cost as well, and your account team will know whether yours qualify. It's worth asking early, because the answer can change which slice goes first.
Which commercial model protects your budget?
|
Model |
Who pays if the date slips? |
What it rewards |
Where we'd use it |
|---|---|---|---|
|
Time and materials |
You do |
Hours billed |
Open-ended research with no fixed scope |
|
Fixed fee, flexible date |
Both of you, on paper |
Scope control |
Well-defined, low-risk migrations |
|
Fixed date and fixed fee, provider absorbs its own delays |
The provider, for delays inside its control |
Shipping on the committed date |
A board deadline or a renewal date, like the insurer's Netezza contract |
A CFO can budget against a date written into the statement of work, and the insurer's CFO asked for exactly that the second time around.
What Does a 90-Day Data Modernization Roadmap Look Like?
One domain slice, about 90 days, five gated phases: scope and commit, prove the hardest part, build, validate in parallel against the legacy system, then cut over and retire it. That's the five-phase delivery method we run, and across our engagements the median time to production is 12 weeks.

For the insurer's claims slice, the phases overlapped on purpose. Validation started while the last pieces were still being built, and the Netezza switch-off was in the plan from week one rather than left for a separate project.
What should be ready before week one?
|
What we'd need |
What it was at the insurer |
|---|---|
|
An executive sponsor who can sign each gate |
The chief claims officer, with the CFO co-signing the cutover |
|
Read access to source schemas, code and job schedulers |
SQL Server, the claims code repository and the Control-M schedule |
|
A list of downstream consumers |
Including the loss-ratio spreadsheets finance had built on Netezza extracts |
|
The compliance frameworks in scope |
SOX, GLBA and the state data security laws, plus GDPR and DORA for Dublin |
|
A target for the first slice, as a number |
"Triage every commercial auto claim within four hours of first notice" |
Every gate at the insurer had a named signatory before the next phase could open. Scope creep showed up as a missing signature rather than a slipped date, and internal audit got its paper trail without anyone writing status decks after the fact.
What happens after cutover?
The insurer's team took over the running system on signed acceptance, with the converted schemas, lineage records, infrastructure as code and validation harness in hand. The policy slice started while claims was still stabilizing, paid for in part by the Netezza support contract that had just ended, and the Oracle license on policy administration became the budget line for the slice after that. Over three or four slices, the legacy estate shrinks on a schedule the CFO can plan around.
Real programs follow the same logic of funding the next step from the last one. At Synaptics, discovery that Aedeon ran in days freed budget for a smart-queue architecture on AWS for its chip-design clusters, which lifted throughput on one of its largest EDA clusters by up to 40%, and the operational data lake on AWS became the foundation the next initiative builds on.
How Should You Evaluate a Data Modernization Partner?
With four questions, which is how the insurer did it the second time around. Who carries the schedule risk? Who does the engineering? How will the new system be proven right before cutover, and when does the legacy one turn off? Logos and partner badges told it a little, and the answers to those four told it how delivery would go.
It learned to ask them the hard way. Its first program went to the proposal that looked safest on paper, with a large team and a long discovery phase, and the plan never named a date for Netezza. This time, its CIO took a scorecard like this one into every vendor meeting:
|
Ask this |
A strong answer |
A red flag |
|---|---|---|
|
Who pays if the date slips? |
"We do, for delays we cause. It's in the SOW." |
"Our estimates are conservative." |
|
Who's writing the code? |
Engineers who've shipped production data and AI systems on AWS and own the cutover themselves |
A senior architect for the pitch and a junior pyramid for delivery |
|
How long is discovery? |
Weeks, because agents do the discovery and lineage extraction |
Months of stakeholder interviews before any design |
|
How will we know the new system is right? |
"We'll run both on live workloads and reconcile every record." |
"We'll sample it in UAT and hold a sign-off meeting." |
|
When does the legacy system turn off? |
"On the date in phase one's plan." |
"After stabilization." |
|
What do we own at the end? |
"The schemas, lineage, infrastructure code and validation harness." |
"Our accelerator, under license." |
|
Where are your agents running in production today? |
"Here are the customers, and here's what their auditors signed." |
"Here's a demo and our pilot roadmap." |
Why does the delivery model matter as much as the architecture?
The insurer saw why with its own two proposals. Both put roughly the same AWS design on the table, and the difference was in who would spend the hours. The first staffed people for discovery, mapping, validation and test generation, which is the repetitive work where timelines stretch and invoices grow.
An agent-native delivery model hands that repetitive work to agents and puts experienced engineers on architecture, judgment calls, and cutover. Those engineers stay embedded with your team until the system runs. As Gautham B, Forward-Deployed Engineer in our Data Engineering practice, writes in his piece on what a forward-deployed engineer does: "Go-live is the moment the real requirements arrive." Ask any prospective partner how long its engineers stay after cutover and what they own during that period.
FAQs
What is the difference between data migration and data modernization?
Data migration moves data to a new system, and the insurer's first program did exactly that, landing the Netezza tables in Redshift with the same structure and the same problems. Data modernization also changes how the data is modeled, governed and used. For the insurer, it brought the claims system and the triage agent into the same plan as the warehouse.
How long does a data modernization strategy take to implement?
About 90 days for one domain slice, when discovery is automated and gates get signed on schedule. The insurer's claims slice took that long, and its full estate is three or four slices delivered one after another. Programs that open with months of manual discovery, or never plan the decommission, tend to run well past a year.
What are the biggest risks in a data modernization program?
Paying for two estates for too long, which cost the insurer two years of Netezza support. After that come business rules lost in stored procedures, like its 4,000-line reserve calculation, and a failed security or audit review at go-live. We'd counter all three with automated discovery, a reconciliation gate and controls built into the pipelines from the first phase.
How does data modernization prepare your data for AI agents?
Agents need data they can check and limits they can't argue with, and that's what the insurer's second program gave its triage agent. The reserves table had an owner and a freshness timestamp, every query was checked against the adjuster the agent worked for, and any reserve change it suggested waited for that adjuster's approval. The earlier pilot had none of that, and security stopped it at the first review.
Do European companies need a different data modernization strategy?
No. The pillars and the sequencing stay the same, and the requirements on top change. The insurer's Dublin subsidiary added GDPR residency and erasure, DORA, and an EU AI Act check that came back clear for claims triage. Designing to the stricter rule once and applying it in both regions saved the insurer from building two stacks.
Should we modernize the data warehouse before the applications?
The insurer tried that first. Because the claims and policy systems kept writing legacy formats, the old warehouse stayed the source of truth, and Netezza stayed on the bill. Taking one business domain through the platform, its source databases and its AI use case together, then moving to the next, avoids that.
How do you measure ROI on data modernization?
We'd look at money first. For the insurer, the earliest real signal was the Netezza switch-off date holding, because that's when the savings it had projected became budget it could actually spend on the policy slice. Hours saved on engagement and running costs, the time it takes a new AI use case to reach production and audit findings closed come after that.
Can a data platform be modernized without downtime?
Written by
Ram Tiwari
Forward-Deployed Engineer, Spark Data Engineer
Almost nobody starts a data platform from nothing. His writing is about the version of the job that actually happens: a pipeline you inherited, a warehouse someone sized three years ago, a migration that has to land without the nightly load failing. He is precise about the order things need to happen in, which is usually what separates a migration that finishes from one that stalls.
Keep reading
Next in AI Agents for Apps.
Let's deliver
Bring us the process. We will bring the authority model.
The agent-native AWS modernization firm. Data platforms moved. Legacy retired. AI agents in production. AWS Premier Tier Services Partner since 2026, on AWS since 2008.
- 01 AWS Premier Tier Services Partner, on AWS since 2008.
- 02 Forward-deployed engineers own architecture, cutover and the date.
- 03 Acceptance criteria per phase, with the signer named in the SOW.
- 04 The golden set and the trace data belong to you.