Intro To DBMS
Intro To DBMS
Database is a
collection of data and Management System is a set of programs to store and
retrieve those data. Based on this we can define DBMS like this: DBMS is a
collection of inter-related data and set of programs to store & access those data
in an easy and effective manner.
Disadvantages of DBMS:
DBMS Architecture
The architecture of DBMS depends on the computer system on which it runs. For
example, in a client-server DBMS architecture, the database systems at server
machine can run several requests made by client machine. We will understand
this communication with the help of diagrams.
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
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.
The user doesn’t need to know the database schema details such as data
structure, table definition etc. user is only concerned about data which is what
returned back to the view level after it has been fetched from database (present
at the internal level).
External level is the “top level” of the Three Level DBMS Architecture.
2. Conceptual level
It is also called logical level. The whole design of the database such as
relationship among data, schema of data etc. are described in this level.
3. Internal level
This level is also known as physical level. This level describes how the data is
actually stored in the storage devices. This level is also responsible for allocating
space to the data. This is the lowest level of the architecture.
Logical level: This is the middle level of 3-level data abstraction architecture. It
describes what data is stored in database.
View level: Highest level of data abstraction. This level describes the user
interaction with database system.
At view level, user just interact with system with the help of GUI and enter the
details at the screen, they are not aware of how the data is stored and what data
is stored; such details are hidden from them.
Object based logical Models – Describe data at the conceptual and view levels.
1. E-R Model
2. Object oriented Model
Record based logical Models – Like Object based model, they also describe
data at the conceptual and view levels. These models specify logical structure of
database with records, fields and attributes.
1. Relational Model
2. Hierarchical Model
3. Network Model – Network Model is same as hierarchical model except that
it has graph-like structure rather than a tree-based structure. Unlike
hierarchical model, this model allows each record to have more than one
parent record.
Physical Data Models – These models describe data at the lowest level of
abstraction.
Entity Relationship Diagram – ER Diagram in
DBMS
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.
A simple ER 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.
Here are the geometric shapes and their meaning in an E-R Diagram. We will
discuss these terms in detail in the next section(Components of a ER Diagram)
of this guide so don’t worry too much about these terms now, just go through
them once.
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. We will read more about relationships later, for now
focus on entities.
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 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:
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:
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).
1. Complexity
OODBMS has the ability to represent the complex internal structure (of object)
with multilevel complexity.
2. Inheritance
Creating a new object from an existing object in such a way that new object
inherits all characteristics of an existing object.
3. Encapsulation
It is an data hiding concept in OOPL which binds the data and functions together
which can manipulate data and not visible to outside world.
4. Persistency
OODBMS allows to create persistent object (Object remains in memory even
after execution). This feature can automatically solve the problem of recovery
and concurrency.
Relational model in DBMS
In relational model, the data and relationships are represented by collection of
inter-related tables. Each table is a group of column and rows, where column
represents attribute of an entity and rows represents records.
Sample relationship Model: Student table with 3 columns and four records.
Table: Student
111 Ash sh 23
123 Saurav 22
169 Lester 24
234 Lou 26
Table: Course
234 Ajeet 28
Course Table:
Network model:
In the network model of database, there are no levels and a record can have
any number of owners and also can have ownership of several records.
Thus, the problem raised above in the sales order processing will not arise
in the network model.
As there is no defnite path defned for retrieval of data, the number of links
is very large and thus network databases are complex, slow and dificult to
implement. In view of the dificulty in implementation, network model is
used only when all other options are closed.
The typical example of a network database may be the employee and the
department he/she has worked or can work with in future. Figure 9.5 shows
the network model of data for an employee information system.