Home / Learn

How do you migrate data while keeping business reports working?

A data migration needs to carry the reporting workflow into the new environment along with its records. The report remains useful only if its definitions and authorized access carry over with it. Plan one complete reporting workflow, test its initial load and later changes, then switch users after the replacement passes agreed checks. Include recovery and ongoing operation in that plan.

A report can open successfully after migration and still give a different answer. A date may be interpreted differently, an update may be missing or a join may repeat records. The people using the report need those differences explained before they rely on it.

Planning around a report makes these dependencies visible. The migration team can follow its source records through each calculation and scheduled job to the person who uses the answer.

Define the reporting boundary

Plan the move around a complete reporting workflow. Its source records, transformations and measures need to arrive with the permissions and delivery route recipients depend on. The project can then test a result people recognize.

Several reports may depend on one calculation or scheduled job. The dependency review identifies those shared parts and establishes an order that keeps the reports working. An unused table can wait; a small reference table used by every report may be essential to the first move.

Scope also needs to distinguish preservation from improvement. The business may want a new definition or a different reporting period. Recording that decision separately lets reviewers tell an intended change from a defect introduced during the move.

Plan beyond the first copy

After the initial load, the target must receive new records and changes to existing ones. Testing a correction and a deletion shows whether that continuing work behaves as intended. The implementation needs a rule for each table's behavior over time.

A full refresh replaces the target contents from the source. An incremental load applies new records and edits to matching target rows. Correct keys identify those matches; a reliable change marker identifies which source records were edited.

For example, an increasing ID can identify newly inserted records but may miss an edit to an older record. A modified timestamp can support that edit only if the source maintains it correctly. A test that changes an existing record exposes this difference before the report depends on it.

Log-based change data capture can carry inserts, updates and deletions on supported sources. It requires the relevant log access and an operating plan for interruptions. The migration test should include a restart so the team can see whether processing resumes without losing or repeating changes.

Preserve the jobs behind the report

The existing reporting route may do work that is not apparent from its tables. An SSIS package can extract SQL Server records, change their values and start another process. Each of those jobs needs a place in the replacement design.

The implementation team can trace the package's inputs, calculations, schedules and downstream reports. That review shows which logic must carry over and where changes are possible. It can also reveal a utility job whose role would otherwise become apparent only after cutover.

For Redshift, UNLOAD can export query results to Parquet files in Amazon S3. The operation needs access to the selected records and permission to write to the destination. Those files can supply a transfer, while target tables, subsequent updates and report connections require their own implementation.

A move to an open lakehouse also involves catalog and table metadata. Files alone do not reproduce the relationships, permissions or business definitions of the previous environment. The acceptance checks must cover those parts of the replacement as well.

Test business meaning and access

Matching record counts is only one part of proving that a report still means the same thing. Counts can agree while dates, values or relationships differ. The review needs representative records and business totals for the same population and period.

Historical cases are particularly useful. A worker who changed departments or an order corrected after month end can reveal whether the new model preserves the intended history. Ordinary records establish the normal path; exceptions test the rules that people rely on when an answer is disputed.

The reviewer also needs to understand any difference. A documented change in the definition may be acceptable. An unexplained difference needs investigation, even if the new total looks reasonable. Acceptance should rest on an explanation of the differences and the approved definition.

Access belongs in the same test. Opening a report as an administrator cannot prove what a recipient will see. Representative identities should demonstrate that authorized records appear and restricted records remain unavailable through the actual reporting interface.

Choose a controlled cutover

Switch recipients after the replacement passes its acceptance checks and the recovery route is available. A phased move can transfer a report and its dependencies together before the next group moves. A single cutover may fit a bounded workflow whose transfer window and recovery have been tested.

Parallel operation allows a comparison when both routes represent the same point in time. A later source update on one route can produce an expected difference that the review must identify. Recording the available period and processing state makes parallel operation useful evidence.

Recovery needs more detail than keeping the old server online. The plan should explain which route is authoritative, how updates made during the transition are handled and who decides to return. Otherwise, a fallback can restore an interface while leaving its data behind.

Make the new route operable

The new workflow needs to be understandable to its operators and recipients. Operators use run history and errors to recover failed work. Recipients need to know what changed in the report and where to ask about an unexpected result.

Databasin's team can implement connections, models and reports, then handle rollout, training and ongoing support around the agreed outcome. Existing platforms can remain part of the arrangement while the new route is established. The engagement defines the work and the support that follows.

The transition needs agreed retirement conditions for the old route. Once the evidence, operating period and recovery conditions are satisfied, the team can end duplicate processing. Until then, the team needs a clear account of which reports have moved and which dependencies still remain.

Example: moving a daily dispatch report

This illustrative cutover follows a dispatch report through an initial copy, later corrections and an interrupted run before the manager accepts it.

TestEvidenceAcceptance state
Initial copyOrders awaiting dispatch at 08:00 on 3 November, counted in ordersCompare both routes against that recorded source state
Later correctionAn order changes from Awaiting stock to ReadyCheck that the corrected status appears on the next run
Deleted duplicateA duplicate source record is removedCheck the target against the agreed treatment of deletions
Interrupted runProcessing stops before completionShow Incomplete, then test a restart for repeated records
Recipient accessDispatch manager opens the replacement reportRecord acceptance after the data and access checks pass

The test covers the next run as well as the first copy. It gives the business owner evidence for switching the report and the operator evidence for maintaining it.

Decisions before the move

  1. Approve the first boundaryChoose the first report to move. Approve the dependency boundary needed to keep its calculations, permissions and delivery working together.
  2. Separate intended changesIdentify the definitions to preserve and approve any intended changes. Reviewers can then separate those changes from unexpected migration differences.
  3. Set cutover conditionsAgree the evidence required for cutover and name its decision owner. Define when that owner should authorize the recovery route.
  4. Agree ongoing responsibilityChoose the support arrangement for failed runs, source changes and recipient questions, including the conditions for retiring the previous reporting route.

Sources

AWS, Redshift UNLOAD, accessed 2026 · docs.aws.amazon.com/redshift/latest/dg/r_UNLOAD.html

Discuss the reporting transition

We can discuss what needs to move and the business work that depends on it. Our team can explain how Databasin supports the connections, reporting changes and rollout involved in a controlled transition.