Amazon Redshift
Implement Redshift serverless and provisioned migrations with profiling variants, BladeBridge conversion, S3 transfer, and reconciliation.
Migrate Amazon Redshift with Airlift
The Redshift profile covers SQL objects, stored procedures, WLM queues, Spectrum,
COPY/UNLOAD, materialized views, scheduled queries, and downstream BI. Select the
profiler variant that matches the actual deployment; Airlift records that source detail
with the estate evidence.
What Airlift adds to an Amazon Redshift migration
| Stage | Databricks tool or project adapter | Airlift responsibility |
|---|---|---|
| discover | the matching Lakebridge Profiler variant and Analyzer scan SQL plus exported estate metadata | accept inventory, dependencies, exclusions, deployment variant, source version, and report digests |
| plan | assessment output informs target architecture | assign owners and dependency-aware waves; preserve WLM, Spectrum, UDF, and human-work decisions |
| convert | BladeBridge converts supported Redshift SQL | record attempts, tool generations, artifact digests, warnings, and residue lanes |
| move data | restartable UNLOAD to S3 plus timestamp, sequence, or application delta | track manifests, watermarks, lag, restart checkpoints, target Delta versions, counts, and reconciliation |
| validate | Lakebridge Reconcile plus SUPER, Spectrum, workload, and business scenarios | admit independent functional, data, and performance evidence against exact snapshots |
| certify | Airlift evaluates the active readiness profile | mint a signed certificate identifying artifacts, snapshots, evidence, and policy |
| cut over | project query, schedule, ingestion, and BI connection effectors | freeze scope, enforce approvals, checkpoint, apply once, verify, and retain rollback evidence |
| modernize | Unity Catalog, Lakeflow, Delta, and Databricks SQL work | keep distribution, layout, and workload redesign separate from baseline parity |
This keeps Spectrum paths, IAM mappings, scheduled queries, ingestion manifests, and BI consumers attached to their SQL dependencies instead of reporting migration progress from converted files alone.
Compile the executable migration pack
Create a versioned manifest containing tables and views, Spectrum objects, WLM rules, COPY/UNLOAD jobs, scheduled queries, UDFs, permissions, and consumers. Select the exact provisioned, Multi-AZ, or serverless variant and mark observed hard cases, then run:
fa migration-pack inspect --file redshift-manifest.json
fa migration-pack plan --file redshift-manifest.json --json > redshift-plan.jsonThe compiler rejects a mismatched variant, validates dependencies, reports missing Redshift hard cases, and routes unsupported behavior explicitly. Its plan requires an S3 manifest plus watermark restart contract, source-specific Experiments suites, Databricks target mappings, and a Runway deployment manifest. See migration-pack commands for registration and certification.
Inspect and generate a plan
fa source inspect redshift
fa source plan aws_redshift --json > .airlift/redshift-plan.jsonProfile and analyze
Profiler variants are redshift_serverless, redshift_provisioned, and
redshift_provisioned_multi_az:
databricks labs lakebridge configure-database-profiler
databricks labs lakebridge execute-database-profiler \
--source-tech redshift_provisioned \
--output-folder ./artifacts/profile
databricks labs lakebridge analyze \
--source-directory ./source-export \
--source-tech "Redshift" \
--report-file ./artifacts/redshift-analysis.xlsx \
--generate-json trueInventory WLM rules, Spectrum paths and IAM dependencies, scheduled queries, load/unload manifests, UDFs, late-binding views, and BI connections in addition to SQL files.
Convert
databricks labs lakebridge transpile \
--source-dialect redshift \
--input-source ./source-export/sql \
--output-folder ./artifacts/convertedBladeBridge is the preferred deterministic path. Common residue includes Python UDFs, leader-node-only functions, WLM behavior, Spectrum-specific constructs, late-binding views, and cross-database queries.
Transfer and reconcile
Use restartable UNLOAD manifests to S3 for the snapshot and select a timestamp,
sequence, or application delta for catch-up. Preserve source query snapshot,
manifest, watermark, and target Delta version.
databricks labs lakebridge configure-reconcile
databricks labs lakebridge auto-configure-recon-tables
databricks labs lakebridge reconcileValidate SUPER, semi-structured values, decimal/timestamp behavior, Spectrum data,
sort/distribution-sensitive queries, and WLM-sensitive performance. Reconcile and
performance are separate readiness tracks.
Certify and cut over
Require independent profiles for data parity, semi-structured behavior, Spectrum-backed queries, and accepted performance thresholds. The project effector may switch ingestion, scheduled queries, application endpoints, and BI connections only after Airlift verifies fresh certificates and approvals. Retain the final UNLOAD/catch-up watermark, endpoint observations, and rollback result with the wave.
Modernize after parity
Replace distribution and sort-key assumptions with measured Delta layout and liquid clustering, move ingestion to Lakeflow, manage S3 through Unity Catalog external locations, and retest workload isolation on Databricks SQL warehouses.
Complete developer command sequence
Generate this exact recipe from the installed CLI so the guide and executable surface stay in sync:
fa source recipe redshift
fa source recipe redshift --variant redshift_serverless --json > .airlift/redshift-recipe.jsonThe App is engagement-aware. Amazon Redshift appears under Active sources only after the source estate is added to an active engagement. The menu is derived from governed engagement scope; installing Airlift does not expose unrelated source pages.
Every remote mutation below requires --host, --org, authenticated workspace
identity, and a stable --idempotency-key. JSON request files contain identifiers,
artifact references, and opaque credential references—never passwords, tokens, or
connection strings. Run fa <resource> <operation> --help for the current schema and
exit semantics.
0. Inspect the source contract
fa source inspect redshift --json > .airlift/redshift-profile.json
fa source plan redshift --variant redshift_serverless --json > .airlift/redshift-capability-plan.jsonExpected artifacts:
- .airlift/redshift-profile.json
- .airlift/redshift-capability-plan.json
Open Engagements → active engagement in the App. This stage is visible at
/engagements after replacing the placeholder ID with the governed engagement ID.
1. Create governed scope and connection references
fa engagement create --file engagement.json --idempotency-key migration-create-v1
fa estate register --file redshift-estate.json --idempotency-key redshift-estate-v1
fa connection register --file redshift-connection.json --idempotency-key redshift-connection-v1
fa engagement update --file redshift-scope.json --idempotency-key redshift-scope-v1
fa engagement preflight <engagement-id>Expected artifacts:
- Governed engagement
- Source estate
- Opaque connection binding
Open Engagements → active engagement in the App. This stage is visible at
/engagements/<engagement-id> after replacing the placeholder ID with the governed engagement ID.
2. Assess and accept inventory
fa assessment start --file redshift-assessment-start.json --idempotency-key redshift-assessment-start-v1
fa assessment status <assessment-id> --json
fa assessment record --file redshift-assessment-record.json --idempotency-key redshift-assessment-record-v1
fa assessment accept --file redshift-assessment-accept.json --idempotency-key redshift-assessment-accept-v1
fa inventory list --estate-id <estate-id> --jsonExpected artifacts:
- Assessment report reference
- Normalized inventory
- Dependency graph
Open Engagements → active engagement in the App. This stage is visible at
/engagements/<engagement-id>/sources/redshift after replacing the placeholder ID with the governed engagement ID.
3. Compile the redshift migration pack
fa migration-pack inspect --file redshift-manifest.json
fa migration-pack plan --file redshift-manifest.json --json > generated/redshift-plan.jsonExpected artifacts:
- Dependency-aware migration pack
- Transfer requirements
- Validation requirements
- Residue lanes
Open Engagements → active engagement in the App. This stage is visible at
/engagements/<engagement-id>/artifacts after replacing the placeholder ID with the governed engagement ID.
4. Convert, move, and remediate
fa plan generate --file redshift-migration-plan.json --idempotency-key redshift-plan-v1
fa conversion batch create --file redshift-batch.json --idempotency-key redshift-batch-v1
fa conversion batch start --file conversion-batch-start.json --idempotency-key conversion-start-v1
fa residue list --engagement-id <engagement-id>
fa transfer plan --file redshift-transfer.json --idempotency-key redshift-transfer-v1
fa transfer run <transfer-id> --idempotency-key transfer-run-v1
fa transfer reconcile <transfer-id> --idempotency-key transfer-reconcile-v1Expected artifacts:
- Target artifacts
- Residue cases
- Transfer checkpoints
- Reconciliation evidence
Open Engagements → active engagement in the App. This stage is visible at
/engagements/<engagement-id>/runs after replacing the placeholder ID with the governed engagement ID.
5. Validate independently and inspect discrepancies
fa validation run --file redshift-validation.json --idempotency-key redshift-validation-v1
fa validation status <validation-execution-id> --json
fa discrepancy list --engagement-id <engagement-id>
fa artifact list --engagement-id <engagement-id>Expected artifacts:
- Provider run references
- Readiness evidence
- Discrepancies
Open Engagements → active engagement in the App. This stage is visible at
/engagements/<engagement-id>/runs after replacing the placeholder ID with the governed engagement ID.
6. Certify, cut over, and export evidence
fa certificate list --object-id <object-id>
fa cutover status <wave-id> --json
fa evidence list --engagement-id <engagement-id>
fa evidence export --file redshift-evidence-export.json --idempotency-key redshift-evidence-export-v1Expected artifacts:
- Migration certificates
- Cutover evidence
- Content-digested evidence export
Open Engagements → active engagement in the App. This stage is visible at
/assurance after replacing the placeholder ID with the governed engagement ID.
Runway executes releases; Experiments owns validation verdicts; Airlift owns migration readiness and cutover policy.
What developers see in the App
The contextual source workspace shows the accepted estate and the factory stages for this engagement. Artifacts displays immutable references, content digests, media types, and provider lineage. Runs displays assessment, conversion, transfer, validation, and deployment executions without treating a provider's success as an Airlift verdict.
Amazon Redshift has its own engagement-scoped workspace; unrelated source systems are not shown.
This public synthetic capture demonstrates Airlift setup and navigation for Amazon Redshift; it is not evidence of a live connection or certified migration.
Register the client estate, bind a credential reference, run the Amazon Redshift assessment recipe, and admit the resulting evidence.
These are automated captures from public synthetic engagements. The source workspace is specific to Amazon Redshift; no unrelated source is presented as its migration journey. For sources without an evidence-backed journey, the image demonstrates setup, navigation, and developer entry points only—not a live connection, converted output, or certified migration. No client data, credentials, workspace hostnames, or internal deployment identifiers are embedded in the images.