You are on page 1of 31

Types of DBMS Architecture

There are three types of DBMS architecture:

1. Single tier architecture

2. Two tier architecture

3. Three tier architecture

1. Single tier architecture

In this type of architecture, the database is readily available on the client machine, any request
made by client doesn’t require a network connection to perform the action on the database.

For example, lets say you want to fetch the records of employee from the database and the
database is available on your computer system, so the request to fetch employee details will be
done by your computer and the records will be fetched from the database by your computer as
well. This type of system is generally referred as local database system.

2. Two tier architecture

DBMS Architecture - 2-tier

In two-tier architecture, the Database system is present at the server machine and the DBMS
application is present at the client machine, these two machines are connected with each other
through a reliable network as shown in the above diagram.

Whenever client machine makes a request to access the database present at server using a query
language like sql, the server perform the request on the database and returns the result back to
the client. The application connection interface such as JDBC, ODBC are used for the interaction
between server and client.
3. Three tier architecture

DBMS Architecture - 3 tier

In three-tier architecture, another layer is present between the client machine and server machine.
In this architecture, the client application doesn’t communicate directly with the database systems
present at the server machine, rather the client application communicates with server application
and the server application internally communicates with the database system present at the
server.

What is Data?

In simple words, data can be facts related to any object in consideration. For example, your name,
age, height, weight, etc. are some data related to you. A picture, image, file, pdf, etc. can also be
considered data.

What is Database?

A database is a systematic collection of data. They support electronic storage and manipulation of
data. Databases make data management easy.

a database example: An online telephone directory uses a database to store data of people,
phone numbers, and other contact details. Your electricity service provider uses a database to
manage billing, client-related issues, handle fault data, etc.

Types of Databases

Distributed databases:A distributed database is a type of database that has contributions from the
common database and information captured by local computers. In this type of database system,
the data is not in one place and is distributed at various organizations.

Relational databases:

This type of database defines database relationships in the form of tables. It is also called
Relational DBMS, which is the most popular DBMS type in the market. Database example of the
RDBMS system include MySQL, Oracle, and Microsoft SQL Server database.

Object-oriented databases:
This type of computers database supports the storage of all data types. The data is stored in the
form of objects. The objects to be held in the database have attributes and methods that define
what to do with the data. PostgreSQL is an example of an object-oriented relational DBMS.

Centralized database:

It is a centralized location, and users from different backgrounds can access this data. This type
of computers databases store application procedures that help users access the data even from a
remote location.

Open-source databases:

This kind of database stored information related to operations. It is mainly used in the field of
marketing, employee relations, customer service, of databases.

Cloud databases:

A cloud database is a database which is optimized or built for such a virtualized environment.
There are so many advantages of a cloud database, some of which can pay for storage capacity
and bandwidth. It also offers scalability on-demand, along with high availability.

Data warehouses:

Data Warehouse is to facilitate a single version of truth for a company for decision making and
forecasting. A Data warehouse is an information system that contains historical and commutative
data from single or multiple sources. Data Warehouse concept simplifies the reporting and
analysis process of the organization.

NoSQL databases:

NoSQL database is used for large sets of distributed data. There are a few big data performance
problems that are effectively handled by relational databases. This type of computers database is
very efficient in analyzing large-size unstructured database.

Hierarchical:

This type of DBMS employs the “parent-child” relationship of storing data. Its structure is like a
tree with nodes representing records and branches representing fields. The windows registry
used in Windows XP is a hierarchical database example.

Network DBMS:

This type of DBMS supports many-to-many relations. It usually results in complex database
structures. RDM Server is an example of database management system that implements the
network model.

There are five main components of a database:

Hardware:
The hardware consists of physical, electronic devices like computers, I/O devices, storage
devices, etc. This offers the interface between computers and real-world systems.

Software:

This is a set of programs used to manage and control the overall database. This includes the
database software itself, the Operating System, the network software used to share the data
among users, and the application programs for accessing data in the database.

Data:

Data is a raw and unorganized fact that is required to be processed to make it meaningful. Data
can be simple at the same time unorganized unless it is organized. Generally, data comprises
facts, observations, perceptions, numbers, characters, symbols, images, etc.

Procedure:

Procedure are a set of instructions and rules that help you to use the DBMS. It is designing and
running the database using documented methods, which allows you to guide the users who
operate and manage it.

Database Access Language:

Database Access language is used to access the data to and from the database, enter new data,
update already existing data, or retrieve required data from DBMS. The user writes some specific
commands in a database access language and submits these to the database.

What is a Database Management System (DBMS)?

Database Management System (DBMS) is a collection of programs that enable its users to access
databases, manipulate data, report, and represent data. It also helps to control access to the
database. Database Management Systems are not a new concept and, as such, had been first
implemented in the 1960s.

Advantages of DBMS

DBMS offers a variety of techniques to store & retrieve data.

DBMS serves as an efficient handler to balance the needs of multiple applications using the same
data.

Uniform administration procedures for data.

Application programmers never exposed to details of data representation and storage.

A DBMS uses various powerful functions to store and retrieve data efficiently.

Offers Data Integrity and Security.


The DBMS implies integrity constraints to get a high level of protection against prohibited access
to data.

A DBMS schedules concurrent access to the data in such a manner that only one user can access
the same data at a time.

Reduced Application Development Time.

Disadvantage of DBMS

DBMS may offer plenty of advantages but, it has certain flaws-

Cost of Hardware and Software of a DBMS is quite high which increases the budget of your
organization.

Most database management systems are often complex systems, so the training for users to use
the DBMS is required.

What is Data Model in DBMS and what are its types?

Data Model

It defines the data elements and the relationships between the data elements. Data Models are
used to show how data is stored, connected, accessed and updated in the database management
system.

Hierarchical Model

Hierarchical Model was the first DBMS model. This model organises the data in the hierarchical
tree structure. The hierarchy starts from the root which has root data and then it expands in the
form of a tree adding child node to the parent node. This model easily represents some of the real-
world relationships like food recipes, sitemap of a website etc. Example: We can represent the
relationship between the shoes present on a shopping website in the following way:

Features of a Hierarchical Model

One-to-many relationship: The data here is organised in a tree-like structure where the one-to-
many relationship is between the datatypes. Also, there can be only one path from parent to any
node. Example: In the above example, if we want to go to the node sneakers we only have one
path to reach there i.e through men's shoes node.
Parent-Child Relationship: Each child node has a parent node but a parent node can have more
than one child node. Multiple parents are not allowed.

Deletion Problem: If a parent node is deleted then the child node is automatically deleted.

Pointers: Pointers are used to link the parent node with the child node and are used to navigate
between the stored data. Example: In the above example the 'shoes' node points to the two other
nodes 'women shoes' node and 'men's shoes' node.

Advantages of Hierarchical Model

It is very simple and fast to traverse through a tree-like structure.

Any change in the parent node is automatically reflected in the child node so, the integrity of data
is maintained.

Disadvantages of Hierarchical Model

Complex relationships are not supported.

As it does not support more than one parent of the child node so if we have some complex
relationship where a child node needs to have two parent node then that can't be represented
using this model.

If a parent node is deleted then the child node is automatically deleted.

Network Model

This model is an extension of the hierarchical model. It was the most popular model before the
relational model. This model is the same as the hierarchical model, the only difference is that a
record can have more than one parent. It replaces the hierarchical tree with a graph. Example: In
the example below we can see that node student has two parents i.e. CSE Department and
Library. This was earlier not possible in the hierarchical model.

Features of a Network Model

Ability to Merge more Relationships: In this model, as there are more relationships so data is
more related. This model has the ability to manage one-to-one relationships as well as many-to-
many relationships.
Many paths: As there are more relationships so there can be more than one path to the same
record. This makes data access fast and simple.

Circular Linked List: The operations on the network model are done with the help of the circular
linked list. The current position is maintained with the help of a program and this position
navigates through the records according to the relationship.

Advantages of Network Model

The data can be accessed faster as compared to the hierarchical model. This is because the data
is more related in the network model and there can be more than one path to reach a particular
node. So the data can be accessed in many ways.

As there is a parent-child relationship so data integrity is present. Any change in parent record is
reflected in the child record.

Disadvantages of Network Model

As more and more relationships need to be handled the system might get complex. So, a user
must be having detailed knowledge of the model to work with the model.

Any change like updation, deletion, insertion is very complex.

Entity-Relationship Model

Entity-Relationship Model or simply ER Model is a high-level data model diagram. In this model,
we represent the real-world problem in the pictorial form to make it easy for the stakeholders to
understand. It is also very easy for the developers to understand the system by just looking at the
ER diagram. We use the ER diagram as a visual tool to represent an ER Model. ER diagram has
the following three components:

Entities: Entity is a real-world thing. It can be a person, place, or even a concept. Example:
Teachers, Students, Course, Building, Department, etc are some of the entities of a School
Management System.

Attributes: An entity contains a real-world property called attribute. This is the characteristics of
that attribute. Example: The entity teacher has the property like teacher id, salary, age, etc.

Relationship: Relationship tells how two attributes are related. Example: Teacher works for a
department.

Example:
In the above diagram, the entities are Teacher and Department. The attributes of Teacher entity
are Teacher_Name, Teacher_id, Age, Salary, Mobile_Number. The attributes of entity Department
entity are Dept_id, Dept_name. The two entities are connected using the relationship. Here, each
teacher works for a department.

Features of ER Model

Graphical Representation for Better Understanding: It is very easy and simple to understand so it
can be used by the developers to communicate with the stakeholders.

ER Diagram: ER diagram is used as a visual tool for representing the model.

Database Design: This model helps the database designers to build the database and is widely
used in database design.

Advantages of ER Model

Simple: Conceptually ER Model is very easy to build. If we know the relationship between the
attributes and the entities we can easily build the ER Diagram for the model.

Effective Communication Tool: This model is used widely by the database designers for
communicating their ideas.

Easy Conversion to any Model: This model maps well to the relational model and can be easily
converted relational model by converting the ER model to the table. This model can also be
converted to any other model like network model, hierarchical model etc.

Disadvatages of ER Model

No industry standard for notation: There is no industry standard for developing an ER model. So
one developer might use notations which are not understood by other developers.

Hidden information: Some information might be lost or hidden in the ER model. As it is a high-
level view so there are chances that some details of information might be hidden.

Relational Model
Relational Model is the most widely used model. In this model, the data is maintained in the form
of a two-dimensional table. All the information is stored in the form of row and columns. The basic
structure of a relational model is tables. So, the tables are also called relations in the relational
model. Example: In this example, we have an Employee table.

Features of Relational Model

Tuples: Each row in the table is called tuple. A row contains all the information about any instance
of the object. In the above example, each row has all the information about any specific individual
like the first row has information about John.

Attribute or field: Attributes are the property which defines the table or relation. The values of the
attribute should be from the same domain. In the above example, we have different attributes of
the employee like Salary, Mobile_no, etc.

Advnatages of Relational Model

Simple: This model is more simple as compared to the network and hierarchical model.

Scalable: This model can be easily scaled as we can add as many rows and columns we want.

Structural Independence: We can make changes in database structure without changing the way
to access the data. When we can make changes to the database structure without affecting the
capability to DBMS to access the data we can say that structural independence has been
achieved.

Disadvantages of Relatinal Model

Hardware Overheads: For hiding the complexities and making things easier for the user this
model requires more powerful hardware computers and data storage devices.

Bad Design: As the relational model is very easy to design and use. So the users don't need to
know how the data is stored in order to access it. This ease of design can lead to the development
of a poor database which would slow down if the database grows.

But all these disadvantages are minor as compared to the advantages of the relational model.
These problems can be avoided with the help of proper implementation and organisation.

Object-Oriented Data Model


The real-world problems are more closely represented through the object-oriented data model. In
this model, both the data and relationship are present in a single structure known as an object.
We can store audio, video, images, etc in the database which was not possible in the relational
model(although you can store audio and video in relational database, it is adviced not to store in
the relational database). In this model, two are more objects are connected through links. We use
this link to relate one object to other objects. This can be understood by the example given below.

In the above example, we have two objects Employee and Department. All the data and
relationships of each object are contained as a single unit. The attributes like Name, Job_title of
the employee and the methods which will be performed by that object are stored as a single
object.

What is a data flow diagram?

A data flow diagram (DFD) maps out the flow of information for any process or system. It uses
defined symbols like rectangles, circles and arrows, plus short text labels, to show data inputs,
outputs, storage points and the routes between each destination.

Symbols and Notations Used in DFDs

External entity: an outside system that sends or receives data, communicating with the system
being diagrammed. They are the sources and destinations of information entering or leaving the
system. They might be an outside organization or person, a computer system or a business
system. They are also known as terminators, sources and sinks or actors. They are typically
drawn on the edges of the diagram.

Process: any process that changes the data, producing an output. It might perform computations,
or sort data based on logic, or direct the data flow based on business rules. A short label is used
to describe the process, such as “Submit payment.”

Data store: files or repositories that hold information for later use, such as a database table or a
membership form. Each data store receives a simple label, such as “Orders.”

Data flow: the route that data takes between the external entities, processes and data stores. It
portrays the interface between the other components and is shown with arrows, typically labeled
with a short data name, like “Billing

Want more detail? Here is a comprehensive look at diagram symbols and notations and how
they’re used.

DFD levels and layers


DFD Level 0 is also called a Context Diagram. It’s a basic overview of the whole system or process
being analyzed or modeled. It’s designed to be an at-a-glance view, showing the system as a
single high-level process, with its relationship to external entities. It should be easily understood
by a wide audience, including stakeholders, business analysts, data analysts and developers.

DFD Level 1 provides a more detailed breakout of pieces of the Context Level Diagram. You will
highlight the main functions carried out by the system, as you break down the high-level process
of the Context Diagram into its subprocesses.

Examples of how DFDs can be used

DFD in software engineering: This is where data flow diagrams got their main start in the 1970s.
DFDs can provide a focused approached to technical development, in which more research is
done up front to get to coding.

DFD in business analysis: Business analysts use DFDs to analyze existing systems and find
inefficiencies. Diagramming the process can uncover steps that might otherwise be missed or not
fully understood.

DFD in business process re-engineering: DFDs can be used to model a better, more efficient flow
of data through a business process. BPR was pioneered in the 1990s to help organizations cut
operational costs, improve customer service and better compete in the market.

DFD in agile development: DFDs can be used to visualize and understand business and technical
requirements and plan the next steps. They can be a simple yet powerful tool for communication
and collaboration to focus rapid development.

Logical DFD vs. Physical DFD

These are the two categories of a data flow diagram. A Logical DFD visualizes the data flow that
is essential for a business to operate. It focuses on the business and the information needed, not
on how the system works or is proposed to work. However, a Physical DFD shows how the
system is actually implemented now, or how it will be. For example, in a Logical DFD, the
processes would be business activities, while in a Physical DFD, the processes would be
programs and manual procedures.

DEFINITION

RDBMS (relational database management system)

A relational database management system (RDBMS) is a collection of programs and capabilities


that enable IT teams and others to create, update, administer and otherwise interact with a
relational database. RDBMSes store data in the form of tables, with most commercial relational
database management systems using Structured Query Language (SQL) to access the database.
However, since SQL was invented after the initial development of the relational model, it is not
necessary for RDBMS use.

The RDBMS is the most popular database system among organizations across the world. It
provides a dependable method of storing and retrieving large amounts of data while offering a
combination of system performance and ease of implementation.

RDBMS vs. DBMS

In general, databases store sets of data that can be queried for use in other applications. A
database management system supports the development, administration and use of database
platforms.

An RDBMS is a type of database management system (DBMS) that stores data in a row-based
table structure which connects related data elements. An RDBMS includes functions that maintain
the security, accuracy, integrity and consistency of the data. This is different than the file storage
used in a DBMS.

Other differences between database management systems and relational database management
systems include:

Number of allowed users. While a DBMS can only accept one user at a time, an RDBMS can
operate with multiple users.

Hardware and software requirements. A DBMS needs less software and hardware than an RDBMS.

Amount of data. RDBMSes can handle any amount of data, from small to large, while a DBMS can
only manage small amounts.

Database structure. In a DBMS, data is kept in a hierarchical form, whereas an RDBMS utilizes a
table where the headers are used as column names and the rows contain the corresponding
values.

ACID implementation. DBMSes do not use the atomicity, consistency, isolation and durability
(ACID) model for storing data. On the other hand, RDBMSes base the structure of their data on the
ACID model to ensure consistency.

Distributed databases. While an RDBMS offers complete support for distributed databases, a
DBMS will not provide support.
Features of relational database management systems

Elements of the relational database management system that overarch the basic relational
database are so intrinsic to operations that it is hard to dissociate the two in practice.

The most basic RDBMS functions are related to create, read, update and delete operations --
collectively known as CRUD. They form the foundation of a well-organized system that promotes
consistent treatment of data.

The RDBMS typically provides data dictionaries and metadata collections that are useful in data
handling. These programmatically support well-defined data structures and relationships. Data
storage management is a common capability of the RDBMS, and this has come to be defined by
data objects that range from binary large object -- or blob -- strings to stored procedures. Data
objects like this extend the scope of basic relational database operations and can be handled in a
variety of ways in different RDBMSes.

The most common means of data access for the RDBMS is SQL. Its main language components
comprise data manipulation language and data definition language statements. Extensions are
available for development efforts that pair SQL use with common programming languages, such
as the Common Business-Oriented Language (COBOL), Java and .NET.

RDBMSes use complex algorithms that support multiple concurrent user access to the database
while maintaining data integrity. Security management, which enforces policy-based access, is
yet another overlay service that the RDBMS provides for the basic database as it is used in
enterprise settings.

RDBMSes support the work of database administrators (DBAs) who must manage and monitor
database activity. Utilities help automate data loading and database backup

How RDBMS works

As mentioned before, an RDBMS will store data in the form of a table. Each system will have
varying numbers of tables with each table possessing its own unique primary key. The primary
key is then used to identify each table.
Within the table are rows and columns. The rows are known as records or horizontal entities; they
contain the information for the individual entry. The columns are known as vertical entities and
possess information about the specific field.

Before creating these tables, the RDBMS must check the following constraints:

Primary keys -- this identifies each row in the table. One table can only contain one primary key.
The key must be unique and without null values.

Foreign keys -- this is used to link two tables. The foreign key is kept in one table and refers to the
primary key associated with another table.

Not null -- this ensures that every column does not have a null value, such as an empty cell.

Check -- this confirms that each entry in a column or row satisfies a precise condition and that
every column holds unique data.

Data integrity -- the integrity of the data must be confirmed before the data is created

Advantages of relational database management system

The use of an RDBMS can be beneficial to most organizations; the systematic view of raw data
helps companies better understand and execute the information while enhancing the decision-
making process. The use of tables to store data also improves the security of information stored
in the databases. Users are able to customize access and set barriers to limit the content that is
made available. This feature makes the RDBMS particularly useful to companies in which the
manager decides what data is provided to employees and customers.

Furthermore, RDBMSes make it easy to add new data to the system or alter existing tables while
ensuring consistency with the previously available content.

Other advantages of the RDBMS include:

Flexibility -- updating data is more efficient since the changes only need to be made in one place.

Maintenance -- database administrators can easily maintain, control and update data in the
database. Backups also become easier since automation tools included in the RDBMS automate
these tasks.

Data structure -- the table format used in RDBMSes is easy to understand and provides an
organized and structural manner through which entries are matched by firing queries.
Uses of RDBMS

Relational database management systems are frequently used in disciplines such as


manufacturing, human resources and banking. The system is also useful for airlines that need to
store ticket service and passenger documentation information as well as universities maintaining
student databases.

Some examples of specific systems that use RDBMS include IBM, Oracle, MySQL, Microsoft
SQLServer .

ER MODEL

An Entity–relationship model (ER model) describes the structure of a database with the help of a
diagram, which is known as Entity Relationship Diagram (ER Diagram). An ER model is a design
or blueprint of a database that can later be implemented as a database. The main components of
E-R model are: entity set and relationship set.

What is an Entity Relationship Diagram (ER Diagram)?

An ER diagram shows the relationship among entity sets. An entity set is a group of similar
entities and these entities can have attributes. In terms of DBMS, an entity is a table or attribute of
a table in database, so by showing relationship among tables and their attributes, ER diagram
shows the complete logical structure of a database. Lets have a look at a simple ER diagram to
understand this concept.

A simple ER Diagram:

E-R Diagram

In the following diagram we have two entities Student and College and their relationship. The
relationship between Student and College is many to one as a college can have many students
however a student cannot study in multiple colleges at the same time. Student entity has
attributes such as Stu_Id, Stu_Name & Stu_Addr and College entity has attributes such as Col_ID
& Col_Name.
Rectangle: Represents Entity sets.

Ellipses: Attributes

Diamonds: Relationship Set

Lines: They link attributes to Entity Sets and Entity sets to Relationship Set

Double Ellipses: Multivalued Attributes

Dashed Ellipses: Derived Attributes

Double Rectangles: Weak Entity Sets

Double Lines: Total participation of an entity in a relationship set

Components of a ER Diagram

ER Diagram Components

As shown in the above diagram, an ER diagram has three main components:

1. Entity

2. Attribute

3. Relationship

1. Entity

An entity is an object or component of data. An entity is represented as rectangle in an ER


diagram.

For example: In the following ER diagram we have two entities Student and College and these two
entities have many to one relationship as many students study in a single college.
Weak Entity:

An entity that cannot be uniquely identified by its own attributes and relies on the relationship
with other entity is called weak entity. The weak entity is represented by a double rectangle. For
example – a bank account cannot be uniquely identified without knowing the bank to which the
account belongs, so bank account is a weak entity.

2. Attribute

An attribute describes the property of an entity. An attribute is represented as Oval in an ER


diagram. There are four types of attributes:

1. Key attribute

2. Composite attribute

3. Multivalued attribute

4. Derived attribute

1. Key attribute:

ER diagram key attribute


A key attribute can uniquely identify an entity from an entity set. For example, student roll number
can uniquely identify a student from a set of students. Key attribute is represented by oval same
as other attributes however the text of key attribute is underlined.

2. Composite attribute:

ER diagram composite attribute

An attribute that is a combination of other attributes is known as composite attribute. For


example, In student entity, the student address is a composite attribute as an address is
composed of other attributes such as pin code, state, country.

3. Multivalued attribute:

An attribute that can hold multiple values is known as multivalued attribute. It is represented with
double ovals in an ER Diagram. For example – A person can have more than one phone numbers
so the phone number attribute is multivalued.

4. Derived attribute:

A derived attribute is one whose value is dynamic and derived from another attribute. It is
represented by dashed oval in an ER Diagram. For example – Person age is a derived attribute as
it changes over time and can be derived from another attribute (Date of birth).

3. Relationship
A relationship is represented by diamond shape in ER diagram, it shows the relationship among
entities. There are four types of relationships:

1. One to One

2. One to Many

3. Many to One

4. Many to Many

1. One to One Relationship

When a single instance of an entity is associated with a single instance of another entity then it is
called one to one relationship. For example, a person has only one passport and a passport is
given to one person.

2. One to Many Relationship

When a single instance of an entity is associated with more than one instances of another entity
then it is called one to many relationship. For example – a customer can place many orders but a
order cannot be placed by many customers.

3. Many to One Relationship

When more than one instances of an entity is associated with a single instance of another entity
then it is called many to one relationship. For example – many students can study in a single
college but a student cannot study in many colleges at the same time.
4. Many to Many Relationship

When more than one instances of an entity is associated with more than one instances of another
entity then it is called many to many relationship. For example, a can be assigned to many
projects and a project can be assigned to many students

NORMALIZATION

Normalization is the process of minimizing redundancy from a relation or set of relations.


Redundancy in relation may cause insertion, deletion, and update anomalies. So, it helps to
minimize the redundancy in relations. Normal forms are used to eliminate or reduce redundancy
in database tables.

1. First Normal Form –

If a relation contain composite or multi-valued attribute, it violates first normal form or a relation is
in first normal form if it does not contain any composite or multi-valued attribute. A relation is in
first normal form if every attribute in that relation is singled valued attribute.

Example 1 – Relation STUDENT in table 1 is not in 1NF because of multi-valued attribute


STUD_PHONE. Its decomposition into 1NF has been shown in table 2.

Example 2 –

ID Name Courses

------------------

1 A c1, c2

2 E c3

3 M C2, c3

In the above table Course is a multi-valued attribute so it is not in 1NF.


Below Table is in 1NF as there is no multi-valued attribute

ID Name Course

------------------

1 A c1

1 A c2

2 E c3

3 M c2

3 M c3

2. Second Normal Form –

To be in second normal form, a relation must be in first normal form and relation must not contain
any partial dependency. A relation is in 2NF if it has No Partial Dependency, i.e., no non-prime
attribute (attributes which are not part of any candidate key) is dependent on any proper subset of
any candidate key of the table.

Partial Dependency – If the proper subset of candidate key determines non-prime attribute, it is
called partial dependency.

Example 1 – Consider table-3 as following below.

STUD_NO COURSE_NO COURSE_FEE

1 C1 1000

2 C2 1500

1 C4 2000

4 C3 1000

4 C1 1000

2 C5 2000

{Note that, there are many courses having the same course fee. }
Here,

COURSE_FEE cannot alone decide the value of COURSE_NO or STUD_NO;

COURSE_FEE together with STUD_NO cannot decide the value of COURSE_NO;

COURSE_FEE together with COURSE_NO cannot decide the value of STUD_NO;

Hence,

COURSE_FEE would be a non-prime attribute, as it does not belong to the one only candidate key
{STUD_NO, COURSE_NO} ;

But, COURSE_NO -> COURSE_FEE, i.e., COURSE_FEE is dependent on COURSE_NO, which is a


proper subset of the candidate key. Non-prime attribute COURSE_FEE is dependent on a proper
subset of the candidate key, which is a partial dependency and so this relation is not in 2NF.

To convert the above relation to 2NF,

we need to split the table into two tables such as :

Table 1: STUD_NO, COURSE_NO

Table 2: COURSE_NO, COURSE_FEE

Table 1 Table 2

STUD_NO COURSE_NO COURSE_NO COURSE_FEE

1 C1 C1 1000

2 C2 C2 1500

1 C4 C3 1000

4 C3 C4 2000

4 C1 C5 2000

2 C5

NOTE: 2NF tries to reduce the redundant data getting stored in memory. For instance, if there are
100 students taking C1 course, we don’t need to store its Fee as 1000 for all the 100 records,
instead, once we can store it in the second table as the course fee for C1 is 1000.
Example 2 – Consider following functional dependencies in relation R (A, B , C, D )

AB -> C [A and B together determine C]

BC -> D [B and C together determine D]

In the above relation, AB is the only candidate key and there is no partial dependency, i.e., any
proper subset of AB doesn’t determine any non-prime attribute.

3. Third Normal Form –

A relation is in third normal form, if there is no transitive dependency for non-prime attributes as
well as it is in second normal form.

A relation is in 3NF if at least one of the following condition holds in every non-trivial function
dependency X –> Y

X is a super key.

Y is a prime attribute (each element of Y is part of some candidate key).

image5

Transitive dependency – If A->B and B->C are two FDs then A->C is called transitive dependency.

Example 1 – In relation STUDENT given in Table 4,

FD set: {STUD_NO -> STUD_NAME, STUD_NO -> STUD_STATE, STUD_STATE ->


STUD_COUNTRY, STUD_NO -> STUD_AGE}

Candidate Key: {STUD_NO}

For this relation in table 4, STUD_NO -> STUD_STATE and STUD_STATE -> STUD_COUNTRY are
true. So STUD_COUNTRY is transitively dependent on STUD_NO. It violates the third normal form.
To convert it in third normal form, we will decompose the relation STUDENT (STUD_NO,
STUD_NAME, STUD_PHONE, STUD_STATE, STUD_COUNTRY_STUD_AGE) as:

STUDENT (STUD_NO, STUD_NAME, STUD_PHONE, STUD_STATE, STUD_AGE)

STATE_COUNTRY (STATE, COUNTRY)

Example 2 – Consider relation R(A, B, C, D, E)


A -> BC,

CD -> E,

B -> D,

E -> A

All possible candidate keys in above relation are {A, E, CD, BC} All attributes are on right sides of
all functional dependencies are prime.

What is cybercrime?

Cybercrime is any criminal activity that involves a computer, networked device or a network.

Some specific types of cybercrimes include the following:

Cyberextortion:A crime involving an attack or threat of an attack coupled with a demand for
money to stop the attack. One form of cyberextortion is the ransomware attack. Here, the attacker
gains access to an organization's systems and encrypts its documents and files -- anything of
potential value -- making the data inaccessible until a ransom is paid. Usually, this is in some form
of cryptocurrency, such as bitcoin.

Cryptojacking:An attack that uses scripts to mine cryptocurrencies within browsers without the
user's consent. Cryptojacking attacks may involve loading cryptocurrency mining software to the
victim's system. However, many attacks depend on JavaScript code that does in-browser mining
if the user's browser has a tab or window open on the malicious site. No malware needs to be
installed as loading the affected page executes the in-browser mining code.

Identity theft:An attack that occurs when an individual accesses a computer to glean a user's
personal information, which they then use to steal that person's identity or access their valuable
accounts, such as banking and credit cards. Cybercriminals buy and sell identity information on
darknet markets, offering financial accounts, as well as other types of accounts, like video
streaming services, webmail, video and audio streaming, online auctions and more. Personal
health information is another frequent target for identity thieves.

Credit card fraud: An attack that occurs when hackers infiltrate retailers' systems to get the credit
card and/or banking information of their customers. Stolen payment cards can be bought and sold
in bulk on darknet markets, where hacking groups that have stolen mass quantities of credit cards
profit by selling to lower-level cybercriminals who profit through credit card fraud against
individual accounts.

Cyberespionage: A crime involving a cybercriminal who hacks into systems or networks to gain
access to confidential information held by a government or other organization. Attacks may be
motivated by profit or by ideology. Cyberespionage activities can include every type of
cyberattack to gather, modify or destroy data, as well as using network-connected devices, like
webcams or closed-circuit TV (CCTV) cameras, to spy on a targeted individual or groups and
monitoring communications, including emails, text messages and instant messages.
Software piracy: An attack that involves the unlawful copying, distribution and use of software
programs with the intention of commercial or personal use. Trademark violations, copyright
infringements and patent violations are often associated with this type of cybercrime

Cyber crimes with IPC implications

Section 292 of IPC: Although this Section was drafted to deal with the sale of obscene material, it
has evolved in the current digital era to be concerned with various cybercrimes. The publication
and transmission of obscene material or sexually explicit act or exploit acts containing children,
etc which are in electronic form are also governed by this section. Though the crimes mentioned
above seem to be alike, they are recognized as different crimes by the IT Act and IPC. The
punishment imposed upon the commission of such acts is imprisonment and fine up to 2 years
and Rs. 2000. If any of the aforementioned crimes are committed for the second time, the
imprisonment could be up to 5 years and the fine could be imposed up to Rs. 5000.

Section 354C of IPC: The cybercrime dealt with under this provision is capturing or publication of
a picture of private parts or acts of a woman without such person’s consent. This section
exclusively deals with the crime of ‘voyeurism’ which also recognizes watching such acts of a
woman as a crime. If the essentials of this Section (such as gender) are not satisfied, Section 292
of IPC and Section 66E of IT Act, 2000 is broad enough to take the offenses of a similar kind into
consideration. The punishment includes 1 to 3 years of imprisonment for first-time offenders and
3 to 7 years for second-time offenders.

Section 354D of IPC: This section describes and punishes ‘stalking’ including both physical and
cyberstalking. If the woman is being monitored through electronic communication, internet, or
email or is being bothered by a person to interact or contact despite her disinterest, it amounts to
cyber-stalking. The latter part of the Section states the punishment for this offense as
imprisonment extending up to 3 years for the first time and 5 years for the second time along with
a fine imposed in both the instances. In the case of Kalandi Charan Lenka v. The State of Odisha,
the victim received certain obscene messages from an unknown number which are damaging her
character. Moreover, emails were sent and the fake Facebook account was created by the accused
which contained morphed pictures of the victim. Hence, the accused was found prima facie guilty
for cyberstalking by the High Court under various provisions of IT Act and Section 354D of IPC

Section 379 of IPC: If a mobile phone, the data from that mobile or the computer hardware is
stolen, Section 379 comes into the picture and the punishment for such crime can go up to 3
years of imprisonment or fine or both. But the attention must be given to the fact that these
provisions cannot be applied in case the special law i.e IT Act, 2000 provisions are attracted. In
this regard, in the case of Gagan Harsh Sharma v. The State of Maharashtra, one of the employers
found that the software and data were stolen and someone has breached the computers and gave
access to sensitive information to the employees. The employer gave information to the police
and they filed a case under Section 379, 408, and Section 420 of IPC and various other IT Act
provisions. The question in front of the court is whether the police can file a case under IPC or
not. The court decided that the case cannot be filed based on the IPC provisions as the IT Act has
an overriding effect.

Section 411 of IPC: This deals with a crime that follows the offenses committed and punished
under Section 379. If anyone receives a stolen mobile phone, computer, or data from the same,
they will be punished in accordance with Section 411 of IPC. It is not necessary that the thief must
possess the material. Even if it is held by a third party knowing it to be others, this provision will
be attracted. The punishment can be imposed in the form of imprisonment which can be extended
up to 3 years or fine or both.

Section 419 and Section 420 of IPC: These are related provisions as they deal with frauds. The
crimes of password theft for the purpose of meeting fraudulent objectives or the creation of
bogus websites and commission of cyber frauds are certain crimes that are extensively dealt with
by these two sections of IPC. On the other hand, email phishing by assuming someone’s identity
demanding password is exclusively concerned with Section 419 of IPC. The punishments under
these provisions are different based upon the gravity of the committed cybercrime. Section 419
carries a punishment up to 3 years of imprisonment or fine and Section 420 carries up to 7 years
of imprisonment or fine.

Section 465 of IPC: In the usual scenario, the punishment for forgery is dealt with in this
provision. In cyberspace, the offenses like email spoofing and preparation of false documents are
dealt with and punished under this Section which imbibes the imprisonment reaching up to 2
years or fine or both. In the case of Anil Kumar Srivastava v. Addl Director, MHFW, the petitioner
electronically forged signature of AD and later filed a case making false allegations about the
same person. The Court held that the petitioner was liable under Section 465 as well as under
Section 471 of IPC as the petitioner also tried to use it as a genuine document.

Section 468 of IPC: If the offenses of email spoofing or the online forgery are committed for the
purpose of committing other serious offenses i.e cheating, Section 468 comes into the picture
which contains the punishment of seven years of imprisonment or fine or both.

Section 469 of IPC: If the forgery is committed by anyone solely for the purpose of disreputing a
particular person or knowing that such forgery harms the reputation of a person, either in the
form of a physical document or through online, electronic forms, he/she can be imposed with the
imprisonment up to three years as well as fine.

Section 500 of IPC: This provision penalizes the defamation of any person. With respect to
cybercrimes, sending any kind of defamatory content or abusive messages through email will be
attracted by Section 500 of IPC. The imprisonment carried with this Section extends up to 2 years
along with fine.

Section 504 of IPC: If anyone threatens, insults, or tries to provoke another person with the
intention of effecting peace through email or any other electronic form, it amounts to an offense
under Section 504 of IPC. The punishment for this offense extends up to 2 years of imprisonment
or fine or both.

Section 506 of IPC: If a person tries to criminally intimidate another person either physically or
through electronic means with respect to the life of a person, property destruction through fire or
chastity of a woman, it will amount to an offense under Section 506 of IPC and punishment of
imprisonment where the maximum period is extended up to seven years or fine or both.
Cyber Law (IT Law) in India

Last Updated : 26 Sep, 2021

Cyber Law also called IT Law is the law regarding Information-technology including computers
and internet. It is related to legal informatics and supervises the digital circulation of information,
software, information security and e-commerce

According to Ministry of Electronic and Information Technology, Government of India :

Cyber Laws yields legal recognition to electronic documents and a structure to support e-filing
and e-commerce transactions and also provides a legal structure to reduce, check cyber crimes.

Importance of Cyber Law:

It covers all transaction over internet.

It keeps eyes on all activities over internet.

It touches every action and every reaction in cyberspace.

Area of Cyber Law:

Cyber laws contain different types of purposes. Some laws create rules for how individuals and
companies may use computers and the internet while some laws protect people from becoming
the victims of crime through unscrupulous activities on the internet. The major areas of cyber law
include:

Fraud:

Consumers depend on cyber laws to protect them from online fraud. Laws are made to prevent
identity theft, credit card theft and other financial crimes that happen online. A person who
commits identity theft may face confederate or state criminal charges. They might also encounter
a civil action brought by a victim. Cyber lawyers work to both defend and prosecute against
allegations of fraud using the internet.

Copyright:

The internet has made copyright violations easier. In early days of online communication,
copyright violations was too easy. Both companies and individuals need lawyers to bring actions
to impose copyright protections. Copyright violation is an area of cyber law that protects the
rights of individuals and companies to profit from their own creative works.

Defamation:

Several personnel use the internet to speak their mind. When people use the internet to say things
that are not true, it can cross the line into defamation. Defamation laws are civil laws that save
individuals from fake public statements that can harm a business or someone’s personal
reputation. When people use the internet to make statements that violate civil laws, that is called
Defamation law.

Harassment and Stalking:

Sometimes online statements can violate criminal laws that forbid harassment and stalking. When
a person makes threatening statements again and again about someone else online, there is
violation of both civil and criminal laws. Cyber lawyers both prosecute and defend people when
stalking occurs using the internet and other forms of electronic communication.

Freedom of Speech:

Freedom of speech is an important area of cyber law. Even though cyber laws forbid certain
behaviors online, freedom of speech laws also allow people to speak their minds. Cyber lawyers
must advise their clients on the limits of free speech including laws that prohibit obscenity. Cyber
lawyers may also defend their clients when there is a debate about whether their actions consist
of permissible free speech.

Trade Secrets:

Companies doing businesses online often depend on cyber laws to protect their trade secrets. For
example, Google and other online search engines spend lots of time developing the algorithms
that produce search results. They also spend a great deal of time developing other features like
maps, intelligent assistance and flight search services to name a few. Cyber laws help these
companies to take legal action as necessary in order to protect their trade secrets.

Contracts and Employment Law:

Every time you click a button that says you agree to the terms and conditions of using a website,
you have used cyber law. There are terms and conditions for every website that are somehow
related to privacy concerns.

Advantages of Cyber Law:


Organizations are now able to carry out e-commerce using the legal infrastructure provided by the
Act.

Digital signatures have been given legal validity and sanction in the Act.

It has opened the doors for the entry of corporate companies for issuing Digital Signatures
Certificates in the business of being Certifying Authorities.

It allows Government to issue notification on the web thus heralding e-governance.

It gives authority to the companies or organizations to file any form, application or any other
document with any office, authority, body or agency owned or controlled by the suitable
Government in e-form by means of such e-form as may be prescribed by the suitable Government.

Information Technology Act, 2000 (India)

The Information Technology Act, 2000 also Known as an IT Act is an act proposed by the Indian
Parliament reported on 17th October 2000. This Information Technology Act is based on the
United Nations Model law on Electronic Commerce 1996 (UNCITRAL Model) which was suggested
by the General Assembly of United Nations by a resolution dated on 30th January, 1997. It is the
most important law in India dealing with Cybercrime and E-Commerce.

The main objective of this act is to carry lawful and trustworthy electronic, digital and online
transactions and alleviate or reduce cybercrimes. The IT Act has 13 chapters and 90 sections. The
last four sections that starts from ‘section 91 – section 94’, deals with the revisions to the Indian
Penal Code 1860.

The IT Act, 2000 has two schedules:

First Schedule –

Deals with documents to which the Act shall not apply.

Second Schedule –
Deals with electronic signature or electronic authentication method.

The offences and the punishments in IT Act 2000 :

The offences and the punishments that falls under the IT Act, 2000 are as follows :-

Tampering with the computer source documents.

Directions of Controller to a subscriber to extend facilities to decrypt information.

Publishing of information which is obscene in electronic form.

Penalty for breach of confidentiality and privacy.

Hacking for malicious purposes.

Penalty for publishing Digital Signature Certificate false in certain particulars.

Penalty for misrepresentation.

Confiscation.

Power to investigate offences.

Protected System.

Penalties for confiscation not to interfere with other punishments.

Act to apply for offence or contravention committed outside India.

Publication for fraud purposes.

Power of Controller to give directions.

Sections and Punishments under Information Technology Act, 2000 are as follows :

SECTION PUNISHMENT

Section 43 This section of IT Act, 2000 states that any act of destroying, altering or stealing
computer system/network or deleting data with malicious intentions without authorization from
owner of the computer is liable for the payment to be made to owner as compensation for
damages.

Section 43A This section of IT Act, 2000 states that any corporate body dealing with sensitive
information that fails to implement reasonable security practices causing loss of other person will
also liable as convict for compensation to the affected party.

Section 66 Hacking of a Computer System with malicious intentions like fraud will be
punished with 3 years imprisonment or the fine of Rs.5,00,000 or both.
Section 66 B, C, D Fraud or dishonesty using or transmitting information or identity theft is
punishable with 3 years imprisonment or Rs. 1,00,000 fine or both.

Section 66 E This Section is for Violation of privacy by transmitting image or private area is
punishable with 3 years imprisonment or 2,00,000 fine or both.

Section 66 F This Section is on Cyber Terrorism affecting unity, integrity, security, sovereignty
of India through digital medium is liable for life imprisonment.

You might also like