Relational database management system (rdbms) i

Post on 12-Nov-2014

6.714 views 2 download

Tags:

description

difference between file system and dbms

Transcript of Relational database management system (rdbms) i

Relational Database ManagementSystem (RDBMS)-I

File based approach vs

Database approach

Presented By:Ravinder Kamboj

ObjectiveObjective of this lecture is to make students

be able to understand the basic concepts of file system and database.

To introduce the problems with traditional file system and advantages of database over file system.

IndexWhat is file System?Characteristics of file systemTraditional method of data storage Problems with Traditional approachWhat is database and DBMS?Advantages of DBMSDifference between file system and database

File SystemFile system was an early attempt to

computerize the manual filing system.A file system is a method for storing and

organizing computer files and the data to make it easy to find and access.

File Systems may use a storage device such as a hard disk or CD-ROM.

Characteristics of File Processing System It is group of files storing data of an

organization.Each file is independent from one another.Each file is called flat file.Each file contained and processed information

for one specific function like accounting or inventory.

Files are designed by using application programs written in programming languages such as COBOL, C, C++, etc….

Flat fileA flat file is a file containing records that have no

structured interrelationship

Traditional Method of Data Storage

Problems: Traditional approachData SecurityData RedundancyData IsolationProgram/ Data DependenceConcurrent Access Anomalies

Data SecurityThe data as maintained in flat files is easily

accessible and therefore not secure.Example: the Customer_Transaction file has

details about the total available balance of all customers.

A customer wants information about his/her account balance.

In a file system it is difficult to give the customer access to only his/her data in the file.

Thus enforcing security constraints for entire file or for certain data items are difficult.

Data RedundancyOften the same information is duplicated in

two or more files.It may lead to inconsistency Assume the same data is repeated in two or

more files. If change is made to data in one file, it is required that change be made to the data in the other file as well.

If this is not done, it will lead to multiple different values for same data field.

Data IsolationData isolation means that all the related data

is not available in one file. Generally, the data scattered in various files,

and the files may be in different formats, therefore writing new application programs to retrieve the appropriate data is difficult.

Program/ Data DependenceAssume in a banking system there is need to find

out the names of all customers who live within a particular postal-code area.

But there is only a program to generate the list of all customers.

The bank officer has now two choices: either obtain the list of all customers and extract the needed information manually or ask a system programmer to write the necessary application program.

Both the alternatives are obviously unsatisfactory.

Concurrent Access AnomaliesMany systems allow multiple users to update the data

simultaneously. In such environment, interaction of concurrent updates may result in inconsistent data.

Example: Bank account A containing Rs. 6000/-. If two transactions of withdraw funds( Rs 500/- and Rs 1000/- respectively) from account about same time, result of the concurrent executions may leave the account in an incorrect state.

Program on the behalf of each withdrawal read the old balance, reduce amount and write result back.

If both two programs are concurrent they both may read the value Rs 6000/-.

Depending on which one writes the value last, the account may contain either Rs 5500/- or Rs 5000/-, rather than the correct value of Rs 4500/-

What is the solution?

 Database Approach

In order to remove all the above limitations of the File Based Approach, a new approach was required that must be more effective known as Database approach. 

A database is a computer based record keeping system whose over all purpose is to record and maintain information.

The database is a single, large repository of data, which can be used simultaneously by many departments and users.

 

The Database Management System (DBMS)

DBMS A database management system is the software system that allows users to define, create and maintain a database and provides controlled access to the data.

A database management system (DBMS) is basically a collection of programs that enables users to store, modify, and extract information from a database as per the requirements.

DBMS is an intermediate layer between programs and the data. Programs access the DBMS, which then accesses the data.

The following are main examples of database applications:

Banking System

College Management System

Inventory Control System

Hospital Management

Where does the DBMS fit?

Programming Languages4GL ( Database Query

Languages, Data Manipulation, analysis

and Reporting Languages)

Machine Language

Difference Between File and DBMS Operations

Advantages of DBMSControlling redundancyEnforces integrity constraintsBetter securityBetter flexibilityEffective data sharingEnables backup and recovery

Controlling RedundancyRedundant Data

Non-Redundant DatabaseIn case of centralized database, data can

be shared by number of applications and whole college can maintain its data with the following database:

Every application can access the information of other’s by joining on the basis of column ( Rollno )

Enforcing Integrity Constraints Integrity of data means that data in database is always

accurate.Integrity constraints are enforced on database.Example: Let us consider the case of college database and

suppose that college having only Btech, Mtech, MCA, MSc, BCA, BBA and Bcom. But if a user enters the class MS, then incorrect information must not be stored in database and must be prompted that this is an invalid entry. Integrity is to be enforced on class attribute.

In file system this constraint must be enforced an all the application separately.

In case of DBMS this integrity constraint is applied only once on the class field of the General Office.

How to enforce integrity?

Integrity rules:Entity Integrity rule: Primary key value should

not be null (Mandatory field)Referential Integrity: The values of foreign key

should match the primary key in parent table.

Solution to concurrency Anomaly S (Shared Lock) X (Exclusive Lock)

S true false

X false false

Locks

T1•Lock-X(B);•Read(B,b);•b:=b-50;•Write(B,b);•Unlock(B);•Lock-X(A);•Read(A,a);•a:=a+50;•Write(A,a)•Unlock(A);

T2•Lock-S(A);•Read(A,a);•Unlock(A);•Lock-S(B)•Read(B,b);•Unlock(B);•Display(a+b);

Schedule 1

T1•Lock-X(B);•Read(B,b);•b:=b-50;•Write(B,b)•Unlock(B)•Lock-X(A)•Read(A,a)•a:=a+50;•Write(A,a)•Unlock(A);

T2•Lock-S(A);•Read(A,a);•Unlock(A);•Lock-S(B)•Read(B,b);•Unlock(B);•Display(a+b);

Concurrency-control manager

•Grant-X(B,T1)•Grant-S(A,T2)•Grant-S(B,T2)•Grant-X(A,T2)

Difference between file system and DBMS

Thank You