31
Relational Database Management System (RDBMS)-II Lecture 1&2 Presented By: Ravinder Kamboj

Lecture 1&2(rdbms-ii)

Embed Size (px)

Citation preview

Relational Database Management System (RDBMS)-I MCA-304

Relational Database ManagementSystem (RDBMS)-II

Lecture 1&2Presented By: Ravinder Kamboj

ObjectiveObjective of this lecture is to make students be able to understand the basic concepts of database.To introduce the problems with traditional file system and advantages of database over file system.

IndexWhat is DBMS?Traditional method of data storageCharacteristics of file system Problems with Traditional approachWhat is database and DBMS?Advantages of DBMSDifference between file system and database

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 SystemCollege Management SystemInventory Control SystemHospital ManagementAirlinesTelecommunicationHRM

4

Traditional Methods File System:File 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 RedundancyData IsolationProgram/ Data DependenceAtomicity ProblemsConcurrent Access AnomaliesData Security

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.

11

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.

Atomicity ProblemsIf a failure occurs, the data to be restored to the consistent state.Example:A program transfers Rs 200 from account A to account B.If a system failure occurs during execution of program.It is possible that Rs 200 debited from account A but not credited to B.It is essential to database consistency that either both the credit and debit occur, or neither occur.Funds transfer must be atomic, it must happen in its entirety or not at all.It is difficulty to ensure atomicity in traditional file systems.

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/-

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.

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.

18

Where does the DBMS fit?

Programming Languages

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 others 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)StruefalseXfalseTrue

Locks

Schedule 1

Difference between file system and DBMS

Thank You