Ships That Don't Wait to Dock

November 21, 2026 · Part 17 of 20

Opening Scene

Most cargo can wait for a ship to fully dock, tie off, and open its hold before anything moves. But some cargo genuinely can’t wait — perishable goods that need to move straight from ship to cold storage the instant they’re available, without sitting at a gate for a batch of paperwork to process first. A port built only for the “wait for the full ship, process in one batch” model has no good answer for cargo that needs to flow continuously instead.

Streaming data into a lakehouse is the same problem, and this series’ companion topic on pipelines already covered the ingestion side of it in depth.

In Plain English

Streaming ingestion loads data into a warehouse or lakehouse continuously, as it’s generated, rather than in scheduled batches. This article isn’t a repeat of the change-data-capture and pipeline mechanics covered in the data-pipelines-etl topic — it’s a lighter look at what streaming means specifically for how a lakehouse’s storage layer has to be built to actually receive and make continuously-arriving data queryable, fast.

The Old Way

Traditional warehouses were built almost entirely around batch loading — data arrived on a schedule, often nightly, and was processed as one large batch, the equivalent of waiting for a ship to fully dock before unloading anything. This matched the reporting needs of the era reasonably well: a dashboard refreshed each morning was often genuinely sufficient for the decisions being made from it.

As real-time and near-real-time use cases grew — fraud detection, live operational dashboards, AI systems needing current context — batch-only architecture became a genuine limitation. Data that was merely hours old, once perfectly acceptable, started being treated as stale for use cases where “what’s happening right now” mattered more than “what happened as of last night’s batch.”

What’s Changing (and Why AI Is the Reason)

  1. Lakehouse storage layers increasingly support continuous ingestion natively. Rather than treating streaming as a bolt-on exception requiring special handling, modern table formats (Article 10) and lakehouse platforms increasingly support small, frequent writes as a normal operating mode, not an edge case the storage layer merely tolerates.
  2. AI systems are a major new source of demand for freshness. An AI agent answering questions from stale data can confidently give an outdated answer with no visible warning sign — a theme this series has touched before — making streaming freshness matter for a growing share of AI-facing use cases, not just the traditional real-time dashboards that historically justified the investment.
  3. The tension between streaming and the batch-friendly optimizations from earlier articles is a real, active design problem. Partitioning and clustering strategies (Article 8) and file compaction (Article 10) were often designed with batch loading patterns in mind — continuous small writes can work against those optimizations if not managed deliberately, and AI-assisted platform tooling is increasingly helping reconcile the two automatically.

The Metaphor, Fully Extended

Harbor ElementStreaming Ingestion Concept
Waiting for a ship to fully dock before unloadingBatch loading on a fixed schedule
Perishable cargo moving straight to storage the moment it’s readyContinuous, low-latency streaming ingestion
A yard built to receive one large shipment at a timeStorage layouts optimized for batch loads, not frequent small writes
A yard redesigned to smoothly absorb constant small deliveriesTable formats supporting continuous ingestion natively
A crew that periodically reorganizes accumulated small deliveries into orderly zonesAutomated compaction reconciling streaming writes with batch-oriented optimizations

For Beginners: What to Actually Do

  • If you haven’t already, read this series’ companion coverage of change data capture in the data-pipelines-etl topic — that’s where the ingestion mechanics behind streaming are covered in full depth.
  • Get comfortable with the idea that “streaming” describes how data arrives at storage, while the query performance concepts from Articles 7 and 8 describe how it’s organized once there — they’re related but distinct concerns.
  • When you encounter a “real-time” data requirement, ask concretely how real-time it actually needs to be. Genuine sub-second requirements are less common than assumed, and batch or micro-batch loading is often perfectly sufficient.
  • Notice friction between frequent small writes and query performance if you encounter it — that tension is a known, real trade-off in this space, not a sign you’re doing something wrong.

For Practitioners and Leaders: The Deeper Layer

  • Before committing to streaming ingestion for a given dataset, quantify the actual business cost of the current batch latency versus the real engineering cost of building and maintaining streaming infrastructure — “real-time” is often requested more casually than it’s actually needed.
  • If you’re already running streaming ingestion into a lakehouse, monitor for the batch-versus-streaming tension directly — degraded query performance from unmanaged small-file accumulation is a common, identifiable symptom worth watching for proactively.
  • As AI-facing freshness requirements grow, revisit which datasets actually need streaming versus which merely need more frequent batch loads — the two solve overlapping but distinct problems, and streaming is meaningfully more operationally complex to run well.
  • Coordinate closely with whoever owns pipeline-side CDC and streaming infrastructure (data-pipelines-etl topic) — the storage-side considerations in this article and the ingestion-side mechanics there are two halves of the same overall system.

Quick Recap

  • Streaming ingestion loads data continuously rather than in scheduled batches — this article covered what that means for lakehouse storage specifically, complementing the pipelines topic’s deeper coverage of the ingestion mechanics.
  • Batch-only architecture, once sufficient for most reporting needs, became a real limitation as real-time and AI-facing use cases grew.
  • Modern lakehouse storage layers increasingly support continuous small writes natively, though real tension remains with batch-oriented performance optimizations.
  • Genuine sub-second freshness needs are less common than casually assumed — evaluate actual requirements before committing to streaming’s added complexity.

Where This Fits in the Series

Article 16 covered a new kind of cargo. This article covered cargo that doesn’t wait to be unloaded. Article 18 turns to a different kind of movement entirely: relocating an existing port’s cargo to a new one.