Neso Note (5 DBMS Roles Including)

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 14

Neso: Database Management System

Definition
Data: raw, unprocessed facts
Eg: aye aye, 25, loikaw
Information: processed data
Eg: the age of aye aye is 25
Unprocessed raw data become meaningful context
Database
Collection of related data
Eg: online banking system, library management system
Online banking system database has to be related to the particular bank
The data in library management system has to be related to the particular library
Meta data: database definition
Complete description of a database
Information of the storage format, data type, constraint of the data

Database management system:


Database management system is a system or software
Definition: collection of programs that enables users to create and maintain the database
Functionalities:
Database management system allows users to define the database, to construct,
manipulate and share the database.
Define: specifying the data type, structures and constraints for the data to be stored.
Eg: constraint (age must be greater than 18)
Construct: process of storing data on some storage medium
When the data is stored, a database is being constructed.
Manipulate: querying the database to retrieve specific data, updating database and
generating reports.
Share: allows multiple users and programs to access the database concurrently.
Protection: protect the database from unauthorized access or from hardware or software
failure
Maintaining the database for a long period of time
Properties of database
1. A database represents some aspects of the real world (miniworld)
2. A database is a logically coherent collection of data with some inherent
meaning. (Random collection of data or unrelated data cannot be refer to as a
database. The data in the database has to be related or logically related)
3. A database is designed, built and populated with data for a specific purpose.

Database system environment


Neso 2: DBMS characteristics

Characteristics of DBMS Approach


1. Self-describing nature of a database system
2. Insulation between programs and data and data abstraction
3. Support of multiple views of the data
4. Sharing of data and multiuser transaction processing
1. Self-describing nature of a database system
Database system : database + meta-data(DB definition)
Complete definition of a database
Like : data type, constraint and etc are called meta-data

DBMS software must work equally well with any number of database applications.
In traditional file processing, data definition is part of application programs, work
with only one specific DB. (Structure declare in the program itself)
2. Insulation between programs and data, and data abstraction
In traditional file processing: structure of data file is embedded in the application
programs. (any changes of the structure of the data file affect the application
program and needed to change the application program)
In database approach: structure of data files is stored in the DBMS catalog, separate
from access programs (program-data independence)
(any changes of the structure of the data file does not need to change the structure
of the program)
The characteristic that allows program-data independence is called data abstraction.
DBMS provides users with conceptual representation of data
(conceptual representation: it hide the behind scene detail, complicated detail, that
are not interested the database user)
Data model: type of data abstraction- provides conceptual representation
(data model hide the storage and implementation details from the user)

3. Support of multiple views of the data


A database has many users, each of whom may require a different view of database.
A view: subset of database contains virtual data derived from database (not
explicitly stored). Only column or two or three column can be viewed by the
different users

4. Sharing of data and multiuser transaction processing


A multiuser DBMS allows multiple users to access the database at the same time
DBMS provide concurrency control.
(concurrency control- prevent two user edit the same data at the same time.
Eg: one travel agent assigning a seat for passenger, this seat should be block, should
not allow to assign by another agent to this seat. That is concurrency control)
OLTP (online transaction processing) – major part of database application
DBMS must enforce several transaction properties (isolation and atomicity)
Isolation: one agent assigning a seat, this seat is block
Atomicity: when assigning transaction is not completed, this seat should be unblock
for another agent to assign. This is multiuser transaction processing
Neso: Database User
1. Actor on the Scene (day to day user for large database)
Database administrator
Database designers
End users
System analysts and application programmers(software engineers)

2. Workers behind the scene


Work to maintain the database system environments
They deal for Design, development and operation of the database system
environment. They are not interested in database itself.
 System designers and implementers
 Tools developers
 Operators and maintenance personnel

Database administrators
In database environment, primary resource – database, secondary resource –
DBMS & related software
Database administrator (DBA) responsibilities:
 Administering primary and secondary resources
 Authorizing access to the database (they can grant to permitting to use the
database)
 Coordinating and monitoring use of database
 Acquiring hardware and software resources as needed
(Others are troubleshooting and security issues)

Database designers
Responsible for:
 Identifying the data to be stored in the database
 Choosing appropriate structures to represent and store data
 Communicating with database users – understand their requirements – designs
database
End users
End users: people whose jobs require access to the database for querying, updating,
generating reports.
Several categories of end users:
Casual end users: accesses database occasionally
Typically middle or high level managers or other occasional browsers
Naïve or parametric end users: constantly querying and updating database using canned
transactions.
Sophisticated end users: engineers, scientists, business analysts
Stand-alone users: maintains personal databases – using ready-made program packages

System analysts and application programmers (software engineers)


System analysts – determine the requirements of end users – develop specifications for
canned transactions. (develop standard type of query)
Application programmers – test, debug, document and maintain these canned
transactions.

Workers behind the scene


To maintain the database system environment
System designers and implementers: Design and implement DBMS modules and
interfaces as a package.
Tool Developers: Persons who design and implement tools (software packages)
(Can be purchase separately to help improve database system)
Operators and maintenance personnel: Responsible for actual running and maintenance
of hardware and software.

Neso: Adv and Disadv of DBMS


Adv of DBMS
Controlling redundancy
Restricting unauthorized access
Providing persistent storage for program objects
Providing storage structures for efficient query processing
Providing backup and recovery
Providing multiple user interfaces
Representing complex relationship among data
Enforcing integrity constraints
Permitting inferencing and actions using rules

Controlling redundancy
In traditional file system, each user group maintains its own files.

Inconsistency: update are not effect. Because data file are separated.
In the database approach, views of different users are integrated
All the data stored in only one place of the database.
Any number of user can access the database at the same time.
Duplication of data and data redundancy is controlling by DBMS approach.
This ensures consistency and saves storage space.

Restricting unauthorized access


Not the same type of access permission
When multiple users share a large database, the type of access operation must be
controlled.
(Retireve, update)
DBMS must provide security and authorization subsystem.
DBA creates accounts and specifies account restrictions
Parametric users allowed to access database only through canned transactions.
(standard type of query)

Providing persistent storage for program objects


Providing storage structures for efficient query processing
Database systems must provide capabilities for efficiently executing queries and
updates.
Since database is stored on disk, DBMS must provide specialized data structures
(indexes) to speed up disk search.
Query processing and optimization module – responsible for efficient query execution.

Providing backup and recovery


The backup and recovery subsystem of DBMS – responsible for recovery – in case of
hardware or software failures.
Eg: if the computer crashes during a complex transaction, the recovery subsystem –
responsible for ensuring that transaction resumes from where it is interrupted or at least
restore to the state it was before transaction started executing.

Providing multiple user interfaces


Multiple users – different levels of technical knowledge – so DBMS should provide a
variety of user interfaces.
Eg: query languages – casual users, programming language interfaces – application
programmers, forms – parametric users, menu-driven interfaces – stand alone users.
Form-style interfaces and menu-driven interfaces – Graphical User Interfaces (GUIs).

Representing complex relationships among data


A database may have variety of data – interrelated in many ways
DBMS must be capable of
Representing complex relationships among data
Retrieve and update related data easily and efficiently.

Enforcing integrity constraints


Simplest type of integrity constraint – specifying data type for each data item
Another type of constraint – uniqueness of data item values ( roll no of the student must
be unique, should not be duplicated)
Responsibility of database designers – identifying integrity constraints during database
design

Permitting inferencing and actions using rules


Database systems must provide capabilities for defining deduction rules for inferencing
new information
Such systems – deductive database systems
Active database systems – provides active rules that automatically initiate actions when
action events and conditions occur.

Additional implications of using database approach


Potential for enforcing standards:
DBA can define and enforce standards among database users.
This facilitates communication and cooperation within the organization
Reduced application development time
Important feature of database approach – developing a new application takes very little
time.
Flexibility:
Modern DBMS allow certain types of changes to the structure of database without
affecting the stored data and existing application programs.
Availability of up-to-date information:
One user’s update – all other users can immediately see this update.
Essential of many transaction-processing applications.
Made possible by concurrency control and recovery subsystems of DBMS.
Economies of scale:
By consolidating data and applications, wasteful overlap of resources can be avoided.
Reduces overall costs of operations and management.

Disadv of DBMS
When not to use DBMS
Overhead costs of using DBMS:
High initial investment (hardware, software and training)
Overhead cost is the ongoing cost to run the DBMS.
Overhead for providing security, concurrency control, recovery
Database and applications – simple, well defined and no changes expected.
Multiple-user access – not required

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy