TutorChase logo
Login
AQA A-Level Computer Science

19.3.3 Application and Evaluation of Normalisation

Normalisation transforms complex data structures into simpler, more efficient forms. It helps eliminate redundancy, ensures consistency, and improves data integrity for databases.

Introduction to the Application of Normalisation

Normalisation is a critical process in database design, where data is organised into related tables to eliminate redundancy and maintain integrity. Applying normalisation up to the third normal form (3NF) ensures a structure that is logically sound, scalable, and efficient for data operations. To fully understand this process, it's useful to follow a real-world example and explore how dependencies guide the restructuring of data.

Normalising a Relation to 3NF

To appreciate how normalisation is applied, we will explore how an unnormalised relation is transformed through the steps of first, second, and third normal form. This process involves analysing data dependencies, identifying repeating or dependent fields, and decomposing the relation into simpler, more focused tables.

Step 1: Unnormalised Relation (UNF)

Suppose we have a database for managing tutoring sessions. Initially, all information is stored in a single flat relation:

Booking(BookingID, StudentName, StudentEmail, TutorName, TutorSubject, SessionDate, SessionTime, TutorEmail)

This unnormalised form presents several issues:

  • Data redundancy: Student and tutor details are repeated for every session they are involved in.

Take your grades to the next level!

UPGRADING TO PREMIUM UNLOCKS
AI Tutor
AI-powered study assistant
instant feedback and guidance
Predicted Papers
Examiner-style predicted papers
based on recent exam trends
Practice Questions
All exam practice questions
by topic for each subject
Study Notes
All detailed revision notes
written by expert teachers
Cheat Sheets
Quick revision summaries
perfect for last-minute review
Past Papers
Complete collection
of practice and past exam papers
Email
Password
Confirm Password
Already have an account?

Practice Questions

FAQ

Normalisation directly influences how indexes are used and optimised in a relational database. In a normalised database, data is split across multiple related tables. To maintain efficient access and join performance, indexes are often created on foreign keys and attributes frequently used in query conditions. For example, a Booking table might have indexes on StudentID and TutorID to speed up joins with the Student and Tutor tables. Since joins are more frequent in a highly normalised schema, careful index planning is essential. Without proper indexes, queries can become slow due to the database scanning large tables to resolve relationships. Additionally, indexes help with sorting and searching, which are more complex in normalised structures. However, over-indexing can also slow down insert, update, and delete operations, because the indexes themselves must be maintained. Therefore, normalisation requires a balanced indexing strategy that considers both read and write efficiency to maintain good overall performance.

Yes, normalisation can significantly support GDPR compliance and other data protection regulations. By structuring data efficiently and logically, normalisation makes it easier to locate, manage, and protect personal information. For instance, storing student contact details in a dedicated Student table ensures that all personally identifiable information (PII) is kept in a centralised, well-defined location. This centralisation simplifies processes such as responding to data subject access requests (DSARs), performing data audits, or deleting personal data upon request—all essential aspects of GDPR compliance. Moreover, because data is not unnecessarily duplicated across the database, the risk of accidental disclosure or unauthorised access is reduced. Central storage also enables better control over who can access sensitive data and under what conditions, making it easier to apply encryption, anonymisation, or access permissions. In essence, normalisation not only improves technical efficiency but also enhances legal compliance and data governance practices by promoting structured and accountable data handling.

Normalisation improves data consistency by ensuring that each piece of information is stored in one place only. In a multi-user database environment, where different users might update or query data simultaneously, this structure becomes crucial. For example, if tutor details are stored in several places, one user might update a tutor’s email address in one table but forget to update it elsewhere, leading to conflicting information. By normalising the database, such data is stored centrally in its appropriate table, such as ‘Tutor’, and all related records link to it using foreign keys. This means updates to tutor information are made once and instantly reflected wherever that data is referenced. As a result, all users see the same accurate and up-to-date data regardless of when or how they access the system. This significantly reduces data anomalies and boosts the reliability of the entire system, especially under heavy or frequent user access.

If a database is not properly normalised before development, several critical problems can arise. One major issue is data redundancy—multiple copies of the same data being stored across different records. This not only wastes storage space but also increases the chance of inconsistencies, especially if changes are made in one place and not in another. Another issue is the presence of anomalies: insertion anomalies (where you can’t add data because other required data is missing), update anomalies (where a change in one place requires multiple updates across different records), and deletion anomalies (where removing one piece of data unintentionally removes related important information). Additionally, poorly structured databases make maintenance harder, lead to more complex and error-prone queries, and increase the risk of bugs in the application logic. Without normalisation, the database becomes harder to scale, less reliable, and more expensive to manage in the long run, particularly as the volume of data grows.

Yes, it is possible to reverse the normalisation process through denormalisation. Denormalisation is the intentional merging of related tables to reduce the number of joins required in queries. This might be useful when performance becomes an issue, especially in read-heavy environments such as reporting systems, dashboards, or analytics tools where the speed of data retrieval is more important than strict data integrity. By combining data into wider tables, you reduce the computational overhead of joining multiple normalised tables, which can improve performance in certain cases. Denormalisation may also simplify the database schema for users who need fast and simple access to data, like in business intelligence platforms. However, it should be done carefully, as it reintroduces redundancy and can lead to data anomalies if not managed correctly. In practice, denormalisation is often supported with triggers or stored procedures to maintain consistency across redundant copies of data.

Hire a tutor

Please fill out the form and we'll find a tutor for you.

1/2
Your details
Alternatively contact us via
WhatsApp, Phone Call, or Email