Download View File - UET Taxila

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

IMDb wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Concurrency control wikipedia , lookup

Relational model wikipedia , lookup

Database wikipedia , lookup

ContactPoint wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
Database Management Systems
Lecture # 01
Instructor:
Engr. Sana Ziafat
Introduction: What Is Database?

A very large, integrated collection of data.

Database: An organized collection of logically
related data.
2
Types of Databases and Database
Applications




Numeric and Textual Databases
Multimedia Databases
Geographic Information Systems (GIS)
Data Warehouses
3
Definitions



Data: Meaningful facts, text, graphics,
images, sound, video segments
Information: Data processed to be useful in
decision making
Metadata: Data that describes data
4
Figure: Data in Context
5
Figure: Summarized data
Useful information that managers can use for
decision making and interpretation
6
Table: Metadata
Descriptions of the properties or characteristics of the
data, including data types, field sizes, allowable
values, and documentation
7
What is DBMS


A Database Management System (DBMS) is
a software package designed to store and
manage databases.
A DBMS is a data storage and retrieval
system which permits data to be stored nonredundantly while making it appear to the
user as if the data is well-integrated.
8
Database Management System
Application
#1
Application
#2
Application
#3
DBMS
Database
containing
centralized
shared data
DBMS manages data
resources like an operating
system manages hardware
resources
9
A simplified database system environment
10
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
11
Typical DBMS Functionality
Other features:



Protection or Security measures to
prevent unauthorized access
“Active” processing to take internal
actions on data
Presentation and Visualization of data
12
Example



Mini-world for the example: Part of a UNIVERSITY environment.
Some mini-world entities:
- STUDENTs
- COURSEs
- SECTIONs (of COURSEs)
- (academic) DEPARTMENTs
- INSTRUCTORs
Some mini-world relationships:
- SECTIONs are of specific COURSEs
- STUDENTs take SECTIONs
- COURSEs have prerequisite COURSEs
- INSTRUCTORs teach SECTIONs
- COURSEs are offered by DEPARTMENTs
- STUDENTs major in DEPARTMENTs
13
14
Define UNIVERSITY database
Structure of the record
STUDENT ( Name , Number, Class, Major)
COURSE ( Name , Number, Credit, Dept.)
Data type of data element
Name: a string of characters
Number: integer
Grade:
{A,B,C,D,F,I}
…..
Constraints
The sections that students take must be taught by some instructors.
15
Construct UNIVERSITY database
Store data on storage medium
-store data for each student, course, section, grade repot, prerequisite
records in various files may be related to one another
Manipulate UNIVERSITY database
Query:
Retrieve the transcript ( a list of all courses and grades) of Smith.
Update:
Create a new section for the database course for this semester.
16
Disadvantages of File Processing

Program-Data Dependence
All programs maintain metadata for each file they use

Data Redundancy (Duplication of data)
Different systems/programs have separate copies of the same data

Limited Data Sharing
No centralized control of data

Lengthy Development Times
Programmers must design their own file formats

Excessive Program Maintenance
80% of of information systems budget
17
Figure: Three file processing systems at Pine Valley
Furniture
Duplicate
Data
18
Problems with Data Dependency





Each application programmer must maintain their
own data
Each application program needs to include code
for the metadata of each file
Each application program must have its own
processing routines for reading, inserting,
updating and deleting data
Lack of coordination and central control
Non-standard file formats
19
Problems with Data Redundancy



Waste of space to have duplicate data
Causes more maintenance headaches
The biggest Problem:


When data changes in one file, could
cause inconsistencies
Compromises data integrity
20
SOLUTION:
The DATABASE Approach



Central repository of shared data
Data is managed by a controlling agent
Stored in a standardized, convenient
form
Requires a Database Management System (DBMS)
21
Advantages of Database Approach

Program-Data Independence




Metadata stored in DBMS, so applications don’t need to worry
about data formats
Data queries/updates managed by DBMS so programs don’t
need to process data access routines
Results in: increased application development and maintenance
productivity
Minimal Data Redundancy

Leads to increased data integrity/consistency
22
Advantages of Database Approach

Improved Data Sharing


Enforcement of Standards


Constraints, data validation rules
Better Data Accessibility/ Responsiveness


All data access is done in the same way
Improved Data Quality


Different users get different views of the data
Use of standard data query language (SQL)
Security, Backup/Recovery, Concurrency

Disaster recovery is easier
23
Costs and Risks of the
Database Approach

Up-front costs:



Ongoing Costs



Installation Management Cost and Complexity
Conversion Costs
Requires New, Specialized Personnel
Need for Explicit Backup and Recovery
Organizational Conflict

Old habits die hard
24
Conversion to database approach



Step 1:
Enterprise Data model: Graphical model that
shows high level entities for organization and
associations among these entities.
Step 2:
Relational Data Model: Defining tables for
each entity.
Step 3:
Implement
25
Continued..



A data model is a collection of concepts for
describing data.
A schema is a description of a particular collection of
data, using the a given data model.
The relational model of data is the most widely used
model today.
- Main concept: relation, basically a table with
rows and columns.
- Every relation has a schema, which describes
the columns, or fields
26
Segment from enterprise data model
27
One customer may place many
orders, but each order is placed
by a single customer
 One-to-many relationship
28
Therefore, one order involves
many products and one product
is involved in many orders
 Many-to-many relationship
29
Database Users
Users may be divided into those who
actually use and control the content (called
“Actors on the Scene”) and those who
enable the database to be developed and
the DBMS software to be designed and
implemented (called “Workers Behind the
Scene”).
30
Database Users
Actors on the scene



Database administrators: responsible for authorizing
access to the database, for co-ordinating and monitoring
its use, acquiring software, and hardware resources,
controlling its use and monitoring efficiency of
operations.
Database Designers: responsible to define the content,
the structure, the constraints, and functions or
transactions against the database. They must
communicate with the end-users and understand their
needs.
End-users: they use the data for queries, reports and
some of them actually update the database content.
31
Categories of End users


Sophisticated Users: these include business
analysts, scientists, engineers, others thoroughly
familiar with the system capabilities. Many use tools
in the form of software packages that work closely
with the stored database.
Naive Users: They don’t need to know any details
of structure. They access the database by writing
simple commands or by choosing operations from
menus.
32
Workers behind the scene
Persons whose job involves design, development,
operation,and maintenance of the DBMS software and
system environment.
 DBMS designers and implementers: Design and
implement the DBMS software package itself.

Tool developers: Design and implement tools that
facilitate the use of the DBMS software. Tools include
design tools, performance tools, special interfaces,etc.

Operators and maintenance personnel: Work on
running and maintaining the hardware and software
environment for the database system.
33
Figure
Client/server
system
34
The Range of
Database Applications




Personal Database – standalone desktop
database
Workgroup Database – local area network
(<25 users)
Department Database – local area network
(25-100 users)
Enterprise Database – wide-area network
(hundreds or thousands of users)
35
Figure: Typical
data from a
personal
computer
database
36
Figure: Workgroup database with local area network
37
Figure : An
enterprise
data
warehouse
38
Figure:
Components
of the
database
environment
39
Evolution of DB Systems








Flat files - 1960s - 1980s
Hierarchical – 1970s - 1990s
Network – 1970s - 1990s
Relational – 1980s - present
Object-oriented – 1990s - present
Object-relational – 1990s - present
Data warehousing – 1980s - present
Web-enabled – 1990s - present
40
When not to use DBMS
Main costs of using 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.
- Generality that a DBMS provides for defining and processing
data.
When a DBMS may be unnecessary:
- 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.
41
Quick Review









CASE Tools – computer-aided software engineering
Repository – centralized storehouse of metadata
Database Management System (DBMS) – software for
managing the database
Database – storehouse of the data
Application Programs – software using the data
User Interface – text and graphical displays to users
Data Administrators – personnel responsible for maintaining
the database
System Developers – personnel responsible for designing
databases and software
End Users – people who use the applications and databases
42
?????

1.
2.
3.
Indicate whether there is one-to-many or
many-to-many relationships?
STUDENT and COURSE( student registers
for course)
BOOK and BOOK COPY (books have
copies)
INSTRUCTOR and COURSE
43