Oracle
Implement Oracle and ODI migrations with profiler constraints, PL/SQL conversion, SCN-aware transfer, and Lakebridge reconciliation.
Migrate Oracle with Airlift
The Oracle profile covers SQL and PL/SQL, packages, procedures, materialized views, database links, ODI, scheduler jobs, partitioning, security, and downstream reports. Airlift records each workload class and its dependencies instead of treating a schema export as the whole estate.
What Airlift adds to an Oracle migration
| Stage | Databricks tool or project adapter | Airlift responsibility |
|---|---|---|
| discover | Lakebridge Profiler and Analyzer scan SQL, PL/SQL, and ODI exports | accept inventory, dependencies, exclusions, source version, licensing constraints, and report digests |
| plan | assessment output informs target architecture | assign owners and dependency-aware waves; preserve package, database-link, scheduler, and human-work decisions |
| convert | BladeBridge converts supported Oracle SQL and PL/SQL | record attempts, tool generations, artifact digests, warnings, and residue lanes |
| move data | consistent snapshot plus SCN or timestamp catch-up | track SCNs, manifests, lag, restart checkpoints, target Delta versions, counts, and reconciliation |
| validate | Lakebridge Reconcile plus package, NLS, exception, and business scenarios | admit independent data and behavior evidence against exact source and target snapshots |
| certify | Airlift evaluates the active readiness profile | mint a signed certificate identifying artifacts, snapshots, evidence, and policy |
| cut over | project service, scheduler, ODI, report, and application effectors | freeze scope, enforce approvals, checkpoint, apply once, verify, and retain rollback evidence |
| modernize | Unity Catalog, Lakeflow, Delta, Databricks SQL, and Python work | keep procedural redesign separate from the parity-preserving release |
This keeps packages, scheduler chains, database links, ODI workflows, permissions, and report consumers visible alongside tables so schema conversion cannot overstate estate readiness.
Compile the executable migration pack
Export tables, views, PL/SQL packages, materialized views, database links, scheduler
jobs, ODI workflows, grants, and consumers into a credential-free manifest. Select
oracle_database, oracle_exadata, or oracle_autonomous, attach the observed hard
cases to their owning objects, then compile it:
fa migration-pack inspect --file oracle-manifest.json
fa migration-pack plan --file oracle-manifest.json --json > oracle-plan.json
fa migration-pack register --file oracle-plan.json \
--engagement-id <engagement-id> --estate-id <estate-id> \
--artifact-id <immutable-artifact-reference> --idempotency-key <stable-key>The compiler validates the dependency graph and Oracle hard-case corpus, routes stateful packages and autonomous transactions to human remediation, and emits the SCN-aware transfer contract, required Experiments suites, target mappings, and Runway deployment requirements. See migration-pack commands for the schema and certification workflow.
Inspect and generate a plan
fa source inspect oracle
fa source plan oracle --json > .airlift/oracle-plan.jsonProfile and analyze
The current Lakebridge profiler targets multitenant Oracle, connects to CDB$ROOT, and
may query AWR views. Verify network/authentication constraints and Oracle Diagnostic Pack
licensing before enabling those queries.
databricks labs lakebridge configure-database-profiler
databricks labs lakebridge execute-database-profiler \
--source-tech oracle \
--output-folder ./artifacts/profile
databricks labs lakebridge analyze \
--source-directory ./source-export \
--source-tech "Oracle" \
--report-file ./artifacts/oracle-analysis.xlsx \
--generate-json trueRun a separate Analyzer pass with Oracle Data Integrator for ODI exports. Register
packages, package bodies, scheduler chains, database links, grants, and consumer
dependencies as objects or linked evidence.
Convert
databricks labs lakebridge transpile \
--source-dialect oracle \
--input-source ./source-export/sql \
--output-folder ./artifacts/convertedBladeBridge is the preferred deterministic path. Route stateful packages, autonomous transactions, database links, advanced queues, Java procedures, proprietary utilities, and unresolved optimizer behavior to residue. Record one artifact and tool version per attempt.
Transfer and reconcile
Select a consistent snapshot and SCN or timestamp catch-up per table class. Keep the source SCN and target Delta snapshot with all validation evidence.
databricks labs lakebridge configure-reconcile
databricks labs lakebridge auto-configure-recon-tables
databricks labs lakebridge reconcileValidate NUMBER precision, DATE/TIMESTAMP, empty string versus null, NLS settings,
identifier case, exception behavior, and representative package logic. Data parity does
not prove procedural side effects; use separate Experiments scenarios.
Certify and cut over
Assign validation profiles separately to tables, views, packages, scheduler work, ODI flows, and reports. Airlift mints certificates only from admitted current evidence. The project cutover effector should switch database services, jobs, ODI schedules, report connections, and application endpoints through rehearsed checkpoint/apply/verify steps. An uncertain endpoint result remains open for reconciliation rather than being retried.
Modernize after parity
Replace procedural packages with Databricks SQL or Python where appropriate, move jobs to Lakeflow, map grants to Unity Catalog, and validate Delta constraints, generated columns, and Databricks SQL performance in a separate release.
Complete developer command sequence
Generate this exact recipe from the installed CLI so the guide and executable surface stay in sync:
fa source recipe oracle
fa source recipe oracle --variant oracle_database --json > .airlift/oracle-recipe.jsonThe App is engagement-aware. Oracle 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 oracle --json > .airlift/oracle-profile.json
fa source plan oracle --variant oracle_database --json > .airlift/oracle-capability-plan.jsonExpected artifacts:
- .airlift/oracle-profile.json
- .airlift/oracle-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 oracle-estate.json --idempotency-key oracle-estate-v1
fa connection register --file oracle-connection.json --idempotency-key oracle-connection-v1
fa engagement update --file oracle-scope.json --idempotency-key oracle-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 oracle-assessment-start.json --idempotency-key oracle-assessment-start-v1
fa assessment status <assessment-id> --json
fa assessment record --file oracle-assessment-record.json --idempotency-key oracle-assessment-record-v1
fa assessment accept --file oracle-assessment-accept.json --idempotency-key oracle-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/oracle after replacing the placeholder ID with the governed engagement ID.
3. Compile the oracle migration pack
fa migration-pack inspect --file oracle-manifest.json
fa migration-pack plan --file oracle-manifest.json --json > generated/oracle-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 oracle-migration-plan.json --idempotency-key oracle-plan-v1
fa conversion batch create --file oracle-batch.json --idempotency-key oracle-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 oracle-transfer.json --idempotency-key oracle-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 oracle-validation.json --idempotency-key oracle-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 oracle-evidence-export.json --idempotency-key oracle-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.
Oracle has its own engagement-scoped workspace; unrelated source systems are not shown.
This public synthetic capture demonstrates Airlift setup and navigation for Oracle; it is not evidence of a live connection or certified migration.
Register the client estate, bind a credential reference, run the Oracle assessment recipe, and admit the resulting evidence.
These are automated captures from public synthetic engagements. The source workspace is specific to Oracle; 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.
Amazon Redshift
Implement Redshift serverless and provisioned migrations with profiling variants, BladeBridge conversion, S3 transfer, and reconciliation.
Teradata
Implement Teradata migrations across SQL, BTEQ, load utilities, transfer throughput, hash-aware reconciliation, and Databricks modernization.