Kafka to Databricks
Govern Kafka, Confluent Cloud, and Amazon MSK stream inventory, checkpoint bootstrap, parallel run, validation, and cutover.
Kafka to Databricks
fa source inspect kafka
fa source plan kafka --variant apache_kafka
fa source plan kafka --variant confluent_cloud --json
fa source plan kafka --variant amazon_msk --jsonA streaming migration is a continuity problem, not a table copy. Airlift inventories topics, partitions, schemas and compatibility rules, consumer groups, Kafka Connect, retention, ACLs, producers, and downstream consumers.
Streaming lifecycle
- Record the accepted topic, schema, consumer, retention, and access inventory.
- Define target streaming tables, checkpoints, evolution, dead-letter handling, replay, and rollback policy.
- Start Structured Streaming or Lakeflow from a recorded offset boundary and run in parallel or dual-publish where supported.
- Admit evidence for offset continuity, event loss and duplicates, key ordering, schema compatibility, lag, throughput, and business aggregates.
- Freeze the producer/consumer wave, collect authenticated approvals, switch through a certified effector, and verify or roll back.
- Modernize Kafka Streams state, connectors, and serving products separately.
Custom serializers, exactly-once assumptions, Kafka Streams state, custom connectors,
and cross-topic transactions remain explicit residue. Credentials stay in scoped
connection objects. The pack is cataloged.
Complete developer command sequence
Generate this exact recipe from the installed CLI so the guide and executable surface stay in sync:
fa source recipe kafka
fa source recipe kafka --variant apache_kafka --json > .airlift/kafka-recipe.jsonThe App is engagement-aware. Apache Kafka 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 kafka --json > .airlift/kafka-profile.json
fa source plan kafka --variant apache_kafka --json > .airlift/kafka-capability-plan.jsonExpected artifacts:
- .airlift/kafka-profile.json
- .airlift/kafka-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 kafka-estate.json --idempotency-key kafka-estate-v1
fa connection register --file kafka-connection.json --idempotency-key kafka-connection-v1
fa engagement update --file kafka-scope.json --idempotency-key kafka-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 kafka-assessment-start.json --idempotency-key kafka-assessment-start-v1
fa assessment status <assessment-id> --json
fa assessment record --file kafka-assessment-record.json --idempotency-key kafka-assessment-record-v1
fa assessment accept --file kafka-assessment-accept.json --idempotency-key kafka-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/kafka after replacing the placeholder ID with the governed engagement ID.
3. Implement the admitted source adapter
No source-specific executable compiler exists in this release. Continue with assessment, governed work, and an admitted adapter; Airlift does not invent executable output.
Expected artifacts:
- Capability plan and adapter requirements only
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.
This source is cataloged or assessable but has no source-specific executable compiler in the installed Airlift generation.
4. Convert, move, and remediate
fa plan generate --file kafka-migration-plan.json --idempotency-key kafka-plan-v1
fa conversion batch create --file kafka-batch.json --idempotency-key kafka-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 kafka-transfer.json --idempotency-key kafka-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 kafka-validation.json --idempotency-key kafka-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 kafka-evidence-export.json --idempotency-key kafka-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.
Apache Kafka has its own engagement-scoped workspace; unrelated source systems are not shown.
This public synthetic capture demonstrates Airlift setup and navigation for Apache Kafka; it is not evidence of a live connection or certified migration.
Register the client estate, bind a credential reference, run the Apache Kafka assessment recipe, and admit the resulting evidence.
These are automated captures from public synthetic engagements. The source workspace is specific to Apache Kafka; 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.