Core Idea

Data Integrators are architectural forces that create pressure to keep data schemas together rather than distributing them across services.

Definition

Data Integrators are architectural forces that create pressure to keep data schemas together rather than distributing them across services. These forces represent genuine business constraints—ACID transactions, tight relationships, complex joins, consistency guarantees—making data distribution costly or risky.

Key Characteristics

  • ACID transaction requirements: Operations requiring strong consistency favor shared storage—financial transactions, inventory, orders demand all-or-nothing guarantees distributed transactions cannot provide

  • Tight data relationships: Entities with referential integrity resist separation—foreign key constraints only work within single databases (Customer → Orders → OrderItems)

  • Complex query patterns: Operations requiring joins favor co-location—reports, analytics introduce latency when distributed

  • High consistency needs: Real-time systems cannot tolerate eventual consistency—inventory, reservations, financials require immediate consistency

  • Shared domain semantics: Cohesive bounded contexts belong together—DDD keeps related concepts within aggregates

  • Transactional workflows: Multi-step processes requiring coordinated state favor unified storage—distribution introduces complexity

Examples

  • Order fulfillment: Atomic operations across Order, OrderItems, Payment, Inventory—splitting requires sagas; integration enables ACID

  • Customer aggregates: Customer with addresses and payment methods as natural aggregate—queries frequently join

  • Financial ledger: Double-entry bookkeeping requires perfect consistency—audit trails demand transactional integrity

  • Real-time inventory: Multiple purchases need consistent stock—centralized database prevents overselling

  • Analytics dashboards: Joining customers, orders, products—distributed requires API composition; integration simplifies SQL

Why It Matters

Data integrators oppose data disintegrators in trade-off analysis for service granularity. Architects evaluate integration force strength against distribution benefits (scalability, deployment, autonomy). Strong integrators suggest larger services; weak integrators support finer decomposition.

Distributed data patterns (saga, eventual consistency, CQRS) introduce complexity. Integrators identify scenarios where complexity exceeds benefits—financial systems, reservations often have such strong forces that distribution becomes untenable. Bounded contexts align with natural integration forces, revealing optimal service boundaries.

Sources

AI Assistance

This content was drafted with assistance from AI tools for research, organization, and initial content generation. All final content has been reviewed, fact-checked, and edited by the author to ensure accuracy and alignment with the author’s intentions and perspective.