In today’s world, data is everything. And as a data analyst, one of the most crucial tasks you’ll face is creating accurate and effective data models. Without a strong foundation, your analysis could be off the mark, leading to poor decision-making and missed opportunities. In this article, we’ll delve into the essential concepts of database modeling and show you how to create a simple yet powerful relationship model that will take your data analysis skills to the next level. So buckle up and get ready to dive into the exciting world of data modeling!

Why Data Models?

  • Data models provide a structured way to represent complex data, which helps analysts understand and work with information more efficiently and effectively.
  • By defining how data is organized and related, data models enable collaboration across teams, promoting consistency and accuracy in data analysis.
  • Data models are essential for generating insights and making informed decisions based on accurate and organized data, making them a crucial tool for any data analyst or business professional.


To gain an understanding of database modeling, it’s essential to familiarize oneself with some fundamental concepts concerning data types and keys.

Reference, Transactional and Master Data

  • Reference data is a type of data that is used for categorizing and classifying other types of data. In other words, reference data provides definitions that are used to create enterprise master data.
  • Transactional data, on the other hand, refers to events or transactions that take place within a system. This could include things like orders, sales, or inventory updates.
  • Master data represents the foundational data about a business entity that provides context for business transactions. For example, this could include data about customers, products, or financial information. In other words, master data provides a comprehensive view of key business entities that is used to inform business decisions and transactions.

Primary Key, Foreign Key and Surrogate Key

  • Primary Key: A primary key is a unique identifier for a record in a database table. It is used to ensure that each record in the table can be uniquely identified and accessed. The primary key is also used to create relationships between different tables in a database.
  • Foreign Key: A foreign key is a field in one database table that refers to the primary key of another table. It is used to create relationships between tables and ensure that data is consistent across different tables in a database.
  • Surrogate Key: A surrogate key is an artificially created key that is used as the primary key in a database table. It is often created when there is no natural key available or when the natural key is too complex to use. Surrogate keys are generally generated using an algorithm or a sequence generator and are designed to be unique and non-repeating.


Practice data modeling with a hospital form example. Let’s get started!

The following is a hospital form following certain rules

we firstly divide the hospital form into different tables:

  • Hospital Table
  • Hospital Category Table
  • Hospital Operation Table
  • Operation Table
  • Surgeon Table
  • Standard Drug Dosage Table
  • Drug Admin Table
  • Drug Table

As a standard practice in database design, it is important to assign a primary key to each table. The primary key serves as a unique identifier for every row within the table, which enables efficient data retrieval and manipulation. By defining a primary key for a table, you ensure that each record within the table is identifiable and distinguishable from all other records in the same table. so for each table, the primary keys are:

  • Hospital Table: Hospital Number
  • Hospital Category Table:  Hospital Category
  • Hospital Operation Table: Hospital Operation Number
  • Operation Table: Operation Code
  • Surgeon Table: Hospital Surgeon Number
  • Standard Drug Dosage Table: Drug Code
  • Drug Admin Table: Drug Admin Number
  • Drug Table: Drug Short Name

Once the primary key has been determined for each table in a database, the next step is to assign attributes to each table. Attributes are the characteristics or properties of the data that the table is intended to store. Examples of attributes might include a person’s name, address, or date of birth in a table of customer information.

After assigning attributes, the next step is to establish relationships between tables by defining foreign keys. The purpose of the foreign key is to enforce referential integrity between related tables, ensuring that data is consistent and accurate across the database. By establishing relationships between tables using foreign keys, it becomes possible to retrieve and manipulate data from multiple tables at once using SQL queries, which can be a powerful tool for data analysis and reporting.



The Data School
Author: The Data School