F - DataBase Chapter 1
F - DataBase Chapter 1
A database management system stores data in such a way that it becomes easier to retrieve,
manipulate, and produce information.
It is collection of programes that enables users to create and maintain database.
In the manual data handling approach, data storage and retrieval follows the
primitive/early and traditional way of data/information handling where cards and paper
are used for the purpose. Typing the data on paper and put in a file cabinet.
The data storage and retrieval will be performed using human labour. This approach
works well if the number of items to be stored is small.
Limitations of the Manual approach
Prone to error
Data loss: Due to damaged papers or unable to locate it.
Redundancy: Multiple copies of the same data within the organization.
Inconsistency: Modifications are not reflected on all multiple copies
Difficult to update, retrieve, integrate
You have the data but it is difficult to compile the information
Limited to small size information
Cross referencing is difficult
2. File based Approach
After the introduction of computer for data processing to the business community, the need to
use the device for data storage and processing increase.
File based data handling approaches were an early attempt to computerize the manual filing
system. There were, and still are, several computer applications with file based processing used
for the purpose of data handling.
It is a collection of application programs that performs services for the end users. In such
systems, every application program that provides service to end users defines and manages its
own data. Such systems have number of programs for each of the different applications in the
organization. And this approach is the decentralized computerized data handling method.
Limitations of the File Based approach
As business application become more complex and demanding more flexible and reliable data
handling methods, the shortcomings of the file based system became evident. These
shortcomings include, but not limited to:
Separation/Isolation of data
When data is isolated in separate files, it is difficult to access data that should be available. This
is because; there is no concept of relationship between files. Therefore, we need to create a
temporary file for the participating files.
Duplication of data (Redundancy)
This is concerning with storage of similar information in multiple files.
The following are some of the disadvantage of redundancy:
It costs time and money to enter the data
It takes up additional storage space (memory space)
Inconsistency: this is loss of data integrity. For instance, if modification in the child table
is unable to be reflected on the parent table.
Data Dependence
Changes to an existing structure are difficult to make. Example: change in the size of Student
Name (from 20 characters to 30 characters) requires a new program to convert student file to a
new format. The new program opens original student file, open a temporary file, read records
from original student file and write to the temporary file, delete the original student file and
finally rename the temporary file as student file.
Incompatible file formats
The structure of file is dependent on the application programs. Incompatibility of files makes
them difficult to process jointly. Example: consider two files with in the same enterprise but in
different departments, or in different branches: If the first file is constructed using COBOL and
the second file is written using C++, then there will be a problem of integrity
3. Database Approach
A database system is basically a computerized record keeping system. Users of the database can
perform a variety of operations. Such as:
Adding new data to empty file
Adding new data to existing file
Retrieving data from existing file
Modifying data to existing file
Deleting data from existing file
Searching for target information
The advantages of a database approach
Conflicting requirements can be balanced: knowing the overall requirements of the enterprise
the Database Administrator (DBA) can structure the system so as to provide an overall service
that is best for the enterprise. For example, a representation can be chosen for the data in storage
that gives fast access for the most important applications (possibly at the cost of poorer
performance for certain other applications).
Transaction support can be provided: basic demands of any transaction support systems are
implanted in a full scale DBMS.
Improved decision support: the database will provide information useful for decision making.
Less labor/work: unlike the other data handling methods, data maintenance will not demand
much resource.
Centralized information control: since relevant data in the organization will be stored at one
repository/storehouse, it can be controlled and managed at the central level.
Limitations and risk of Database Approach
Introduction of new professional and specialized personnel.
Complexity in designing and managing data
The cost and risk during conversion from the old to the new system
High cost to be incurred /earn to develop and maintain the system
Complex backup and recovery services from the users perspective
Reduced performance due to centralization and data independency
When failure occurs high impact on to the central system.
Query Language − DBMS is equipped with query language, which makes it more
efficient to retrieve and manipulate data. A user can apply as many and as different
filtering options as required to retrieve a set of data. Traditionally it was not possible
where file-processing system was used.
ACID Properties − DBMS follows the concepts of Atomicity, Consistency, Isolation,
and Durability (normally shortened as ACID). These concepts are applied on
transactions, which manipulate data in a database. ACID properties help the database
stay healthy in multi-transactional environments and in case of failure.
Multiuser and Concurrent Access − DBMS supports multi-user environment and
allows them to access and manipulate data in parallel. Though there are restrictions on
transactions when users attempt to handle the same data item, but users are always
unaware of them.
Multiple views − DBMS offers multiple views for different users. A user who is in the
Sales department will have a different view of database than a person working in the
Production department. This feature enables the users to have a concentrate view of the
database according to their requirements.
Security − Features like multiple views offer security to some extent where users are
unable to access data of other users and departments. DBMS offers methods to impose
constraints while entering data into the database and retrieving the same at a later stage.
DBMS offers many different levels of security features, which enables multiple users to
have different views with different features. For example, a user in the Sales department
cannot see the data that belongs to the Purchase department. Additionally, it can also be
managed how much data of the Sales department should be displayed to the user. Since
a DBMS is not saved on the disk as traditional file systems, it is very hard for miscreants
to break the code.
Database Administrator
Database Designer
Application Programmer and Systems Analyst
End Users
Authorizing access to the database by grants and revoke permissions to the users,
coordinating and monitoring its use
Managing backups and Recovery for repairing damage due to hardware and/or
software failures and for acquiring hardware and software resources as needed.
Security.
Software installation and Maintenance. A DBA often collaborates on the initial
installation and configuration of a new Oracle, SQL Server etc database.
Tuning the DBMS for best performance
DBA is also responsible for the evaluation, selection and implementation of
DBMS package.
In case of small organization the role of DBA is performed by a single person and in case
of large organizations there is a group of DBA's who share responsibilities.
2. Database Designers
They are responsible for identifying the data to be stored in the database and for choosing
appropriate structure to represent and store the data. It is the responsibility of database designers
to communicate with all prospective /possible of the database users in order to understand their
requirements so that they can create a design that meets their requirements.
Should understand the user requirement and should choose how the user views the
database.
Involve on the design phase before the implementation of the database system.
We have two distinctions of database designers, one involving in the logical and
conceptual design and another involving in physical design.
Logical and Conceptual DBD
Identifies data (entity, attributes and relationship) relevant to the organization
Identifies constraints on each data
Understand data and business rules in the organization
Sees the database independent of any data model at conceptual level and consider
one specific data model at logical design phase.
Physical DBD
Take logical design specification as input and decide how it should be physically
realized.
Map the logical data model on the specified DBMS with respect to tables and
integrity constraints. (DBMS dependent designing)
Select specific storage structure and access path to the database
Design security measures required on the database
The application could use any high level programming language according to the availability, the
facility and the required service.
The application programs could be written using general purpose programming language or the
commands available to manipulate a database.
4. End users
End users are basically those people whose jobs require access to the database for
querying, updating and generating reports.
End Users are the people who interact with the database through applications or utilities.
The end user is the person/people who can access or retrieve data actually doing the data
entry, clerking, reporting, keyboarding, whatever There..
End user is a number of users on demand using the applications and interfaces provided by the
DBMS.
The users of a database system can be classified in the following groups, depending on their
degrees of expertise/ knowledge or the mode of their interactions with the DBMS. The users can
be:
Naive or parametric end Users:- These users frequently query and update the database using
standard types of Queries.
Sizable proportion of users
Unaware of the DBMS
Only access the database based on their access level and demand
Use standard and pre-specified types of queries.
Unsophisticated users who interact with the system by using permanent
application programs (e.g. automated teller machine).They doing know the
coding details.
Database Management System (DBMS) is the tool for creating and managing the large amounts
of data efficiently and allowing it to persist for a long periods of time. Hence DBMS is a general-
purpose software that facilities the processes of defining, constructing, manipulating, and sharing
database.
- Defining: involves specifying data types, structure and constraints.
- Constructing: is the process of storing the data into a storage media.
- Manipulating: is retrieving and updating data from and into the storage.
- Sharing: allows multiple users to access data.
A DBMS is software that enables users to define, create, maintain and control access to the
database. Example: Ms Access, FoxPro, SQL Server, MySQL, Oracle.
The phrase “Database System” is used to colloquially refer to database and database
management system (DBMS).
o Database Management System (DBMS) is a Software package used for providing efficient,
convenient and safe multi-user (many people/programs accessing same database, or even
same data, simultaneously) storage of and access to massive amounts of data outlives
programs that operate on it data.
o A DBMS also provides a systematic method for creating, updating, storing, retrieving data in
a database.
o DBMS also provides the service of controlling data access, enforcing data integrity,
managing concurrency control, and recovery. Having this in mind, a full scale DBMS should
at least have the following services to provide to the user.
Data storage, retrieval and update in the database
A user accessible catalogue
Transaction support service: ALL or NONE transaction, which minimize data
inconsistency.
Concurrency Control Services: access and update on the database by different
users simultaneously should be implemented correctly.
Recovery Services: a mechanism for recovering the database after a failure must be
available.
Authorization Services (Security): must support the implementation of access and
authorization service to database administrator and users.
Support for Data Communication: should provide the facility to integrate with data
transfer software or data communication managers.
Integrity Services: rules about data and the change that took place on the data,
correctness and consistency of stored data, and quality of data based on business
constraints.
Services to promote data independency between the data and the application