What Is Data Integration Between Systems?
Systems & Integration Fundamentals
Opening Hook. Picture a hospital where the reception desk keeps patient records on paper in one room, the lab keeps test results in a separate filing cabinet down the hall, and the pharmacy tracks prescriptions in its own private ledger. Every time a doctor needs the full picture, someone has to physically walk between rooms, copy numbers by hand, and hope nothing gets miscopied or forgotten along the way. Now imagine instead that all three rooms are connected by pneumatic tubes: the moment a lab result is ready, a copy automatically lands on the doctor’s desk and in the pharmacy’s queue. Nobody re-types anything, and everyone works from the same up-to-date facts. That’s exactly what data integration between systems does for software — it builds the tubes that let information move automatically between places that would otherwise be isolated islands.
Key Takeaways
- Data integration is the practice of connecting separate systems so information flows between them automatically, accurately, and consistently.
- Without integration, organizations end up with data silos — the same facts scattered and duplicated across systems that don’t talk to each other.
- Integration can happen in batches (on a schedule) or in real time (as things happen), and most organizations use a mix of both.
- Common integration styles include point-to-point connections, hub-and-spoke middleware, ETL/ELT pipelines, APIs, and event-based messaging.
- Good integration isn’t just about moving data — it’s also about transforming, validating, and reconciling it so every system agrees on what’s true.
- As the number of systems grows, the integration approach matters more: naive connections that work for two systems become unmanageable for twenty.
Chapter 1: The Big Picture — Why Systems Need to Be Integrated
No organization of any real size runs on a single piece of software. A typical company might use one system for customer records, another for billing, another for support tickets, another for inventory, another for HR, and another for analytics. Each of these systems is good at its own job — but each one also has its own private copy of data that overlaps with the others. The billing system knows a customer’s name and address. So does the support system. So does the shipping system. When a customer updates their address in one place, the others don’t automatically know.
This is the core problem data integration solves: keeping many independent systems working from a shared, accurate, up-to-date picture of the same underlying facts, without forcing every team to manually copy information between tools, or worse, without letting each system quietly drift out of sync with the others.
Analogy: Translators at a Conference
Imagine a conference where delegates speak five different languages, and none of them share a common tongue. Without translators, each delegate is isolated in their own conversation bubble, and decisions made in one room never reach the others accurately. Data integration is the team of translators standing between every pair of rooms — converting, relaying, and confirming so that what’s said (or changed) in one room reliably reaches everyone who needs to know it, in a form they understand.
Chapter 2: Core Vocabulary You Need First
| Term | What It Means |
|---|---|
| Source System | The system where a piece of data originates or is considered authoritative. |
| Target System | The system that receives and uses data coming from elsewhere. |
| Data Silo | A system whose data is isolated — not shared with, or synchronized against, other systems. |
| Integration Layer / Middleware | Software that sits between systems and handles the work of moving, transforming, and routing data. |
| ETL (Extract, Transform, Load) | A classic integration pattern: pull data out of a source, reshape it, and load it into a target. |
| ELT (Extract, Load, Transform) | A variation where raw data is loaded first, and transformation happens afterward, inside the target system. |
| API (Application Programming Interface) | A defined way for one system to request data or actions from another, on demand. |
| System of Record | The single system officially treated as the authoritative source of truth for a given piece of data. |
| Data Mapping | The explicit rules describing how a field in one system corresponds to a field in another. |
Chapter 3: What a “System” and a “Silo” Really Mean
It helps to be concrete about what counts as a “system” in this context. A system can be a full application (a CRM, an accounting package), a database that a specific team owns, a third-party service accessed over the internet, or even a spreadsheet that has quietly become someone’s unofficial source of truth. Anything that stores or produces data that other parts of the organization might care about is, functionally, a system worth thinking about.
A data silo forms whenever one of these systems holds data that isn’t reliably shared with the systems that need it. Silos aren’t always a deliberate design choice — they often emerge naturally, as teams pick different tools for good reasons, and nobody plans for how those tools will eventually need to share information. Over time, the cost of silos compounds: reports disagree with each other, customers get asked for the same information twice, and decisions get made on stale or incomplete data.
Common misconception. Data integration isn’t only a “big enterprise” problem. Even a small team using three separate tools — a spreadsheet, a support tool, and a payment processor — is already dealing with the same fundamental challenge, just at a smaller scale.
Chapter 4: The Main Styles of Data Integration
Over the decades, a handful of recurring approaches to integration have emerged. Most real organizations use several of these side by side, chosen based on how fast the data needs to move and how many systems are involved.
- Point-to-point integration — one system is directly connected to another, usually with custom code built specifically for that pair.
- Hub-and-spoke integration — a central piece of middleware connects to every system once, and routes data between them, so no system needs to know about any other directly.
- ETL/ELT pipelines — scheduled jobs extract data from sources, reshape it, and load it into a target, often a data warehouse used for reporting and analytics.
- API-based integration — systems expose defined interfaces that other systems can call on demand to fetch or update data.
- Event-based integration — systems announce meaningful changes as they happen, and interested systems react, similar in spirit to event-driven architecture more broadly.
Each style has a natural home. A nightly sales report might use a straightforward ETL job. A checkout page checking real-time inventory might use an API call. A dozen systems all needing to know “a customer’s address changed” might rely on an event.
Chapter 5: Batch Integration vs. Real-Time Integration
One of the most important decisions in any integration design is timing: does the data need to move the instant something changes, or is it acceptable for it to move on a schedule?
Batch integration collects changes over a period of time — an hour, a day — and moves them all together in one run. It’s simpler to build, easier to reason about, and gentler on system resources, but it means the receiving system is always somewhat behind, working with data that’s minutes or hours old.
Real-time (or near-real-time) integration moves data as soon as it changes, often within seconds. It gives every connected system a much fresher picture, but it demands more infrastructure, more careful error handling, and more attention to what happens when a system is temporarily unavailable mid-flow.
| Aspect | Batch | Real-Time |
|---|---|---|
| Freshness of data | Minutes to hours old | Seconds old, or less |
| Complexity to build | Lower | Higher |
| Resource usage | Concentrated during the batch window | Spread continuously over time |
| Good fit for | Reporting, analytics, nightly reconciliation | Inventory checks, fraud detection, live dashboards |
Chapter 6: How Data Actually Moves — A Walkthrough
Consider a common scenario: a customer updates their shipping address on a company’s website, and that change needs to reach the billing system, the shipping system, and the customer support tool.
- The customer submits the address change on the website, which is handled by the “customer profile” system — the system of record for customer details.
- The customer profile system saves the change and needs to make sure other systems learn about it.
- An integration layer picks up this change — either by the profile system calling out via an API, publishing an event, or the change being captured in the next scheduled batch job.
- The integration layer transforms the data if needed (for example, the billing system might expect the address formatted differently than the profile system stores it).
- The transformed data is delivered to the billing system, the shipping system, and the support tool.
- Each receiving system updates its own copy, so that the next person who looks at any of these systems sees the same, current address.
flowchart LR
A[Customer Profile System
source of truth] -- address changed --> B((Integration Layer))
B -- transformed data --> C[Billing System]
B -- transformed data --> D[Shipping System]
B -- transformed data --> E[Support Tool]
One change at the source, reliably propagated to every system that needs to know, without manual re-entry.
sequenceDiagram
participant Customer
participant Profile as Customer Profile System
participant Integ as Integration Layer
participant Billing as Billing System
participant Shipping as Shipping System
Customer->>Profile: Update address
Profile->>Profile: Save new address
Profile->>Integ: Notify of change
Integ->>Integ: Transform / map fields
Integ->>Billing: Deliver updated address
Integ->>Shipping: Deliver updated address
Billing-->>Integ: Acknowledge update
Shipping-->>Integ: Acknowledge update
The integration layer handles transformation and delivery, so the source system and target systems never need custom knowledge of each other.
Chapter 7: Point-to-Point Integration and Why It Breaks Down
The simplest possible integration is a direct connection built specifically between two systems: System A writes a small piece of custom code that talks to System B’s format and interface. For a handful of systems, this is fast to build and easy to understand.
The trouble starts as the number of systems grows. Connecting every system directly to every other system that needs its data produces a number of connections that grows far faster than the number of systems — a classic combinatorial explosion. Ten systems, fully interconnected point-to-point, could mean dozens of separate custom connections, each one built differently, each one a potential point of failure, and each one needing its own maintenance whenever either side changes.
Analogy: Direct Flights Between Every City
If every city wanted a direct flight to every other city, a network of just ten cities would need forty-five separate routes. Airlines solved this problem with hubs: fly into a central airport, then connect onward. Integration architecture faces exactly the same math, and reaches for exactly the same solution.
Chapter 8: Hub-and-Spoke and the Rise of the Middle Layer
Instead of every system connecting directly to every other system, hub-and-spoke integration introduces a central layer — sometimes called an integration platform, an enterprise service bus, or simply “the middleware” — that every system connects to just once. When System A has data to share, it sends it to the hub. The hub figures out who needs it, transforms it into the right shape for each recipient, and delivers it onward.
This turns a tangle of dozens of custom connections into a much smaller, more manageable set: each system only needs to know how to talk to the hub, not to every other system individually. Adding a new system means connecting it to the hub once, rather than building new point-to-point links to everything it needs to share data with.
flowchart TD
subgraph "Point-to-Point (before)"
A1[CRM] --- A2[Billing]
A1 --- A3[Support]
A1 --- A4[Shipping]
A2 --- A3
A2 --- A4
A3 --- A4
end
With just four systems, point-to-point already needs six separate custom connections.
flowchart TD
Hub((Integration Hub))
B1[CRM] --- Hub
B2[Billing] --- Hub
B3[Support] --- Hub
B4[Shipping] --- Hub
The same four systems, hub-and-spoke style: each system connects once, to the hub, regardless of how many other systems it needs to reach.
Chapter 9: ETL, ELT, and Data Pipelines
A huge share of real-world data integration exists to feed reporting and analytics, and the classic tool for this job is the ETL pipeline — Extract, Transform, Load.
Extract means pulling data out of one or more source systems. Transform means reshaping, cleaning, and combining that data into a structure suited for its destination — renaming fields, converting units, filtering out irrelevant rows, joining data from multiple sources together. Load means writing the transformed data into its destination, often a data warehouse built specifically for analysis.
A newer variation, ELT, flips the order: raw data is loaded into the destination first, and the transformation happens afterward, using the destination system’s own processing power. This has become popular as modern data warehouses have grown powerful enough to handle heavy transformation work themselves, rather than needing a separate transformation step beforehand.
| Aspect | ETL | ELT |
|---|---|---|
| Transformation happens | Before loading, in a separate processing step | After loading, inside the destination system |
| Raw data preserved? | Often not — only transformed data is kept | Yes — raw data is available for re-processing later |
| Best suited for | Well-understood, stable reporting needs | Flexible, evolving analytics needs |
Chapter 10: API-Based Integration
Not all integration needs to move large batches of data. Sometimes one system simply needs to ask another system a question, right now, and get an immediate answer — “Is this item in stock?” “What’s this customer’s current balance?” This is the natural home for API-based integration: one system exposes a defined interface, and other systems call it whenever they need something.
APIs are especially well suited to integration scenarios that are interactive, on-demand, and don’t require sending every change ever made — just the current answer to a specific question, whenever it’s asked. They’re a poor fit, however, for keeping many systems continuously synchronized with every change, since that would require constant, repeated polling rather than a single efficient flow.
APIs and other integration styles aren’t competitors — they’re usually combined. A system might use an event to learn “something changed,” and then make an API call to fetch the full details of exactly what changed.
Chapter 11: Event-Based Integration
Event-based integration borrows the same idea found in event-driven architecture more broadly: instead of systems asking each other for updates, or waiting for a scheduled batch job, systems announce meaningful changes the moment they happen, and any interested system can react.
This approach shines when many systems need to know about the same change, and when freshness matters. A customer updating their email address might need to reach the CRM, the marketing tool, the support tool, and the billing system, all within seconds — event-based integration lets one announcement reach all four without the source system needing to know about any of them individually.
Analogy: A Fire Alarm vs. a Fire Inspection Checklist
Batch integration is like a scheduled fire inspection — thorough, but only checking in periodically. Event-based integration is like a fire alarm — silent until something actually happens, and then immediately alerting everyone who needs to react, the instant it happens.
Chapter 12: Data Quality and Transformation Challenges
Moving data between systems is rarely as simple as copying it verbatim. Different systems almost always represent the same real-world facts differently, and integration work spends a large share of its effort reconciling these differences.
- Field mismatches — one system stores a full name as a single field; another splits it into first and last name.
- Format mismatches — dates, currencies, and units may be represented differently across systems.
- Duplicate or conflicting records — the same customer might exist under slightly different details in two systems, and integration needs rules for deciding which is correct, or how to merge them.
- Missing data — a field required by the target system might simply not exist in the source, requiring a default, a lookup, or a decision about how to handle the gap.
- Timing mismatches — if two systems update the same record at nearly the same moment, integration logic needs a clear rule for which change wins.
Good integration design treats these challenges as first-class work, not an afterthought — a pipeline that “just moves the data” without addressing quality issues tends to spread bad data faster and further than it would have spread on its own.
Chapter 13: Where Data Integration Shows Up in Real Organizations
Use Case: Customer 360 Views
Support, sales, and marketing teams each hold pieces of a customer’s history. Integration combines these pieces into a single, unified view so any team can see the full picture without hopping between tools.
Use Case: Financial Reporting
Revenue data might live in a billing system, expenses in an accounting tool, and payroll in an HR system. Nightly ETL pipelines pull all three into a data warehouse so finance teams can build accurate, combined reports.
Use Case: E-Commerce Order Fulfillment
An order placed on a website needs to reach inventory (to reserve stock), payment processing (to capture funds), and shipping (to arrange delivery) — often within seconds, making real-time or event-based integration essential.
Use Case: Mergers and Acquisitions
When two companies combine, their systems rarely match. Integration work becomes critical to reconcile customer records, financial data, and operational systems from both sides into something coherent.
Chapter 14: Trade-Offs and Honest Limitations
What You Gain
- A consistent, accurate picture of data across the organization
- Less manual, error-prone re-entry of the same information
- Faster, more confident decision-making based on trustworthy data
- The flexibility to adopt new tools without losing connectivity to existing ones
What You Give Up
- Simplicity — integration adds moving parts, and moving parts can fail
- Instant changes without ripple effects — a schema change in one system can quietly break downstream integrations
- Perfect real-time accuracy, unless real-time integration is specifically built and maintained
- Low upfront cost — integration is an ongoing investment, not a one-time project
Honest framing. Integration is never really “finished.” Systems change, new tools get adopted, and business needs evolve — so integration is better thought of as an ongoing discipline an organization maintains, not a project with a fixed end date.
Chapter 15: Security and Governance Considerations
- Access control: integration pathways often carry sensitive data (customer details, financial records), so who can configure and access these pathways needs the same scrutiny as access to the underlying systems themselves.
- Data minimization: just because a source system has a field doesn’t mean every target system needs it — sending only what’s necessary limits exposure if something goes wrong downstream.
- Auditability: knowing what data moved, when, and why is essential for compliance, and it also makes debugging integration issues far easier.
- System of record clarity: without a clearly designated authoritative source for each type of data, conflicting updates can create confusion about which system’s version is actually correct.
- Change management: because so many systems can depend on a shared data shape, changes to that shape need coordination, not just a quiet update in one place.
Chapter 16: Design Patterns and Anti-Patterns
Pattern: Single System of Record per Data Type
Designate exactly one system as authoritative for each category of data (customer details, product catalog, pricing), and have every other system treat that data as read-only, sourced through integration.
Pattern: Explicit Data Mapping Documentation
Keep a clear, maintained record of how fields map between systems, so anyone troubleshooting an integration issue doesn’t need to reverse-engineer the logic from scratch.
Anti-Pattern: Silent Duplicate Sources of Truth
Letting two systems both independently “own” the same kind of data, with no clear rule for which one wins during conflicts, guarantees the two will eventually disagree — and nobody will know which one to trust.
Anti-Pattern: The Undocumented Point-to-Point Sprawl
A growing web of custom, one-off connections between systems, built by different people at different times with no shared documentation, becomes a maintenance nightmare that only a handful of people fully understand — and that understanding walks out the door when they leave.
Chapter 17: Best Practices for Integrating Systems
- Identify a clear system of record for every important category of data before building integrations around it.
- Choose batch, real-time, or a mix, based on how quickly each specific use case actually needs fresh data — not by default assuming everything needs to be instant.
- Document data mappings and transformation rules as part of the integration itself, not as tribal knowledge in someone’s head.
- Build in monitoring and alerting so integration failures are caught quickly, not discovered weeks later through a confused end user.
- Favor a central integration layer over sprawling point-to-point connections once more than a handful of systems are involved.
- Treat data quality and validation as part of the integration, not a problem to solve after data has already spread everywhere.
- Plan for schema and format changes from the start — build in versioning rather than assuming today’s shape will last forever.
Chapter 18: Frequently Asked Questions
Is data integration the same thing as a data warehouse?
No. A data warehouse is a destination — a place built to store combined data for analysis. Data integration is the broader practice of moving and reconciling data between systems, of which loading a data warehouse is just one common use case.
Do small companies need to think about data integration?
Yes, even a company using just three or four tools already faces the core challenge — keeping information consistent across them. The scale of the solution differs, but the underlying problem appears early.
What’s the difference between integration and migration?
Migration is a one-time move of data from an old system to a new one, usually as part of retiring the old system. Integration is an ongoing, continuous connection between systems that both remain in active use.
Which integration style is “best”?
There isn’t a single best style — the right choice depends on how many systems are involved, how fresh the data needs to be, and how much complexity the organization can realistically maintain. Most mature organizations end up using several styles together, chosen per use case.
Can integration fix bad data quality on its own?
Not by itself. Integration can enforce rules and catch some inconsistencies during transformation, but it can’t invent correct data that was never captured accurately in the first place. Data quality still needs attention at the point where data is originally entered.
Chapter 19: Summary and Key Takeaways
Data integration is the quiet, essential work that keeps an organization’s many separate systems telling the same story. Without it, every new tool adopted adds another silo, another place where the same facts can drift out of sync, and another source of confusion for the people relying on that data. With it, systems that were never designed to know about each other can still work together as if they were one coherent whole.
Remember This
- Data integration connects separate systems so information flows automatically, instead of being manually re-entered or left inconsistent.
- Silos form naturally as organizations adopt more tools — integration is the deliberate counter-force.
- Batch integration trades freshness for simplicity; real-time integration trades simplicity for freshness — most organizations need both.
- Point-to-point connections work for a few systems but collapse under their own complexity as the number of systems grows — hub-and-spoke middleware is the common fix.
- ETL/ELT, APIs, and event-based integration are complementary tools, each suited to different needs, not competing replacements for each other.
- Data quality and transformation work is not optional overhead — it’s a core part of what makes integration actually trustworthy.
- Integration is an ongoing discipline, not a one-time project — it needs to evolve as systems and business needs change.