You are on page 1of 27

INTRODUCTION TO DATABASE MANAGEMENT SYSTEMS (DBMS)

TOPICS
What is Database & why Database. What is DBMS. Advantage of DBMS.

Data Abstraction. Data Models. Categories of Users.

What is a Database
1. A database is a collection of information that is

organized so that it can easily be accessed, managed, and updated. 2. Databases are designed to offer an organized mechanism for storing, managing and retrieving information. 3. Computer databases are designed to offer an organized mechanism for storing, managing and retrieving information. They do so through the use of tables.

What is a Database (contd..)


A database is any organized collection of data.

Some examples of databases you may encounter in your daily life are: a telephone book T.V. Guide airline reservation system motor vehicle registration records papers in your filing cabinet files on your computer hard drive.

Data vs. information: What is the difference?


What is data? What is information?
Data can be defined in many Information is data that have been organized ways. Information science defines and communicated in a coherent and data as unprocessed information. meaningful manner. Data is converted into information, and information is converted into knowledge. Knowledge; information evaluated and organized so that it can be used purposefully.

Why do we need a database?


Keep records of our: Clients Staff Volunteers To keep a record of activities and interventions; Keep sales records; Develop reports; Perform research Longitudinal tracking

What is the ultimate purpose of a database management system?


Is to transform

What is DBMS
Database is an organized collection of data. A database management system (DBMS) such as

Access, FileMaker, Lotus Notes, Oracle or SQL Server which provides you with the software tools you need to organize that data in a flexible manner. It includes tools to add, modify or delete data from the database, ask questions (or queries) about the data stored in the database and produce reports summarizing selected contents.

Types of Databases
Non-relational databases Non-relational databases place information in field categories that we create so that information is available for sorting and disseminating the way we need it. The data in a non-relational database, however, is limited to that program and cannot be extracted and applied to a number of other software programs, or other database files within a school or administrative system. The data can only be "copied and pasted. Example: a spread sheet

Contd..
Relational databases In relational databases, fields can be used in a

number of ways (and can be of variable length), provided that they are linked in tables. It is developed based on a database model that provides for logical connections among files (known as tables) by including identifying data from one table in another table

Selecting a Database Management System


Database management systems (or DBMSs) can be divided into two categories -- desktop

databases and server databases.


Generally speaking, desktop databases are oriented toward single-user applications and reside on standard personal computers (hence the term desktop).

Server databases contain mechanisms to ensure the reliability and consistency of data and are geared toward multi-user applications.

Selecting a database system: Need Analysis


The needs analysis process will be specific to your organization but,

at a minimum, should answer the following questions: How many records we will warehouse and for how long? Who will be using the database and what tasks will they perform? How often will the data be modified? Who will make these modifications? Who will be providing IT support for the database? What hardware is available? Is there a budget for purchasing additional hardware? Who will be responsible for maintaining the data? Will data access be offered over the Internet? If so, what level of access should be supported?

Database Languages
A DBMS is a software package that carries out many

different tasks including the provision of facilities to enable the user to access and modify information in the database.
The database is an intermediate link between the physical

database, computer and the operating system and the users.


To provide the various facilities to different types of users, a DBMS normally provides one or more specialized programming languages called database languages.

Contd..
Database languages come in different forms. They are: 1. Data Description Language (DDL) 2. Data Manipulation Language (DML) Data Description Language (DDL) As the name suggests, this language is used to define the various types of data in the database and their relationship with each other. The basic functions performed by DDL are: Create tables, files, databases and data dictionaries. Specify the storage structure of each table on disk. Integrity constraints on various tables. Security and authorization information of each table. Specify the structure of each table. Overall design of the Database.

Contd.. Data Manipulation Language (DML)


A language that enables users to access or manipulate data (retrieve, insert, update, delete) as organized by a certain Data Model is called the Data Manipulation Language (DML). It can be of two types: -

1. Procedural DML
It describes what data is needed and how to get it. For example: Relational Algebra.

2. Non Procedural DML


It describes what data is needed without specifying how to get it. For example: - Relational calculus.

Advantages of DBMS
Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs
Improved data access to users through use of query languages Improved data security Reduced data entry, storage, and retrieval costs Facilitated development of new applications program

Disadvantages of DBMS
Database systems are complex, difficult, and time-

consuming to design
Substantial hardware and software start-up costs Damage to database affects virtually all applications

programs
Extensive conversion costs in moving form a file-based

system to a database system


Initial training required for all programmers and users

Data Abstraction
Data Abstraction aims at hiding

low-level details from the users of the system thus maintaining data integrity, concurrent access, enhances system speed and avoids failures.

Levels of Abstraction (1)


Physical level/Internal Level: describes how a record (e.g., customer) is stored. This level indicates how the data will be stored in the database and describes the data structures, file structures and

access methods to be used by the database


It describes the way the DBMS and the operating

system perceive the data in the database.

Levels of Abstraction (2)


Logical level/Conceptual Level: describes data stored in database, and the relationships among the data. This level provides the community view of the database and describes what data is stored in the database and the relationships among the data It contains the logical structure of the database

as seen by DBA

Levels of Abstraction (3)


View level/External Level: application programs hide details of data

types. Views can also hide information (such as an employees salary) for security purposes.
This level is at the highest level of data abstraction where only those

portions of the database of concern to a user or application program are included. In other words, this level describes that part of the database that is relevant to the user.
In the external level, the different views may have different

representations of the same data. For example, one user may view data in the form as day, month, year while another may view as year, month, day.
Some view might include derived or calculated data, that is, data is

not stored in the database but are created when needed.


External views may include data combined or derived from several

entities

Data Model
A model is a representation of reality, real world objects and events, and

their associations.
The purpose of a data model is to represent data and to make the data

understandable. Data Model can be defined as an integrated collection of concepts for

describing and manipulating data, relationships between data, and constraints on the data in an organization and it can also be used to describe the structure of a database.

Data models can be broadly distinguished into 3 main categories high-level or conceptual data models (based on entities & relationships) Low level or physical data models representational or implementation data models (record-based, object-oriented)

Contd..
1) High-level or conceptual data models (based on entities & relationships) :
It provides concepts that are close to the way many users perceive data.

2) Low level or physical data models :


It provides concepts that describe the details of how data is stored in the computer. These concepts are meant for computer specialist, not for typical end users.

3)

Representational or implementation data models (record-based, object-oriented):


It provide concepts that can be understood by end users. These hide some details of data storage but can be implemented on a computer system directly.

Categories of Users
An Oracle Database system can be large and can have

many users. Therefore, database administration is sometimes not a one-person job, but a job for a group of DBAs who share responsibility
Database Administrators

Security Officers
Network Administrators Application Developers

Application Administrators
Database Users

User1: Roles of Database Administrator


A database administrator's responsibilities can include the following tasks:

Installing and upgrading the Oracle Database server and application tools Allocating system storage and planning future storage requirements for the database system Creating primary database storage structures (tablespaces) after application developers have designed an application Creating primary objects (tables, views, indexes) once application developers have designed an application Modifying the database structure, as necessary, from information given by application developers Enrolling users and maintaining system security Ensuring compliance with Oracle license agreements Controlling and monitoring user access to the database Monitoring and optimizing the performance of the database Planning for backup and recovery of database information Maintaining archived data on tape Backing up and restoring the database Contacting Oracle for technical support

User2:Role of Security Officer

In some cases, a site assigns one or more security officers to a database. A security officer enrolls users, controls and monitors user access to the database, and maintains system security. As a DBA, you might not be responsible for these duties if your site has a separate security officer

User3:Role of Network Administrator

Some sites have one or more network administrators. A network administrator, for example, administers Oracle networking products, such as Oracle Net Services.

User4:Role of Application Developers


Application developers design and implement database applications. Their responsibilities include the following tasks: Designing and developing the database application Designing the database structure for an application Estimating storage requirements for an application Specifying modifications of the database structure for an application Relaying this information to a database administrator Tuning the application during development Establishing security measures for an application during development

User5:Role of Database Users

Database users interact with the database through applications or utilities. A typical user's responsibilities include the following tasks: Entering, modifying, and deleting data, where permitted Generating reports from the data

You might also like