Skip to main content

What is Database Management System?


Article No: 2

HISTORICAL ROOTS: FILES AND FILE SYSTEMS

In the recent past, a manager of almost any small organization was able to keep track of necessary data by using a manual file system. Such a file system was traditionally composed of a collection of file folders, each properly tagged and kept in a filling cabinet. Organization of the data within the file folders was identified by the data’s expected use. Ideally, the contents of each file folder were logically related. For example, a file folder in a doctor’s office might contain patient data, one folder for each patient.

As long as a data collection was relatively small and an organization’s managers had few reporting requirements, the manual system served its role well as a data repository. However, as organization grew and as reporting requirements became more complex, keeping track of data in a manual file system became more difficult. In fact, finding and using data in growing collections of file folders turned into such a time-consuming and cumbersome task that it became unlikely that such data could generate useful information. Consider just these few questions to which a retail business owner might want answers:

·         What products sold well during last year?
·         Did sales show trends that could change the inventory requirements?

Unfortunately, report generation from a manual file system can be slow and cumbersome. Consequently, necessity called for the design of a computer-based system that would track data and produce required reports.

WHAT IS DATABASE MANAGEMENT SYSTEM?

An organization must have accurate and reliable data for effective decision making. To this end, the organization maintains records on the various facets (components) of its operations by building appropriate models of the diverse classes of objects of interest. These models capture the essential properties of the objects and record relationships among them. Such related data is called database. A database system is an integrated collection of related files, along with details of the interpretation of the data contained therein.

A database management system (DBMS) is a collection of programs that manages the database structure and the data contained in the database. The objective of the DBMS is to provide a convenient and effective method of defining, storing and retrieving the information contained in the database. The DBMS interfaces with application programs, so that the data contained in a database can be used by multiple applications and users. In addition the DBMS exerts centralized control of the database, prevents fraudulent or unauthorized users from accessing the data, and ensures the privacy of data.





FIGURE 1.1 Interaction between the end user and the database


DBMS ADVANTAGES

Having a DBMS between the end user’s applications and the database offers some important advantages. First the DBMS enables the data in the database to be shared among multiple applications or users. Second, the DBMS integrates the many different user’s views of the data into a single all-encompassing data repository and many more.

Improved Data Sharing

 The DBMS helps creates an environment in which end users have better access to more and better managed data. Such access makes it possible for end users to respond quickly to changes in their environment.

A database is designed as a shared corporate resource. Authorized internal and external users are granted permission to use the database, and each user (or group of users) is provided one or more user views to facilitate this use. A user view is a logical description of some portion of the database that is required by a user to perform some task. A user view is often a form or report that comprises (consist of) data from more than one table.

Better Data integration

Wider access to well-managed data promotes an integrated view of the organization’s operations and a clearer view of the big picture. It becomes much easier to see how actions in one segment affect other segments.

Minimized Data Inconsistency

Data inconsistency exists when different versions of the same data appear in different places. For example, data inconsistency exists when a company’s sales department stores a sales representative’s name “Amit Chaudhary” and the company’s personnel department stores that same person’s name as “Abhay Chaudhary”.

Increased end-user Productivity

 The availability of data, combined with the tools that transform data into usable information, empowers end users to make quick, informed decisions that can make the difference between success and failure in the global economy.
Improved Data Access

The DBMS makes it possible to produce quick answers to ad hoc queries. From a database perspective, a query is a specific request for data manipulation (for example, to read or update the data) issued to the DBMS. Simply put, a query is a question and an ad hoc query is a spur-of-moment question.

With a relational database, end users without programming experience can often retrieve and display data, even when it crosses traditional departmental boundaries. For example, a student can display information about result at BPCCS College with the following query:

SELECT *
FROM RESULT_SET
WHERE ROLL_NO = “2008_004”;

The language used in this query is called Structured Query Language, or SQL.

Improved Decision Making

Better-managed data and improved data access make it possible to generate better quality information, on which better decisions are based.

Program-data Independence

The separation of data descriptions (metadata) from the application programs that use the data is called data independence. With the database approach, data descriptions are stored in a central location called the repository. This property of database systems allows an organization’s data to change and evolve (within limits) without changing the application programs that process the data.

Security

Data is of vital importance to an organization and may be confidential. Such confidential data must not be accessed by unauthorized persons. The DBA who has the ultimate responsibility for the data in the DBMS can ensure that proper access procedures are followed, including proper authentication schemes for access to the DBMS and additional checks before permitting access to sensitive data. Different levels of security could be implemented for various types of data and operations. The enforcement of security could be datavalue dependent (e.g., a manager has access to the salary details of employees in his or her department only), as well as data-type dependent (but the manager cannot access the medical history of any employees, including those in his or her department).

DBMS DISADVANTAGES

A significant disadvantage of the DBMS system is cost. In addition to the cost of purchasing or developing the software, the hardware has to be upgraded to allow for the extensive programs and the work spaces required for their execution and storage. The processing overhead introduced by the DBMS to implement security, integrity, and sharing of the data causes a degradation of the response through-put times. An additional cost is that of migration from a traditionally separate application environment to an integrated one.

Resource Used:

1. Database Management System (By: Peter Rob)

Compiled By: Chaudhary Amit V.

Comments

Popular posts from this blog

Characteristics of a Good Programming Language

Till now there are many high level languages which are very popular, and there are others, which could not become so popular in-spite of being very powerful. There might be many reasons for the success of a language, but one obvious reason is the characteristics of the language. Several characteristics believed to be important with respect to making a programming language good are briefly discussed below. Simplicity A good programming language must be simple and easy to learn and use. For example, BASIC is liked by many programmers only because of its simplicity. Thus, a good programming language should provide a programmer with a clear, simple and unified set of concepts which can be easily grasped. It is also easy to develop and implement a compiler or an interpreter for a programming language that is simple. However, the power needed for the language should not be sacrificed for simplicity. The overall simplicity of a programming language strongly affects the readability of the pr...

Angular 4 and Firebase Authentication: Setup

If you have come to this article, it means you are keen to learn new technology and that too Firebase. I love Firebase because it provides all basic but important features of any web application. Take for example, authentication, which is cumbersome and risky if not implemented with utmost care. And when we have the integration of Angular and Firebase, it becomes a lot easier for a developer to build such crucial modules in less time with minimal efforts. In this article we will create a simple Angular application using Firebase. I am going ahead with the understanding that you know the benefits of Firebase and have little knowledge about it. There are plenty of posts out on the web if you are behind. Step 1: Install Angular CLI (if not installed). npm install -g angular-cli Step 2: Create new Angular 4 project. By default now angular CLI will create Angular 4 project so you need not fret. ng new firebase-authentication Step 3: Check whether the ne...

Switch-case, simple calculator . . .

11.      Write a program to perform some mathematic functions with the help of “switch-case” statement. #include<stdio.h> #include<conio.h> void main() { int a,b,ans; char c; clrscr(); printf("\ Enter a and b:"); scanf("%d%d",&a,&b); printf("\n Enter operator:"); fflush(stdin); scanf("%c",&c); switch(c) { case'+':ans=a+b;       break; case'-':ans=a-b;       break; case'*':ans=a*b;       break; case'/':ans=a/b;       break; } printf("\n ans %d",ans); getch(); } 12.      Print the Fibonacci series #include<stdio.h> #include<conio.h> void main() { int a=1,b=1,s=3,c,ch; clrscr(); printf("how many steps="); scanf("%d",&ch); printf("%5d%5d",a,b); for(s=3;s<=ch;s++) {       c=a+b;       printf("%5d",c);       a=b;    ...