StarRocks looks like just another fast database until you put it next to Iceberg and an open catalog. Then the real question is boundaries, not benchmarks.

Why it matters

Most teams do not pick a query engine because they are bored. They pick one because workloads change. One dashboard becomes ten. One warehouse becomes three engines. One "gold" table becomes a shared contract across batch and real time.

In ODI, query engines are participants in a contract. The moment a query engine starts owning metadata semantics, governance, or table state, it stops being swappable.

The ODI angle

StarRocks can be a strong serving and analytics engine in an open lakehouse design, especially when it reads open tables instead of trapping data behind its own storage boundary.

The key ODI question is not "Can it query Iceberg?" The question is which parts of the contract it depends on: Iceberg spec behavior, catalog APIs, and metadata semantics.

If you treat StarRocks as compute that can enter and leave, you keep optionality. If you treat it as the platform, you rebuild lock-in with a different logo.

Core idea: in ODI, you want engines to be powerful and replaceable. You do not want them to be the only place your tables make sense.

The architecture test

For data architects, the test is simple. Can StarRocks read Iceberg through a catalog boundary other engines can share?

  • Pick an Iceberg catalog boundary that multiple engines can use, then test it.
  • Define which layer owns access control: StarRocks, the catalog, or a policy service.
  • Validate schema evolution, partition evolution, and deletes against your real Iceberg tables.
  • Test mixed workloads: BI, scheduled transforms, and near real-time ingestion.
  • Decide where table maintenance lives if StarRocks is not the writer.

What breaks first

This usually breaks when "Iceberg support" is true, but only inside a narrow integration path.

  • StarRocks queries Iceberg, but only through a one-off setup nobody else uses.
  • The engine reads tables, but deletes or snapshot semantics do not match other engines.
  • Governance rules end up embedded in StarRocks-specific features that do not travel.
  • Performance wins hide an operational mess around caching, refresh, and ownership of fixes.

Questions to ask

Use these questions when you evaluate StarRocks open data infrastructure as part of an ODI stack.

  • Which Iceberg features are supported in your StarRocks version, including v2 and deletes?
  • Which catalogs are supported, and can other engines use the same catalogs?
  • What happens when the Iceberg schema changes?
  • How do you keep access control consistent across engines?
  • Where do you run compaction, snapshot expiry, and other table maintenance?

If the answer depends on a custom export, a private metadata model, or a single execution engine, the stack might still work. It just will not stay open under change.

Sources to start with

Start with the docs. Marketing copy will not tell you what breaks.