Soccer

FIFA World Cup™ is here. Get your VPN 80% off

FIFA World Cup™ is here.
Get your VPN 80% off

Claim Now
Wc2026 Mobile

Expressvpn Glossary

Canonical data model (CDM)

Canonical data model (CDM)

What is a canonical data model?

A canonical data model (CDM) is a shared reference format that apps and services use to exchange data. It defines common fields, such as identifiers, logs, event types, and application data. This helps systems use and interpret data consistently, supporting clear and efficient communication.

How does a canonical data model work?

A CDM uses a shared schema as an intermediate model for exchanging data between systems. This is often used in a hub-and-spoke integration approach, where each system maps to the CDM rather than creating separate mappings for every other system. The process unfolds in these steps:

  1. Apps or services exchange data through an integration layer that uses the CDM as the shared schema. The data may be serialized as JavaScript Object Notation (JSON), Extensible Markup Language (XML), or another format.
  2. When sending requests or information, each app maps its native data into the CDM-defined format.
  3. Integration tools, such as enterprise service buses (ESBs), middleware, integration platforms, or API gateways, route data between communicating apps and may help apply mappings or transformations.
  4. When the information reaches another app or platform, that app converts the standardized data back into its native format.

How a canonical data model works.

Why is a canonical data model important?

A properly implemented CDM can simplify scalability and governance while supporting more consistent, reliable data for analytics.

Having a shared data framework can speed up enterprise application integration (EAI). Each new service maps to the shared model rather than requiring separate point-to-point mappings with every other service, thereby improving efficiency. This makes it easier for organizations to onboard new applications and scale operations.

Canonical models may also streamline maintenance. If one application changes its data structure and the shared model remains unchanged, only that app’s mapping needs to be updated. This isolates changes between connected services and can make updates easier to manage.

Standardization can also support governance and compliance by establishing a consistent reference for how shared data is defined. Fields such as customer IDs, event types, product codes, timestamps, and order dates follow the same structure, naming conventions, and format across applications. This helps prevent mismatches and other errors.

Where is it used?

Common applications of CDM include:

  • APIs, messages, and service-oriented architecture (SOA): Standardizing requests, responses, or messages between shared services.
  • Extract, transform, and load (ETL) processes: Transforming source data into a common structure before loading it into data warehouses, data lakes, or analytics systems.
  • Enterprise data platforms: Unifying customer, operational, and transactional data from multiple systems into a consistent structure.
  • Identity provisioning and access systems: Aligning user IDs, groups, roles, and attributes across identity providers and applications.
  • Security monitoring and analytics: Normalizing logs and event data from firewalls, security information and event management (SIEM) tools, and endpoint security tools.
  • Cloud and hybrid environments: Integrating data across on-premise systems and cloud services.

Risks and challenges

CDMs can require significant effort to set up because teams must agree on shared data definitions and mappings. Some app data may not fit established schemas cleanly. Additional transformations may be needed, which increases the risk of introducing inconsistencies.

Updating the model can also become challenging over time, since changes may affect multiple connected apps and risk breaking existing mappings. As more systems depend on the shared model, even small changes can take longer and increase coordination effort.

As a result, organizations may stagger the adoption of CDMs. Older system-to-system integrations may also limit compatibility and often continue alongside the CDM.

Further reading

FAQ

What is the purpose of a canonical data model?

A canonical data model (CDM) provides a shared structure that different apps and services use to exchange data. It reduces the need for custom point-to-point mappings and helps ensure that data is interpreted consistently across platforms.

How is a canonical data model different from a database schema?

A canonical data model (CDM) defines a shared structure for data standardization across systems, while a database schema defines how data is organized within a database or database system. CDMs may use schemas to implement this shared structure in a specific format.

Does a canonical data model improve security?

A canonical data model (CDM) doesn’t directly improve security. However, consistent field definitions can support governance processes that apply access controls, data classification, and masking across systems.

Is a canonical data model only used for APIs?

No, a canonical data model (CDM) isn’t limited to APIs. It can be used in various contexts where systems exchange data, including enterprise platforms, identity systems, analytics tools, and cloud environments.

What are the challenges of implementing a canonical data model?

Implementing a canonical data model (CDM) can be challenging because teams must align on shared definitions and reconcile differences across systems. Future schema changes can also affect multiple connected systems, which slows long-term updates.
Get Started