If it takes six months, a pile of consultants, and a total rewrite to leave, you were never portable. You were just renting.

A practical definition

Data portability is the ability to move data from one platform to another and keep it usable. Not only readable. Usable.

"Usable" means you keep the semantics and the operational behavior: schemas, time travel, retention, quality signals, access rules, and the metadata that makes the data trustworthy.

Core idea: portability is a contract you can execute, not a promise in a procurement slide.

What portability is not

Most "portability" claims fall into one of these traps:

  • Export-only portability: you can dump raw files, but you lose table semantics and metadata.
  • API-only portability: you can read via an API, but the data is not actually yours outside the platform.
  • Compatibility theater: another tool can query the data, but only if you keep the original vendor control plane.

If you lose policy, lineage, and time travel when you move, you did not move the data product. You moved bytes.

What real portability requires

Real portability requires open contracts at the boundaries.

  • Open table formats: table behavior and metadata defined in a published specification.
  • Open catalogs: a portable interface for metadata, access, and governance control surfaces.
  • Multi-engine reality: at least two engines can read and write your critical workloads without custom glue.

This is why ODI is a system, not a tool. Portability is an emergent property of the whole stack.

A portability test you can run

If you want a real test, do not ask for an architecture diagram. Ask for a drill.

  1. Pick one real data product: a dataset people depend on.
  2. Move it to a second engine and a second catalog surface.
  3. Prove you retained schema evolution, time travel, and access rules.
  4. Measure how much manual work and special tooling was required.

If the drill requires vendor-only features, your portability plan is not an engineering plan yet.

Sources to start with

Start with the specs that define portable behavior, not the marketing pages that promise it.