What is Canonical Data Modeling?

By on

Canonical Data Modeling documents, using Data Modeling techniques, how messages or packets pass between different systems internally in the organization and across different company systems, to do e-business.

Data sometimes vary, across systems, in their definitions. For example, a company may have defined “customer” for a data warehouse constructed 10 years ago and then characterized it another way in a graph database implemented last year. But the company wants all the systems to talk with each other even though they may vary in their dialects. The same problem can happen between companies. For example, Amazon can define customer data differently than different vendors. Yet, Amazon needs to talk with all its e-commerce companies.

Both inter and intra company dialog needs a middleware translator to help the different systems talk with each other, The canonical data model diagrams this design.

Other Definitions of Canonical Data Modeling Include:

Image Credit: DAMA-DMBOK2
  • Describes “the structure of data being passed between systems as packets or messages.” (DAMA-DMBOK2)
  • A tracker “that standardizes classification of data across the entire company” (McKinsey)
  • An extra layer that “translates messages coming from different applications into one common format.” (Yenlo)
  • “Defines the structure of an organization’s information.” (IBMDeveloper)
  • “A tool (sometimes known as a canonical message model) that provides a common, singular data format.” (Queensland University of Technology)
  • “A middleware schema.” (DZone)

Canonical Data Modeling Use Cases Include:

  • Integrating e-business standards between companies
  • Mapping different schemas into a unified data model
  • Instantiating databases within an organization
  • Defining a canonical format to which each canonical message must conform

Businesses use Canonical Data Modeling to:

  • Prepare computer services across several businesses to communicate with other businesses with different business dialects
  • Describe the structure of data passed between systems as packets or messages
  • Minimize dependencies between integrated applications on an integrated platform
  • Provide services to transform the local format of a business event into a canonical format and vice-versa
  • Assist with the exchange of messages
  • Provide the “critical foundation for effective Data Governance” by addressing key questions

Image used under license from Shutterstock.com

We use technologies such as cookies to understand how you use our site and to provide a better user experience. This includes personalizing content, using analytics and improving site operations. We may share your information about your use of our site with third parties in accordance with our Privacy Policy. You can change your cookie settings as described here at any time, but parts of our site may not function correctly without them. By continuing to use our site, you agree that we can save cookies on your device, unless you have disabled cookies.
I Accept