The larger your database, the higher the possibility of data repetition and inaccuracies that compromise the results you pull from the database. Normalization in DBMS exists to counteract those problems by helping you to create more uniform databases in which redundancies are less likely to occur.


Mastering normalization is a key skill in DBMS for the simple fact that an error-strewn database is of no use to an organization. For example, a retailer that has to deal with a database that has multiple entries for phone numbers and email addresses is a retailer that can’t see as effectively as one that has a simple route to the customer. Let’s look at normalization in DBMS and how it helps you to create a more organized database.


The Concept of Normalization


Grab a pack of playing cards and throw them onto the floor. Now, pick up the “Jack of Hearts.” It’s a tough task because the cards are strewn all over the place. Some are facing down and there’s no rhyme, reason, or pattern to how the cards lie, meaning you’re going to have to check every card individually to find the one you want.


That little experiment shows you how critical organization is, even with a small set of “data.” It also highlights the importance of normalization in DBMS. Through normalization, you implement organizational controls using a set of principles designed to achieve the following:


  • Eliminate redundancy – Lower (or eliminate) occurrences of data repeating across different tables, or inside individual tables, in your DBMS.
  • Minimize data anomalies – Better organization makes it easier to spot datasets that don’t fit the “norm,” meaning fewer anomalies.
  • Improve data integrity – More accurate data comes from normalization controls. Database users can feel more confident in their results because they know that the controls ensure integrity.

The Process of Normalization


If normalization in DBMS is all about organization, it stands to reason that they would be a set process to follow when normalizing your tables and database:


  1. Decompose your tables – Break every table down into its various parts, which may lead to you creating several tables out of one. Through decomposition, you separate different datasets, eliminate inconsistencies, and set the stage for creating relationships and dependencies between tables.
  2. Identify functional dependencies – An attribute in one table may be dependent on another to exist. For example, a “Customer ID” number in a retailer’s “Customer” table is functionally dependent on the “Customer Name” field because the ID can’t exist without the customer. Identifying these types of dependencies ensures you don’t end up with empty records (such as a record with a “Customer ID” and no customer attached to it).
  3. Apply normalization rules – Once you’re broken down your table and identified the functional dependencies, you apply relevant normalization rules. You’ll use Normal Forms to do this, with the six highlighted below each having its own rules, structures, and use cases.

Normal Forms in DBMS


There isn’t a “single” way to achieve normalization in DBMS because every database (and the tables it contains) is different. Instead, there are six normal forms you may use, with each having its own rules that you need to understand to figure out which to apply.


First Normal Form (1NF)


If a relation can’t contain multiple values, it’s in 1NF. In other words, each attribute in the table can only contain a single (called “atomic”) value.


Example


If a retailer wants to store the details of its customers, it may have attributes in its table like “Customer Name,” “Phone Number,” and “Email Address.” By applying 1NF to this table, you ensure that the attributes that could contain multiple entries (“Phone Number” and “Email Address”) only contain one, making contacting that customer much simpler.


Second Normal Form (2NF)


A table that’s in 2NF is in 1NF, with the additional condition that none of its non-prime attributes depend on a subset of candidate keys within the table.


Example


Let’s say an employer wants to create a table that contains information about an employee, the skills they have, and their age. An employee may have multiple skills, leading to multiple records for the same employee in the table, with each denoting a skill while the ID number and age of the employee repeat for each record.


In this table, you’ve achieved 1NF because each attribute has an atomic value. However, the employee’s age is dependent on the employee ID number. To achieve 2NF, you’d break this table down into two tables. The first will contain the employee’s ID number and age, with that ID number linking to a second table that lists each of the skills associated with the employee.


Third Normal Form (3NF)


In 3NF, the table you have must already be in 2NF form, with the added rule of removing the transitive functional dependency of the non-prime attribute of any super key. Transitive functional dependency occurs if the dependency is the result of a pair of functional dependencies. For example, the relationship between A and C is a transitive dependency if A depends on B, B depends on C, but B doesn’t depend on A.


Example


Let’s say a school creates a “Students” table with the following attributes:


  • Student ID
  • Name
  • Zip Code
  • State
  • City
  • District

In this case, the “State,” “District,” and “City” attributes all depend on the “Zip Code” attribute. That “Zip” attribute depends on the “Student ID” attribute, making “State,” “District,” and “City” all transitively depending on “Student ID.”


To resolve this problem, you’d create a pair of tables – “Student” and “Student Zip.” The “Student” table contains the “Student ID,” “Name,” and “Zip Code” attributes, with that “Zip Code” attribute being the primary key of a “Student Zip” table that contains the rest of the attributes and links to the “Student” table.



Boyce-Codd Normal Form (BCNF)


Often referred to as 3.5NF, BCNF is a stricter version of 3NF. So, this normalization in DBMS rule occurs if your table is in 3NF, and for every functional dependence between two fields (i.e., A -> B), A is the super key of your table.


Example


Sticking with the school example, every student in a school has multiple classes. The school has a table with the following fields:


  • Student ID
  • Nationality
  • Class
  • Class Type
  • Number of Students in Class

You have several functional dependencies here:


  • Student ID -> Nationality
  • Class -> Number of Students in Class, Class Type

As a result, both the “Student ID” and “Class” attributes are candidate keys but can’t serve as keys alone. To achieve BCNF normalization, you’d break the above table into three – “Student Nationality,” “Student Class,” and “Class Mapping,” allowing “Student ID” and “Class” to serve as primary keys in their own tables.


Fourth Normal Form (4NF)


In 4NF, the database must meet the requirements of BCNF, in addition to containing no more than a single multivalued dependency. It’s often used in academic circles, as there’s little use for 4NF elsewhere.


Example


Let’s say a college has a table containing the following fields:


  • College Course
  • Lecturer
  • Recommended Book

Each of these attributes is independent of the others, meaning each can change without affecting the others. For example, the college could change the lecturer of a course without altering the recommended reading or the course’s name. As such, the existence of the course depends on both the “Lecturer” and “Recommended Book” attributes, creating a multivalued dependency. If a DBMS has more than one of these types of dependencies, it’s a candidate for 4NF normalization.


Fifth Normal Form (5NF)


If your table is in 4NF, has no join dependencies, and all joining is lossless, it’s in 5NF. Think of this as the final form when it comes to normalization in DBMS, as you’ve broken your table down so much that you’ve made redundancy impossible.


Example


A college may have a table that tells them which lecturers teach certain subjects during which semesters, creating the following attributes:


  • Subject
  • Lecturer Name
  • Semester

Let’s say one of the lecturers teaches both “Physics” and “Math” for “Semester 1,” but doesn’t teach “Math” for Semester 2. That means you need to combine all of the fields in this table to get an accurate dataset, leading to redundancy. Add a third semester to the mix, especially if that semester has no defined courses or lecturers, and you have to join dependencies.


The 5NF solution is to break this table down into three tables:


  • Table 1 – Contains the “Semester” and “Subject” attributes to show which subjects are taught in each semester.
  • Table 2 – Contains the “Subject” and “Lecturer Name” attributes to show which lecturers teach a subject.
  • Table 3 – Contains the “Semester” and “Lecturer Name” attributes so you can see which lecturers teach during which semesters.

Benefits of Normalization in DBMS


With normalization in DBMS being so much work, you need to know the following benefits to show that it’s worth your effort:


  • Improved database efficiency
  • Better data consistency
  • Easier database maintenance
  • Simpler query processing
  • Better access controls, resulting in superior security

Limitations and Trade-Offs of Normalization


Normalization in DBMS does have some drawbacks, though these are trade-offs that you accept for the above benefits:


  • The larger your database gets, the more demands it places on system performance.
  • Breaking tables down leads to complexity.
  • You have to find a balance between normalization and denormalization to ensure your tables make sense.

Practical Tips for Mastering Normalization Techniques


Getting normalization in DBMS is hard, especially when you start feeling like you’re dividing tables into so many small tables that you’re losing track of the database. These tips help you apply normalization correctly:


  • Understand the database requirements – Your database exists for you to extract data from it, so knowing what you’ll need to extract indicates whether you need to normalize tables or not.
  • Document all functional dependencies – Every functional dependence that exists in your database makes the table in which it exists a candidate for normalization. Identify each dependency and document it so you know whether you need to break the table down.
  • Use software and tools – You’re not alone when poring through your database. There are plenty of tools available that help you to identify functional dependencies. Many make normalization suggestions, with some even being able to carry out those suggestions for you.
  • Review and refine – Every database evolves alongside its users, so continued refining is needed to identify new functional dependencies (and opportunities for normalization).
  • Collaborate with other professionals – A different set of eyes on a database may reveal dependencies and normalization opportunities that you don’t see.

Make Normalization Your New Norm


Normalization may seem needlessly complex, but it serves the crucial role of making the data you extract from your database more refined, accurate, and free of repetition. Mastering normalization in DBMS puts you in the perfect position to create the complex databases many organizations need in a Big Data world. Experiment with the different “normal forms” described in this article as each application of the techniques (even for simple tables) helps you get to grips with normalization.

Related posts

Agenda Digitale: The Five Pillars of the Cloud According to NIST – A Compass for Businesses and Public Administrations
OPIT - Open Institute of Technology
OPIT - Open Institute of Technology
Jun 26, 2025 7 min read

Source:


By Lokesh Vij, Professor of Cloud Computing Infrastructure, Cloud Development, Cloud Computing Automation and Ops and Cloud Data Stacks at OPIT – Open Institute of Technology

NIST identifies five key characteristics of cloud computing: on-demand self-service, network access, resource pooling, elasticity, and metered service. These pillars explain the success of the global cloud market of 912 billion in 2025

In less than twenty years, the cloud has gone from a curiosity to an indispensable infrastructure. According to Precedence Research, the global market will reach 912 billion dollars in 2025 and will exceed 5.1 trillion in 2034. In Europe, the expected spending for 2025 will be almost 202 billion dollars. At the base of this success are five characteristics, identified by the NIST (National Institute of Standards and Technology): on-demand self-service, network access, shared resource pool, elasticity and measured service.

Understanding them means understanding why the cloud is the engine of digital transformation.

On-demand self-service: instant provisioning

The journey through the five pillars starts with the ability to put IT in the hands of users.

Without instant provisioning, the other benefits of the cloud remain potential. Users can turn resources on and off with a click or via API, without tickets or waiting. Provisioning a VM, database, or Kubernetes cluster takes seconds, not weeks, reducing time to market and encouraging continuous experimentation. A DevOps team that releases microservices multiple times a day or a fintech that tests dozens of credit-scoring models in parallel benefit from this immediacy. In OPIT labs, students create complete Kubernetes environments in two minutes, run load tests, and tear them down as soon as they’re done, paying only for the actual minutes.

Similarly, a biomedical research group can temporarily allocate hundreds of GPUs to train a deep-learning model and release them immediately afterwards, without tying up capital in hardware that will age rapidly. This flexibility allows the user to adapt resources to their needs in real time. There are no hard and fast constraints: you can activate a single machine and deactivate it when it is no longer needed, or start dozens of extra instances for a limited time and then release them. You only pay for what you actually use, without waste.

Wide network access: applications that follow the user everywhere

Once access to resources is made instantaneous, it is necessary to ensure that these resources are accessible from any location and device, maintaining a uniform user experience. The cloud lives on the network and guarantees ubiquity and independence from the device.

A web app based on HTTP/S can be used from a laptop, tablet or smartphone, without the user knowing where the containers are running. Geographic transparency allows for multi-channel strategies: you start a purchase on your phone and complete it on your desktop without interruptions. For the PA, this means providing digital identities everywhere, for the private sector, offering 24/7 customer service.

Broad access moves security from the physical perimeter to the digital identity and introduces zero-trust architecture, where every request is authenticated and authorized regardless of the user’s location.

All you need is a network connection to use the resources: from the office, from home or on the move, from computers and mobile devices. Access is independent of the platform used and occurs via standard web protocols and interfaces, ensuring interoperability.

Shared Resource Pools: The Economy of Scale of Multi-Tenancy

Ubiquitous access would be prohibitive without a sustainable economic model. This is where infrastructure sharing comes in.

The cloud provider’s infrastructure aggregates and shares computational resources among multiple users according to a multi-tenant model. The economies of scale of hyperscale data centers reduce costs and emissions, putting cutting-edge technologies within the reach of startups and SMBs.

Pooling centralizes patching, security, and capacity planning, freeing IT teams from repetitive tasks and reducing the company’s carbon footprint. Providers reinvest energy savings in next-generation hardware and immersion cooling research programs, amplifying the collective benefit.

Rapid Elasticity: Scaling at the Speed ​​of Business

Sharing resources is only effective if their allocation follows business demand in real time. With elasticity, the infrastructure expands or reduces resources in minutes following the load. The system behaves like a rubber band: if more power or more instances are needed to deal with a traffic spike, it automatically scales in real time; when demand drops, the additional resources are deactivated just as quickly.

This flexibility seems to offer unlimited resources. In practice, a company no longer has to buy excess servers to cover peaks in demand (which would remain unused during periods of low activity), but can obtain additional capacity from the cloud only when needed. The economic advantage is considerable: large initial investments are avoided and only the capacity actually used during peak periods is paid for.

In the OPIT cloud automation lab, students simulate a streaming platform that creates new Kubernetes pods as viewers increase and deletes them when the audience drops: a concrete example of balancing user experience and cost control. The effect is twofold: the user does not suffer slowdowns and the company avoids tying up capital in underutilized servers.

Metered Service: Transparency and Cost Governance

The dynamic scale generated by elasticity requires precise visibility into consumption and expenses : without measurement there is no governance. Metering makes every second of CPU, every gigabyte and every API call visible. Every consumption parameter is tracked and made available in transparent reports.

This data enables pay-per-use pricing , i.e. charges proportional to actual usage. For the customer, this translates into variable costs: you only pay for the resources actually consumed. Transparency helps you plan your budget: thanks to real-time data, it is easier to optimize expenses, for example by turning off unused resources. This eliminates unnecessary fixed costs, encouraging efficient use of resources.

The systemic value of the five pillars

When the five pillars work together, the effect is multiplier . Self-service and elasticity enable rapid response to workload changes, increasing or decreasing resources in real time, and fuel continuous experimentation; ubiquitous access and pooling provide global scalability; measurement ensures economic and environmental sustainability.

It is no surprise that the Italian market will grow from $12.4 billion in 2025 to $31.7 billion in 2030 with a CAGR of 20.6%. Manufacturers and retailers are migrating mission-critical loads to cloud-native platforms , gaining real-time data insights and reducing time to value .

From the laboratory to the business strategy

From theory to practice: the NIST pillars become a compass for the digital transformation of companies and Public Administration. In the classroom, we start with concrete exercises – such as the stress test of a video platform – to demonstrate the real impact of the five pillars on performance, costs and environmental KPIs.

The same approach can guide CIOs and innovators: if processes, governance and culture embody self-service, ubiquity, pooling, elasticity and measurement, the organization is ready to capture the full value of the cloud. Otherwise, it is necessary to recalibrate the strategy by investing in training, pilot projects and partnerships with providers. The NIST pillars thus confirm themselves not only as a classification model, but as the toolbox with which to build data-driven and sustainable enterprises.

Read the full article below (in Italian):

Read the article
ChatGPT Action Figures & Responsible Artificial Intelligence
OPIT - Open Institute of Technology
OPIT - Open Institute of Technology
Jun 23, 2025 6 min read

You’ve probably seen two of the most recent popular social media trends. The first is creating and posting your personalized action figure version of yourself, complete with personalized accessories, from a yoga mat to your favorite musical instrument. There is also the Studio Ghibli trend, which creates an image of you in the style of a character from one of the animation studio’s popular films.

Both of these are possible thanks to OpenAI’s GPT-4o-powered image generator. But what are you risking when you upload a picture to generate this kind of content? More than you might imagine, according to Tom Vazdar, chair of cybersecurity at the Open Institute of Technology (OPIT), in a recent interview with Wired. Let’s take a closer look at the risks and how this issue ties into the issue of responsible artificial intelligence.

Uploading Your Image

To get a personalized image of yourself back from ChatGPT, you need to upload an actual photo, or potentially multiple images, and tell ChatGPT what you want. But in addition to using your image to generate content for you, OpenAI could also be using your willingly submitted image to help train its AI model. Vazdar, who is also CEO and AI & Cybersecurity Strategist at Riskoria and a board member for the Croatian AI Association, says that this kind of content is “a gold mine for training generative models,” but you have limited power over how that image is integrated into their training strategy.

Plus, you are uploading much more than just an image of yourself. Vazdar reminds us that we are handing over “an entire bundle of metadata.” This includes the EXIF data attached to the image, such as exactly when and where the photo was taken. And your photo may have more content in it than you imagine, with the background – including people, landmarks, and objects – also able to be tied to that time and place.

In addition to this, OpenAI also collects data about the device that you are using to engage with the platform, and, according to Vazdar, “There’s also behavioral data, such as what you typed, what kind of image you asked for, how you interacted with the interface and the frequency of those actions.”

After all that, OpenAI knows a lot about you, and soon, so could their AI model, because it is studying you.

How OpenAI Uses Your Data

OpenAI claims that they did not orchestrate these social media trends simply to get training data for their AI, and that’s almost certainly true. But they also aren’t denying that access to that freely uploaded data is a bonus. As Vazdar points out, “This trend, whether by design or a convenient opportunity, is providing the company with massive volumes of fresh, high-quality facial data from diverse age groups, ethnicities, and geographies.”

OpenAI isn’t the only company using your data to train its AI. Meta recently updated its privacy policy to allow the company to use your personal information on Meta-related services, such as Facebook, Instagram, and WhatsApp, to train its AI. While it is possible to opt-out, Meta isn’t advertising that fact or making it easy, which means that most users are sharing their data by default.

You can also control what happens with your data when using ChatGPT. Again, while not well publicized, you can use ChatGPT’s self-service tools to access, export, and delete your personal information, and opt out of having your content used to improve OpenAI’s model. Nevertheless, even if you choose these options, it is still worth it to strip data like location and time from images before uploading them and to consider the privacy of any images, including people and objects in the background, before sharing.

Are Data Protection Laws Keeping Up?

OpenAI and Meta need to provide these kinds of opt-outs due to data protection laws, such as GDPR in the EU and the UK. GDPR gives you the right to access or delete your data, and the use of biometric data requires your explicit consent. However, your photo only becomes biometric data when it is processed using a specific technical measure that allows for the unique identification of an individual.

But just because ChatGPT is not using this technology, doesn’t mean that ChatGPT can’t learn a lot about you from your images.

AI and Ethics Concerns

But you might wonder, “Isn’t it a good thing that AI is being trained using a diverse range of photos?” After all, there have been widespread reports in the past of AI struggling to recognize black faces because they have been trained mostly on white faces. Similarly, there have been reports of bias within AI due to the information it receives. Doesn’t sharing from a wide range of users help combat that? Yes, but there is so much more that could be done with that data without your knowledge or consent.

One of the biggest risks is that the data can be manipulated for marketing purposes, not just to get you to buy products, but also potentially to manipulate behavior. Take, for instance, the Cambridge Analytica scandal, which saw AI used to manipulate voters and the proliferation of deepfakes sharing false news.

Vazdar believes that AI should be used to promote human freedom and autonomy, not threaten it. It should be something that benefits humanity in the broadest possible sense, and not just those with the power to develop and profit from AI.

Responsible Artificial Intelligence

OPIT’s Master’s in Responsible AI combines technical expertise with a focus on the ethical implications of AI, diving into questions such as this one. Focusing on real-world applications, the course considers sustainable AI, environmental impact, ethical considerations, and social responsibility.

Completed over three or four 13-week terms, it starts with a foundation in technical artificial intelligence and then moves on to advanced AI applications. Students finish with a Capstone project, which sees them apply what they have learned to real-world problems.

Read the article