Lect 1-3
Lect 1-3
Lect 1-3
Introduction
Slide 1- 2
Types of Databases and Database
Applications
• Traditional Applications:
• Numeric and Textual Databases
• More Recent Applications:
• Multimedia Databases
• Geographic Information Systems (GIS)
• Data Warehouses
• Real-time and Active Databases
• Many other applications
Slide 1- 3
Basic Definitions
• Database:
• A collection of related data.
• Data:
• Known facts that can be recorded and have an implicit meaning.
• Mini-world:
• Some part of the real world about which data is stored in a database.
For example, student grades and transcripts at a university.
• Database Management System (DBMS):
• A software package/ system to facilitate the creation and
maintenance of a computerized database.
• Database System:
• The DBMS software together with the data itself. Sometimes, the
applications are also included.
Slide 1- 4
Simplified database system environment
Slide 1- 5
Typical DBMS Functionality
Slide 1- 6
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
• Maintaining the database and associated
programs over the lifetime of the database
application
• Called database, software, and system maintenance
Slide 1- 7
Example of a Database
(with a Conceptual Data Model)
•Mini-world for the example:
•Part of a UNIVERSITY environment.
•Some mini-world entities:
•STUDENTs
•COURSEs
•SECTIONs (of COURSEs)
•(academic) DEPARTMENTs
•INSTRUCTORs
Slide 1- 8
Example of a Database
(with a Conceptual Data Model)
Slide 1- 10
Main Characteristics of the Database
Approach
• Self-describing nature of a database system:
• A DBMS catalog stores the description of a particular
database (e.g. data structures, types, and constraints)
• The description is called meta-data.
• This allows the DBMS software to work with different
database applications.
• Insulation between programs and data:
• Called program-data independence.
• Allows changing data structures and storage organization
without having to change the DBMS access programs.
Slide 1- 11
Example of a simplified database catalog
Slide 1- 12
Main Characteristics of the Database
Approach (continued)
• Data Abstraction:
• A data model is used to hide storage details and
present the users with a conceptual view of the
database.
• Programs refer to the data model constructs
rather than data storage details
• Support of multiple views of the data:
• Each user may see a different view of the
database, which describes only the data of
interest to that user.
Slide 1- 13
Main Characteristics of the Database
Approach (continued)
• Sharing of data and multi-user transaction processing:
• Allowing a set of concurrent users to retrieve from and to
update the database.
• Concurrency control within the DBMS guarantees that
each transaction is correctly executed or aborted
• Recovery subsystem ensures each completed transaction
has its effect permanently recorded in the database
• OLTP (Online Transaction Processing) is a major part of
database applications. This allows hundreds of concurrent
transactions to execute per second.
Slide 1- 14
Database Users
Slide 1- 15
Database Users
Slide 1- 16
Categories of End-users
Slide 1- 17
Categories of End-users (continued)
• Sophisticated:
• 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.
• Stand-alone:
• Mostly maintain personal databases using ready-to-
use packaged applications.
• An example is a tax program user that creates its
own internal database.
• Another example is a user that maintains an address
book
Slide 1- 18
Advantages of Using the Database Approach
Slide 1- 19
Advantages of Using the Database Approach
(continued)
• Providing backup and recovery services.
• Providing multiple interfaces to different classes of
users.
• Representing complex relationships among data.
• Enforcing integrity constraints on the database.
• Drawing inferences and actions from the stored
data using deductive and active rules
Slide 1- 20
Additional Implications of Using the Database
Approach
• Potential for enforcing standards:
• This is very crucial for the success of database
applications in large organizations. Standards
refer to data item names, display formats,
screens, report structures, meta-data (description
of data), Web page layouts, etc.
• Reduced application development time:
• Incremental time to add each new application is
reduced.
Slide 1- 21
Additional Implications of Using the Database
Approach (continued)
• Flexibility to change data structures:
• Database structure may evolve as new requirements are
defined.
• Availability of current information:
• Extremely important for on-line transaction systems such
as airline, hotel, car reservations.
• Economies of scale:
• Wasteful overlap of resources and personnel can be
avoided by consolidating data and applications across
departments.
Slide 1- 22
Historical Development of Database
Technology
• Early Database Applications:
• The Hierarchical and Network Models were introduced in
mid 1960s and dominated during the seventies.
• A bulk of the worldwide database processing still occurs
using these models, particularly, the hierarchical model.
• Relational Model based Systems:
• Relational model was originally introduced in 1970, was
heavily researched and experimented within IBM
Research and several universities.
• Relational DBMS Products emerged in the early 1980s.
Slide 1- 23
Historical Development of Database
Technology (continued)
• Object-oriented and emerging applications:
• Object-Oriented Database Management Systems (OODBMSs)
were introduced in late 1980s and early 1990s to cater to the
need of complex data processing in CAD and other
applications.
• Their use has not taken off much.
• Many relational DBMSs have incorporated object database
concepts, leading to a new category called object-relational
DBMSs (ORDBMSs)
• Extended relational systems add further capabilities (e.g. for
multimedia data, XML, and other data types)
Slide 1- 24
Historical Development of Database
Technology (continued)
• Data on the Web and E-commerce Applications:
• Web contains data in HTML (Hypertext markup language)
with links among pages.
• This has given rise to a new set of applications and E-
commerce is using new standards like XML (eXtended
Markup Language).
• Script programming languages such as PHP and JavaScript
allow generation of dynamic Web pages that are partially
generated from a database
• Also allow database updates through Web pages
Slide 1- 25
Extending Database Capabilities
Slide 1- 26
When not to use a DBMS
Slide 1- 27
When not to use a DBMS
Slide 1- 28
Data Models
Slide 2-29
Categories of data models
Slide 2-31
Example ER Diagram
QuickTime™ and a
decompressor
are needed to see this picture.
QuickTime™ and a
decompressor
are needed to see this picture.
QuickT ime™ and a
decompressor Q uic k Time™ an d a
are needed to see this picture. d ec o mp r es s or
a re n ee d ed to se e th is pic tur e .
QuickTime™ and a
decompressor
are needed to see this picture.
QuickTime™ and a
decompressor
are needed to see this picture.
Slide 2-32
The Object Oriented Model
• The OO model is a representational data model that is still at a fairly
high level
• It’s similar to the ER model in that it’s based on a collection of objects,
but the objects are designed differently
• The real world consists of a collection of objects called objects, which
store both data values and code for operating on these values
• The values themselves may be objects, and so we can get nesting of
objects
• We can also have two or more objects containing all the same values
that are nevertheless distinct. Physical address identifiers are used to
distinguish them. In the ER model, entities must be distinguished by
some unique value.
Slide 2-33
More Representational Models
• Most representational models are record-based. In a record-based
model, data is structured in fixed-format records.
• Each record has a fixed number of fields, and each field usually has
a fixed length.
• Two older record-based models, the network model and
hierarchical model, are no longer used to build new systems. They
use pointers, or hard-coded links, to connect the records of a DB.
• The representational model supported by Oracle is the relational
model.
• In the relational model, you view data as being arranged in tables,
with rows and columns. Each column has a unique name. Each
row is a record. The examples given for the University mini-world
were shown in the relational model.
Slide 2-34
Schemas versus Instances
Slide 2-35
FIGURE 2.1
Schema diagram for the database in Figure 1.2.
Slide 2-36
Database Schema Vs. Database State
• Database State: Refers to the content of a database at
a moment in time.
• Initial Database State: Refers to the database when it
is loaded
• Valid State: A state that satisfies the structure and
constraints of the database.
• Distinction
• The database schema changes very infrequently. The
database state changes every time the database is updated.
• Schema is also called intension, whereas state is called
extension.
Slide 2-37
Three-Schema Architecture
Slide 2-38
FIGURE 2.2
The three-
schema
architecture.
Slide 2-39
Three-Schema Architecture
Slide 2-40
Three-Schema Architecture
Slide 2-41
Data Independence
Slide 2-42
Data Independence
Slide 2-43
DBMS Languages
Slide 2-44
DBMS Languages
Slide 2-45
DBMS Languages
Slide 2-46
DBMS Interfaces
Slide 2-47
Other DBMS Interfaces
Slide 2-48
FIGURE 2.3
Component modules of a DBMS and their
interactions.
Slide 2-49
Database System Utilities
Slide 2-50
Centralized and Client-Server Architectures
Slide 2-51
FIGURE 2.4
A physical centralized architecture.
Slide 2-52
Specialized Servers with Specialized
functions:
• File Servers
• Printer Servers
• Web Servers
• E-mail Servers
Slide 2-53
Clients:
Slide 2-54
Two Tier Client-Server Architecture
Slide 2-55
Two Tier Client-Server Architecture
Slide 2-56
FIGURE 2.5
Logical two-tier client/server architecture.
Slide 2-57