Introduction To Database and Database Management System (DBMS)

Introduction To Database and Database Management System (DBMS)


Data is commonly defined as raw facts or observation, typically about physical phenomena or business transactions. Data can be in any form: Numerical (mathematically transformable), Textual (more correctly, alphanumerical), Image: fixed (reflection, photograph) pictures, Video: moving pictures and Sound.


Information is defined as refined or processed data that has been transformed into meaningful and useful form for specific users. For example, after processing the marks obtained by student it transformed into information, which is meaningful and from which we can decide which student stood first, second and so forth. Information comes from data and takes the form of table, graphs, diagrams etc.


A database is a collection of related data stored in a storage device. By data, we mean known facts that can be recorded and that have implicit meaning. For e.g. consider the name, telephone numbers and addresses of people you know. You may have recorded this data in an indexed address book, or you may have stored it on hard disk drives, using Microsoft Access or excel. This is a collection of related data with an implicit meaning and hence is a database.
A database is designed, built, and populated with data for specific purpose.
Mini-world: Some part of the real world about which data is stored in a database.
For example, student grades and transcripts at a university.

Database Management System (DBMS)

  • A Database Management System (DBMS) is a collection of interrelated data and the set of programs to access those data. The collection of data usually referred to as the database that contains information about a particular enterprise.
  • The primary goal of DBMS is to provide the way to store and retrieve database information in conveniently and efficiently
  • Database Management System (DBMS) is a software package/ system to facilitate the creation and maintenance of a computerized database.
  • Database System: The DBMS software together with the data itself. Sometimes, the applications are also included

Importance of DBMS

  • Makes data management more efficient and effective
  • Query language allows quick answers to ad hoc queries
  • Provides better access to more and better-managed data
  • Promotes integrated view of organization ‘s operations
  • Reduces the probability of inconsistent data

Purpose or goals of Database Systems

  • In the early days, database applications were built directly on top of file systems.
  • The purpose of Database system is to overcome all the drawbacks of traditional file processing system
  • The major purpose of a database system is to provide users with an abstract view of the data. That is the system hides certain details of how the data are stored and maintained.

Database Applications

DBMS is applicable for the following fields
  • Banking: For customer information and all transactions
  • Airlines: For reservations and schedules information
  • Universities: For the student information, course registration and grades
  • Credit and transaction: For purchase credit cards and generates monthly statement
  • Telecommunication: Keeping records of all the telephone calls, generating monthly bills etc.
  • Finance: For storing financial information
  • Sales: For customers, products and purchases information
  • Manufacturing: For tacking production, inventory, orders, supply chain management
  • Human resources: For storing the information about employee records, salaries, tax deductions

Databases touch all aspects of our lives to store and manage information efficient manner

Simplified Database System Organization

The following diagram shows the simplified structure of the database system:
Simplified Database System Organization

Simplified Database System Organization

Main Characteristics of the Database Approach
  • Self-describing nature of a database system: A DBMS catalog stores the description of the database. The description is called meta-data). This allows the DBMS software to work with different databases.
  • Insulation between programs and data: Called program-data independence. Allows changing data storage structures and operations without having to change the DBMS access programs.
  • Data Abstraction: A data model is used to hide storage details and present the users with a conceptual view of the database.
  • Support of multiple views of the data: Each user may see a different view of the database, which describes only the data of interest to that user.
  • Sharing of data and multiuser transaction processing: allowing a set of concurrent users to retrieve and to update the database. Concurrency control within the DBMS guarantees that each transaction is correctly executed or completely aborted. OLTP (Online Transaction Processing) is a major part of database applications.

Typical DBMS Functionality

  • Define a database: in terms of data types, structures and constraints
  • Construct or Load the Database on a secondary storage medium
  • Manipulating the database: querying, generating reports, insertions, deletions and modifications to its content
  • Concurrent Processing and Sharing by a set of users and programs – yet, keeping all data valid and consistent

Other features:

  • Protection or Security measures to prevent unauthorized access
  • Active‖ processing to take internal actions on data
  • Presentation and Visualization of data

Database system Vs. File System

Drawbacks of using file systems to store data:

Data redundancy and inconsistency

  • Multiple file formats, duplication of information in different files lead to data redundancy.
  • The various copies of the same data may no longer agree and the system will be inconsistent.

Difficulty in accessing data
  • Need to write a new program to carry out each new task
  • Conventional file-processing environments do not allow needed data to be retrieved in convenient and efficient manner.

Data isolation

  • Data are scattered in various files and file may be in different formats and writing new application programs to retrieve the appropriate data is difficult

Integrity problems

  • Integrity constraints (e.g. account balance > 0) can be applied easily in database system.
  • In file system, it is hard to add new constraints or change existing ones

Atomicity of updates

  • Failures may leave database in an inconsistent state with partial updates carried out. The file system cannot handle atomicity efficiently.
  • Example: Transfer of funds from one account to another should either complete or not happen at all

Concurrent access by multiple users

  • Concurrent accessed needed for performance
  • Uncontrolled concurrent accesses can lead to inconsistencies
  • Example: Two people reading a balance and updating it at the same time

Security problems

  • In file system it is difficult to provide security mechanism to access the data.
  • Not every user of the database system should be able to access all the data. Database systems offer solutions to all the above problems

Advantages of Using a DBMs

  • Controlling Redundancy in data storage and in development and maintenance
  • Extracting Information from Data
  • Restricting Unauthorized Access (security and authorization)
  • Providing Persistent Storage for Program Objects and Data Structures.
  • Data Independence
  • Providing Multiple User Interfaces to access data
  • Representing Complex Relationships among data.
  • Enforcing Integrity Constraints
  • Providing Backup and Recovery
  • Centralized control by the DBA
  • Sharing of Data
  • Enforcing Standards.
  • Reduced Application Development Time.
  • Flexibility/ Expandability
  • Reduce applications development time
  • Availability of Up-to-date Information.
  • Economies of Scale.

When not to use a DBMS

  • High initial investment in hardware, software, training and possible need for additional hardware.
  • Overhead for providing generality, security, recovery, integrity, and concurrency control.
  • If the database and applications are simple, well defined, and not expected to change.
  • If there are stringent real-time requirements that may not be met because of DBMS overhead.
  • If access to data by multiple users is not required.