Open In App

Short Note on Data Dictionary

Last Updated : 12 Nov, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

A Data Dictionary comprises two words i.e. Data which simply means information being collected through some sources and Dictionary means where this information is available. 

A Data Dictionary can be defined as a collection of information on all data elements or contents of databases such as data types, and text descriptions of the system. It makes it easier for users and analysts to use data as well as understand and have common knowledge about inputs, outputs, components of a database, and intermediate calculations. 

Why Data Dictionary is Essential?

There is less information and details provided by data models. So, a data dictionary is essential and needed to have proper knowledge and usage of contents. Data Dictionary provides all information about names that are used in system models. Data Dictionary also provides information about entities, relationships, and attributes that are present in the system model. As a part of the structured analysis and design tool, the implementation of a data dictionary is done.

The following data name type of Information is used to store in a data dictionary:

Name Description
Name Name generally includes the primary name of all composite data or control items available, and the name of the external entity or data store.
Aliases Any other word used in place of Name
Where or How it’s used? A data dictionary generally gives information about where and how data or control items are used which may include an input/ output to process.
Description A notation for representing content

Types of Data Dictionary

Data Dictionary is basically of two types. We will discuss each of them.

  • Integrated Data Dictionary
  • Stand Alone Data Dictionary

1. Integrated Data Dictionary

Integrated Data Dictionary can be seen as a catalog that can be maintained by the relational database. In previous databases, there is not any functionality of Integrated Data Dictionary, so they use Stand Alone Data Dictionary.

There are two types of Integrated Data Dictionary.

  • Active Data Dictionary: Active Database Dictionary is a type of database that is updated automatically in case any changes are to be done to the database. These are self-updating.
  • Passive Data Dictionary: Passive Databases are the databases that have to be maintained or updated manually in case of any changes have been made to the system.

2. Stand Alone Data Dictionary

Stand Alone Data Dictionary is a type of flexible data dictionary as Database Administrator has ease of managing data. It does not require data that is computer-based. It has no fixed format. But some elements are common in this kind of database.

  • Data Elements: It has the elements like name, datatype, validation rules, etc.
  • Tables: These contain all the necessary information that is required for the table, how many rows in the table, how many columns in the table, etc.
  • Index: The index of the databases is to be stored here. 
  • Programs: These are used for accessing the database, and can include SQL Queries, Reports, etc.
  • Relationship between Data Elements: This stores the relationship among the different databases, like cardinality, connectivity, etc.

How to Create a Data Dictionary?

Data Dictionary can be formed with the help of the following relational database like MySQL, SQL Server, etc. Several notations are present everywhere which enhances the quality of the Data Dictionary. We will also look into that. Database Administrators can have the following templates like SQL Server, that help in making Data Dictionary.

Notations in Data Dictionary

Data Construct Notation Meaning
Composition = Is composed of
Sequence + Represents AND
Selection [ |] Represents OR
Repetition { }n Represents n repetitions or repetition for n times
Parentheses ( ) Optional data that may or may not be present
Comment *…* Delimits a comment or commented information

Example: Let us understand this by taking an example of the reservation system. In the reservation system, “passenger” is a data item whose information is available on the data dictionary as follows:

Keys Values
Name Passenger
Aliases None
Where or how it’s used? Passenger’s query (input) Ticket (output)
Description
  • Passenger = Passenger_name + Passenger_address
  • Passenger_name = Passenger_lastname + Passenger_firstname + Passenger_middle_initial
  • Passenger_address = Local_address + Community_address + Zip_code
  • Local_address = House_number + street_name + Apartment_number
  • Community_Address = City_name + State_name

Challenges with Data Dictionary

  • The main challenge that occurs in front of us is that a data dictionary is somehow difficult and it may lead to take much time in case when data is not prepared previously. 
  • Data Preparation is a bit lengthy and hectic process for a large scale of data. 
  • When you don’t do Data Preparation, Data Dictionary is not that much efficient.
  • It can be an expensive process when resources are not to be utilized efficiently.
  • Data Dictionary can be an insecure process as if you give access to so many persons, it might be a challenge to the security of the Data Dictionary.

Conclusion

  • Data dictionaries enhance the maintainability, security, accessibility, and quality of data.
  • Data dictionaries can be installed as a stand-alone program or integrated into the database management system.
  • An informational database about the data within a database is called a data dictionary.
  • They include thorough explanations of all database elements, such as constraints, tables, columns, and indexes.

FAQs on Data Dictionary

Q.1: What is Data Dictionary in DBMS?

Answer:

Data Dictionary is simply a collection of definitions, data elements, or database contents like data types, attributes, etc.

Q.2: What is Data Dictionary also called in DBMS?

Answer:

Data Dictionary is also called a Metadata Repository in DBMS.

Q.3: What is an advantage of a Data Dictionary?

Answer:

The main advantage of a Data Dictionary is that it helps faster/easier detection of data anomalies. It also provides transparency in the data.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads