Skip to main content
Margie Henry

Data Mutation as a Governance Problem in Machine Learning Platforms

Team

Problem

A machine learning data platform designed for dataset storage, annotation, and versioning began to degrade under increased usage. As data volumes grew and user activity intensified, the system experienced latency spikes, timeouts, and operational friction during peak periods.

The platform’s design required users to download datasets, apply modifications externally, and re-upload them to create new versions. This model was initially sufficient for low-frequency updates but became inefficient as users began performing frequent appends, annotation updates, and deletions. At the same time, regulatory requirements such as GDPR introduced the need for precise, auditable deletion and correction of data.

The problem appeared to be one of scale: increasing read/write throughput and improving performance under load.

What’s actually happening

The system was not failing due to insufficient infrastructure. It was failing because its data mutation model was incompatible with how users actually interacted with data.

The platform treated datasets as static, versioned artifacts. Users, however, treated them as dynamic, continuously evolving systems. This mismatch created structural inefficiencies:

  • Updates required full dataset rewrites rather than incremental changes
  • Deletions were handled as destructive operations rather than governed mutations
  • Versioning was decoupled from actual data access patterns
  • Storage and compute costs scaled with duplication rather than change

As a result, the system forced high-cost operations (full re-uploads) for low-granularity changes (row-level updates or deletions). Under increased concurrency, this design amplified contention and degraded performance.

At the same time, regulatory requirements such as the right to deletion introduced stricter expectations: data could not simply be versioned—it needed to be selectively and permanently removed or corrected. The system’s architecture was not designed to support this level of precision.

The core issue was not throughput. It was that the system lacked a coherent model for how data should evolve over time.

Why it matters

When data mutation is poorly modeled, performance issues become symptoms of deeper systemic misalignment.

This creates several downstream consequences:

  • Operational instability: High write amplification leads to contention, timeouts, and unpredictable latency
  • User workarounds: Teams migrate to external storage systems that better match their workflows, fragmenting the platform ecosystem
  • Governance gaps: Inability to perform precise deletions or corrections creates compliance risk under regulatory frameworks
  • Cost inefficiency: Infrastructure scales with duplication rather than meaningful data change
  • Product stagnation: The platform becomes increasingly difficult to extend as new use cases require finer-grained data operations

What appears as a scaling problem is, in practice, a failure to align system design with user behavior and regulatory constraints.

Systems interpretation

This behavior emerges from several structural misalignments:

1. Data model vs. usage patterns
The platform enforces a batch-oriented, immutable data model, while users operate in a continuous, mutation-heavy workflow. The system optimizes for version creation; users optimize for incremental change.

2. Governance vs. implementation
Regulatory requirements demand precise control over data lifecycle events (e.g., deletion, correction). The system treats these as edge cases rather than core operations, leading to architectural strain.

3. Incentives and cost structure
Users are incentivized to minimize friction and latency, while the system’s design imposes high-cost operations for simple changes. This drives behavior outside the platform (e.g., external storage solutions).

4. Coordination boundaries
Data storage, annotation, and versioning are tightly coupled, preventing independent scaling and optimization. Changes in one layer propagate unnecessary load across the entire system.

5. Abstraction failure
The platform abstracts datasets as files rather than as structured, evolving collections of records. This limits its ability to support granular operations and efficient mutation.

Intervention / approach

A systems-oriented intervention reframes the problem from scaling infrastructure to redesigning data mutation and ownership boundaries.

The approach centers on decomposing the system along functional lines:

  • Separate mutable and immutable layers
    Distinguish between raw data and frequently changing metadata (such as annotations). This reduces contention and allows independent scaling.

  • Introduce granular mutation capabilities
    Enable row-level appends, updates, and deletions as first-class operations rather than forcing full dataset rewrites.

  • Adopt partitioned storage models
    Distribute data across partitions or shards aligned to access patterns, allowing parallelized read/write operations and reducing bottlenecks.

  • Align with external systems where appropriate
    Recognize that users already rely on scalable storage systems. Integrating with partitioned external storage can reduce duplication and align with existing workflows.

  • Embed governance into the data model
    Treat deletion, correction, and versioning as governed operations with clear semantics, enabling compliance without introducing system strain.

This shifts the system from a file-based abstraction to a mutation-aware data platform designed for continuous interaction.

Takeaway

Performance problems in data platforms are often the result of mismatched data mutation models. Systems that treat data as static artifacts will fail when users require continuous, granular change.

Closing reflection

Scalable systems are not defined by how much data they can store, but by how coherently they model change. When data evolution is treated as a first-class concern, performance, governance, and usability begin to align.

Ready to Change to Status Quo?

Let's work together. I'm here to help with product, data and stratefy projects — big or small.