Step 04 of 10 8-12 weeks· advanced
Step 4: Data Migration Design
Plan how DB2 for i moves to a modern relational target. DB2 for i is more migration-friendly than VSAM/IMS but has its own quirks (multi-member files, logical-file roles, DDS extensions, CCSID, journaling).
Recommended prompts
Use one of these to do the work in your IDE
Open the template to read it in full. Click Copy prompt to grab it (with your stack values pre-filled where they apply) — then paste into Claude Code, Cursor, or wherever you build.
Recommended skills
Drop these into Claude Code for this phase
Skills auto-trigger on the right kind of request. Install once; they apply to every prompt that fits.
Recommended MCP configs
Wire these tools into Claude Code first
MCP servers give Claude Code direct access to external systems (Jira, browsers, databases). Configure once.
When you're done
Verify these in your own work before moving on
This is a checklist for you to mentally tick off in your repo and IDE — the site doesn't track it, you do.
- Schema mapping for all major files complete
- Multi-member file strategies decided
- Logical file translations classified (index / view / join)
- DDS extensions handled (TEXT/COLHDG → comments, CHECK/RANGE → constraints)
- CCSID encoding strategy
- Journaling / commitment control mapped to target equivalents
- ETL tool selected and validated on sample data
- Validation queries written
- Rollback strategy clear
Common pitfalls
What goes wrong at this step
- Treating DB2 for i like SQL Server — it's relational, but has IBM i-specific features
- Missing multi-member files — they surface during migration if not caught upfront
- Ignoring CCSID — EBCDIC → UTF-8 issues surface as garbled characters days later
- Treating logical files as indexes universally — some are views, some are joins
- Underestimating volume — same trap as other migrations