A data dictionary, also commonly called a metadata repository, is a centralized repository of data elements and other metadata about them. This may include the meaning of a piece of data, relationships to other data, origin, usage, type and length.
While the term metadata repository and data dictionary are often used interchangeably, many organizations will define separate data dictionaries within a single metadata repository since the data can be described in a number of forms. The first major differentiation in the way that data can be defined is logically versus physically.
A logical data dictionary allows an organization to describe data in terms that business representatives can more easily understand. It focuses on the meaning of the data and its relationships to other data. Logical data also usually models the real world far more closely that physical data. The business may have something that they refer to as a Sales Contract. This logical entity is of importance to the business. The Sales Contract business entity, in order to be completely defined, is made up of or has a relationship to other data such as Contract Participants, Contract ID, Contract Expiration Date, etc. How this data is structured in a physical data model or database is of no consequence to the business representative. At a logical level, the business representative cares about questions such as:
- What is a Sales Contract?
- What are the primary elements of a Sales Contract?
- Do these primary elements have attributes or data of their own?
- How does a Sales Contract relate to other relevant business entities?
Once data has been logically defined, the definition and relationships between various pieces of logical data rarely need to change.
In contrast, a physical data dictionary allows an organization to describe data in terms of its physical data structure, type, format, and length. Physical data dictionaries provide programmers of many different systems with a tool to understand how and where the data is stored and how it must be referenced in order to consume it. Physically data can be stored in many different ways in an effort to optimize data integrity and increase the efficiency of data retrieval and data updates.
Since data is often stored in a number of physical ways, more than one physical data dictionary can be defined. While a standard piece of data may be defined in terms of a common XML Schema structure that is used by many different systems throughout the organization, it can also be defined in terms of a physical database structure that is specific to a single system.
Both logical and physical data dictionaries can be mapped together within a central metadata repository to provide traceability from one data element to another whether it’s a physical or logical representation of that data. Once the physical and logical data dictionaries are mapped together the logical data elements and their descriptions provide a single, easy to understand view of the data used by the business and its systems.
Finally, a logical data dictionary provides the added benefit of constancy since it changes infrequently. As systems and technologies change, physical data structures do as well. But the logical data dictionary remains relatively unchanged over time as it reflects relatively unchanging business concepts.