1 databases and database management systems
Post on 04-Apr-2018
227 Views
Preview:
TRANSCRIPT
-
7/30/2019 1 Databases and Database Management Systems
1/83
DatabasesandDatabase Management Systems
Based on Chapters 1-2 inFundamentals of Database Systems
by Elmasri and Navathe, Ed. 4
-
7/30/2019 1 Databases and Database Management Systems
2/83
Introduction to Database Systems 2
NOTES
1 Basic Definitions
2 Example of a Database
3 Main Characteristics ofDatabase Technology
4 Additional Benefits ofDatabase Technology
5 When Not to Use aDBMS
6 Data Models6A. History of data
Models
7 Schemas versusInstances
8 Three-SchemaArchitecture
9 Data Independence
10 DBMS Languages11 DBMS Interfaces
12 DBMS ComponentModules13 Database System
Utilities14 Classification of DBMSs
-
7/30/2019 1 Databases and Database Management Systems
3/83
Introduction to Database Systems 3
Types of Databases andDatabase Applications
Numeric and Textual Databases
Multimedia Databases(store images, audio
clips, and video streams digitally).
Geographic Information Systems (GIS) (store
and analyze maps, weather data and satellite
images)
Data Warehouses and Online analyticalprocessing (OLAP)
Real-time and Active Databases (control
industrial and manufacturing process)
-
7/30/2019 1 Databases and Database Management Systems
4/83
Database Management System
(DBMS)
Collection of interrelated data
Set of programs to access the data
DBMS contains information about a particular
enterprise DBMS provides an environment that is both
convenientand efficientto use.
Introduction to Database Systems 4
-
7/30/2019 1 Databases and Database Management Systems
5/83
Database Management System (DBMS)
Database Applications: Banking: all transactions
Airlines: reservations, schedules
Universities: registration, grades
Sales: customers, products, purchases
Manufacturing: production, inventory, orders, supply chain
Human resources: employee records, salaries, tax deductions
Databases touch all aspects of our lives
-
7/30/2019 1 Databases and Database Management Systems
6/83
Purpose of Database System
In the early days, database applicationswere built on top of file systems
Drawbacks of using file systems to store
data: Data redundancy and inconsistency
Multiple file formats, duplication of information in different files
Difficulty in accessing data
Need to write a new program to carry out each new task
Data isolation multiple files and formats
Integrity problems
Integrity constraints (e.g. account balance > 0) become part of
program code
Hard to add new constraints or change existing ones
-
7/30/2019 1 Databases and Database Management Systems
7/83
Purpose of Database Systems(Cont.)
Drawbacks of using file systems (cont.) Atomicity of updates
Failures may leave database in an inconsistent state with partial
updates carried out
E.g. transfer of funds from one account to another should eithercomplete or not happen at all
Concurrent access by multiple users
Concurrent accessed needed for performance
Uncontrolled concurrent accesses can lead to inconsistencies
E.g. two people reading a balance and updating it at the sametime
Security problems
Database systems offer solutions to all the
above problems
-
7/30/2019 1 Databases and Database Management Systems
8/83
Introduction to Database Systems 8
1.Basic Definitions
Database:
A collection of related data.
Data:
Known facts that can be recorded and have an
implicit meaning.
-
7/30/2019 1 Databases and Database Management Systems
9/83
Introduction to Database Systems 9
Basic Definitions
Mini-world:
Some part of the real world about which data is
stored in a database.
For example, student grades and transcripts at auniversity.
-
7/30/2019 1 Databases and Database Management Systems
10/83
Introduction to Database Systems 10
Basic Definitions
Database Management System(DBMS) :
A software package/ system to facilitate the
creation and maintenance of a computerized
database.
-
7/30/2019 1 Databases and Database Management Systems
11/83
Introduction to Database Systems 11
Basic Definitions
Database System:
The DBMS software together with the data itself.
Sometimes, the applications are also included.
Database System
= Data + DBMS + (Program)
-
7/30/2019 1 Databases and Database Management Systems
12/83
Introduction to Database Systems 12
A simplifieddatabasesystemenvironment.
-
7/30/2019 1 Databases and Database Management Systems
13/83
Introduction to Database Systems 13
Typical DBMS Functionality (1/2)
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
-
7/30/2019 1 Databases and Database Management Systems
14/83
Introduction to Database Systems 14
Typical DBMS Functionality (2/2)
Other features:
Protection or Security measures to prevent
unauthorized access
Active processing to take internal actions ondata
Presentation and Visualization of data
-
7/30/2019 1 Databases and Database Management Systems
15/83
Introduction to Database Systems 15
2. Example of a Database(with a Conceptual Data Model)
Mini-world for the example:
Part of a UNIVERSITY environment.
Entities
Relationships
-
7/30/2019 1 Databases and Database Management Systems
16/83
Introduction to Database Systems 16
2. Example of a Database(with a Conceptual Data Model)
Some mini-world entities:
STUDENTs
COURSEs
SECTIONs (of COURSEs)
(academic) DEPARTMENTs
INSTRUCTORs
-
7/30/2019 1 Databases and Database Management Systems
17/83
Introduction to Database Systems 17
University database
-
7/30/2019 1 Databases and Database Management Systems
18/83
Introduction to Database Systems 18
2. Example of a Database(with a Conceptual Data Model)
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
-
7/30/2019 1 Databases and Database Management Systems
19/83
Introduction to Database Systems 19
NOTE:
The above could be expressed in the
ENTITY-RELATIONSHIP data model.
-
7/30/2019 1 Databases and Database Management Systems
20/83
Introduction to Database Systems 20
3. Main Characteristics ofDatabase Technology
1) Self-contained nature of a database system
2) Insulation between programs and data
3) Data Abstraction
4) Support of multiple views of the data
5) Sharing of data and multiuser transaction
processing
-
7/30/2019 1 Databases and Database Management Systems
21/83
Introduction to Database Systems 21
Self-contained nature of adatabase system
A DBMS catalogstores the description of thedatabase.
The description is called meta-data.
This allows the DBMS software to work withdifferent databases.
-
7/30/2019 1 Databases and Database Management Systems
22/83
Introduction to Database Systems 22
Insulation between programs anddata
Called program-data independence.
Allows changing data storage structures and
operations without having to change the
DBMS access programs.
-
7/30/2019 1 Databases and Database Management Systems
23/83
Introduction to Database Systems 23
Data Abstraction
A data model is used to hide storage details
and present the users with a conceptual view
of the database.
-
7/30/2019 1 Databases and Database Management Systems
24/83
Introduction to Database Systems 24
Support of multiple views of thedata
Each user may see a different view of the
database, which describes only the data of
interest to that user.
-
7/30/2019 1 Databases and Database Management Systems
25/83
Introduction to Database Systems 25
The STUDENT TRANSCRIPT view.
-
7/30/2019 1 Databases and Database Management Systems
26/83
Introduction to Database Systems 26
Internal storage format for aSTUDENT record
-
7/30/2019 1 Databases and Database Management Systems
27/83
Introduction to Database Systems 27
Sharing of data and multiusertransaction processing
allowing a set of concurrent users to retrieve
and to update the database.
Concurrency control within the DBMS
guarantees that each transactionis correctlyexecuted or completely aborted.
OLTP (Online Transaction Processing) is a
major part of database applications.
-
7/30/2019 1 Databases and Database Management Systems
28/83
Introduction to Database Systems 28
4. Additional Benefits of DatabaseTechnology
Controlling redundancy in data storage and in development andmaintenance efforts.
Sharing of data among multiple users.
Restricting unauthorized access to data.
Providing multiple interfaces to different classes of users. Representing complex relationships among data.
Enforcing integrity constraintson the database.
Providing backupand recoveryservices.
Potential for enforcing standards.
Flexibility to change data structures.
Reduced application development time.
Availability of up-to-date information.
Economies of scale.
-
7/30/2019 1 Databases and Database Management Systems
29/83
-
7/30/2019 1 Databases and Database Management Systems
30/83
Actors on the scene
Person involve day to day use of a database.
To define, construct and manipulates the DB.
Called as Actors on the scene.
1. DBA (Database Administrator )
Many people use the same resources.
Chief administrator to overseer's and manages
these resources. Primary resource is DB
Secondary resource is DBMS and related s/w.
Introduction to Database Systems 30
-
7/30/2019 1 Databases and Database Management Systems
31/83
DBA is responsible to administrate these
resources.
Responsible for authorizing access to DB,
coordinating, monitoring its uses , acquiring s/w
and h/w resources.
Introduction to Database Systems 31
-
7/30/2019 1 Databases and Database Management Systems
32/83
Database Designer
Identifying the data to be stored in DB.
Choosing appropriate structure to represent and
store this data. Communicate with DB user to understand their
request and create a design that meets these
requirement.
Introduction to Database Systems 32
-
7/30/2019 1 Databases and Database Management Systems
33/83
End User
Access DB for querying, updating and generating
reports.
1. Casual end user Occasionally access DB
Use sophisticated DB query language.
Middle or high level mangers or other occasional
browser.
Introduction to Database Systems 33
-
7/30/2019 1 Databases and Database Management Systems
34/83
Naive or parametric end user
Constantly querying and updating DB.
Using standard types of queries and updates called
canned transaction
Sophisticated end user
Engineers
Scientists
Business analysts Use DB to implement their applications to meet their
computer requirements
Introduction to Database Systems 34
-
7/30/2019 1 Databases and Database Management Systems
35/83
Standalone user
Personal DB by using ready made program package.
Menu based or graphic base interface.
Introduction to Database Systems 35
-
7/30/2019 1 Databases and Database Management Systems
36/83
System analysts and application
programmers (s/w engineers)
System analysts
Determine the requirements of end users especiallynave and parametric end user
Develop specification for canned transcation.
Application programmer
Implement specification as program. Test, debug, document and maintain these canned
transcation.
Introduction to Database Systems 36
-
7/30/2019 1 Databases and Database Management Systems
37/83
Worker Behind the Scene
Work to maintain the DB system environment
but not actively interested in DB itself.
DBMS system designer and implementers Design and implement the DBMS modules and
interface as s/w packages.
Introduction to Database Systems 37
-
7/30/2019 1 Databases and Database Management Systems
38/83
Tool developers
Design and implements tool.
s/w packages that facilitate DB modeling and
design. Improves performance.
Operators and maintenance personnel
Responsible for actual running and maintenance
of the H/W and S/W environments for DB system.
Introduction to Database Systems 38
Hi t i l D l t f
-
7/30/2019 1 Databases and Database Management Systems
39/83
Introduction to Database Systems 39
Historical Development ofDatabase 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.
-
7/30/2019 1 Databases and Database Management Systems
40/83
Introduction to Database Systems 40
Historical Development of DatabaseTechnology
Relational Model based Systems:
The model that was originally introduced in
1970 was heavily researched and
experimented with in IBM and theuniversities.
Relational DBMS Products emerged in the
1980s.
Historical Development of
-
7/30/2019 1 Databases and Database Management Systems
41/83
Introduction to Database Systems 41
Historical Development ofDatabase Technology
Object-oriented applications:
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.
-
7/30/2019 1 Databases and Database Management Systems
42/83
Introduction to Database Systems 42
Historical Development of DatabaseTechnology
Data on the Web and E-commerceApplications:
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).
-
7/30/2019 1 Databases and Database Management Systems
43/83
Introduction to Database Systems 43
Extending Database capabilities
New functionality is being added to DBMSs inthe following areas:
Scientific Applications
Image Storage and Management Audio and Video data management
Data Mining
Spatial data management
Time Series and Historical Data Management
-
7/30/2019 1 Databases and Database Management Systems
44/83
Introduction to Database Systems 44
5 When not to use a DBMS
Main inhibitors (costs) of using a DBMS
When a DBMS may be unnecessary
When no DBMS may suffice
Main inhibitors (costs) of using a
-
7/30/2019 1 Databases and Database Management Systems
45/83
Introduction to Database Systems 45
Main inhibitors (costs) of using aDBMS:
High initial investment and possible need foradditional hardware.
Overhead for providing generality, security,
recovery, integrity, and concurrency control.
When a DBMS may be
-
7/30/2019 1 Databases and Database Management Systems
46/83
Introduction to Database Systems 46
When a DBMS may beunnecessary:
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 DBMSoverhead.
If access to data by multiple users is notrequired.
-
7/30/2019 1 Databases and Database Management Systems
47/83
Introduction to Database Systems 47
When no DBMS may suffice:
If the database system is not able to handlethe complexity of data because of modeling
limitations
If the database users need special operationsnot supported by the DBMS.
-
7/30/2019 1 Databases and Database Management Systems
48/83
Introduction to Database Systems 48
6. Data Models
Data Model:
A set of concepts to describe the structure of a
database, and certain constraints that the
database should obey.
-
7/30/2019 1 Databases and Database Management Systems
49/83
Introduction to Database Systems 49
6. Data Models
Data Model Operations:
Operations for specifying database retrievals and
updates by referring to the concepts of the data
model.
Operations on the data model may include basicoperationsand user-defined operations
-
7/30/2019 1 Databases and Database Management Systems
50/83
Introduction to Database Systems 50
Categories of data models:
Conceptualdata models
(high-level, semantic)
Physicaldata models
(low-level, internal)
Logical(representational, Implementation)data models
(record-oriented)
-
7/30/2019 1 Databases and Database Management Systems
51/83
Introduction to Database Systems 51
Conceptual data models
Provide concepts that are close to the waymany users perceive data.
Also called entity-based or object-based data
models. Use concepts such as entities, attributes and
relationship.
-
7/30/2019 1 Databases and Database Management Systems
52/83
Introduction to Database Systems 52
Physical data models:
Provide concepts that describe details of howdata is stored in the computer.
storage structure
Define record formats, record orderings and accesspath.
Access path
Structure that makes the search for particular
database records efficient.
-
7/30/2019 1 Databases and Database Management Systems
53/83
Introduction to Database Systems 53
Implementation data models:
Also called logical data model
Provide concepts that fall between the above
two, balancing user views with some
computer storage details.
-
7/30/2019 1 Databases and Database Management Systems
54/83
Introduction to Database Systems 54
6A. HISTORY OF DATA MODELS
Relational Model
Network Model
Hierarchical Data Model
Object-oriented Data Model(s
Object-Relational Models
-
7/30/2019 1 Databases and Database Management Systems
55/83
Introduction to Database Systems 55
Relational Model:
proposed in 1970 by E.F. Codd (IBM), firstcommercial system in 1981-82.
Now in several commercial products
DB2, ORACLE,
SQL Server,
SYBASE, INFORMIX.
-
7/30/2019 1 Databases and Database Management Systems
56/83
Introduction to Database Systems 56
Object-Relational Models :
Most Recent Trend.
Started with Informix Universal Server.
Exemplified in the latest versions of Oracle-
10g, DB2, and SQL Server etc. systems.
-
7/30/2019 1 Databases and Database Management Systems
57/83
Introduction to Database Systems 57
7. Schemas versus Instances
Database Schema: The description of a database.
Includes
descriptions of the database structure and the constraints that should hold on the
database.
Schema Diagram: A diagrammatic display of (some aspects of) a
database schema.
-
7/30/2019 1 Databases and Database Management Systems
58/83
Introduction to Database Systems 58
Schema diagram for University database
-
7/30/2019 1 Databases and Database Management Systems
59/83
Introduction to Database Systems 59
7. Schemas versus Instances
Database Instance: The actual data stored in a database at a
particular moment in time .
Also called database state(oroccurrence orsnapshot or instances).
-
7/30/2019 1 Databases and Database Management Systems
60/83
Introduction to Database Systems 60
7. Schemas versus Instances
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 constraintsof the database.
-
7/30/2019 1 Databases and Database Management Systems
61/83
-
7/30/2019 1 Databases and Database Management Systems
62/83
Introduction to Database Systems 62
8. Three-Schema Architecture
Proposed to support DBMS characteristics of: Program-data independence.
Support of multiple views of the data.
Use of catalog to store the database description(schema).
-
7/30/2019 1 Databases and Database Management Systems
63/83
Introduction to Database Systems 63
8. Three-Schema Architecture
Defines DBMS schemas at three levels : Internal schema
Conceptual schema
External schemas
-
7/30/2019 1 Databases and Database Management Systems
64/83
Introduction to Database Systems 64
The three-schema architecture.
-
7/30/2019 1 Databases and Database Management Systems
65/83
-
7/30/2019 1 Databases and Database Management Systems
66/83
Introduction to Database Systems 66
Conceptual schema
Conceptual schemaat the conceptual level todescribe the structure and constraints for the
whole database.
Hide the details of physical structure andconcentrates on describing entities, data
types, relationships, user operations and
constraints.
Uses a conceptual or an implementation
data model.
-
7/30/2019 1 Databases and Database Management Systems
67/83
Introduction to Database Systems 67
External schemas
External schemasat the external level todescribe the various user views.
Usually uses the same data model as the
conceptual level.
-
7/30/2019 1 Databases and Database Management Systems
68/83
Introduction to Database Systems 68
Three-Schema Architecture
Mappings among schema levels are alsoneeded.
Programs refer to an external schema, and
are mapped by the DBMS to the internalschema for execution.
-
7/30/2019 1 Databases and Database Management Systems
69/83
Introduction to Database Systems 69
9 Data Independence
Logical Data Independence The capacity to change the conceptual schema
without having to change the external schemas
and their application programs.
Physical Data Independence
The capacity to change the internal schema
without having to change the conceptual schema.
-
7/30/2019 1 Databases and Database Management Systems
70/83
Introduction to Database Systems 70
Data Independence
When a schema at a lower level is changed,only the mappings between this schema andhigher-level schemas need to be changed ina DBMS that fully supports data
independence. The higher-level schemas themselves are
unchanged.
Hence, the application programs need not bechanged since the refer to the externalschemas.
-
7/30/2019 1 Databases and Database Management Systems
71/83
Introduction to Database Systems 71
10. DBMS Languages
Data Definition Language (DDL)
Data Manipulation Language (DML)
Data Control Language (DCL)
-
7/30/2019 1 Databases and Database Management Systems
72/83
Introduction to Database Systems 72
Data Definition Language (DDL):
Used by the DBA and database designers tospecify the conceptual schema of adatabase.
In many DBMSs, the DDL is also used todefine internaland external schemas(views).
In some DBMSs, separate storage definition
language (SDL) and view definition language(VDL) are used to define internal and external
schemas.
Data Manipulation Language
-
7/30/2019 1 Databases and Database Management Systems
73/83
Introduction to Database Systems 73
p g g(DML):
Used to specify database retrievals andupdates.
DML commands (data sublanguage) can be
embedded in a general-purpose programminglanguage (host language), such as C, COBOL,
PL/1 or PASCAL.
Alternatively, stand-alone DML commands can be
applied directly (query language).
-
7/30/2019 1 Databases and Database Management Systems
74/83
Introduction to Database Systems 74
DBMS Languages
High Level or Non-procedural Languages: e.g., SQL, are set-oriented and specify what data
to retrieve than how to retrieve. Also called
declarative languages.
Low Level or Procedural Languages:
record-at-a-time; they specify how to retrieve
data and include constructs such as looping.
-
7/30/2019 1 Databases and Database Management Systems
75/83
Introduction to Database Systems 75
11. DBMS Interfaces
Menu-based interfaces for web clients orbrowsing
Forms-based interfaces
Graphical user interfaces Natural language interfaces
Speech input and output
Interfaces for parametric users
-
7/30/2019 1 Databases and Database Management Systems
76/83
Introduction to Database Systems 76
DBMS Interfaces
Interfaces for the DBA: Creating accounts, granting authorizations
Setting system parameters
Changing schemas or access path
Component modules of a DBMS and
-
7/30/2019 1 Databases and Database Management Systems
77/83
Introduction to Database Systems 77
Component modules of a DBMS andtheir interactions.
-
7/30/2019 1 Databases and Database Management Systems
78/83
Introduction to Database Systems 78
13. Database System Utilities
To perform certain functions such as: Loading data stored in files into a database.
Backing up the database periodically on tape.
Reorganizing database file structures. Report generation utilities.
Performance monitoring utilities.
Other functions, such as sorting , user monitoring ,
data compression , etc.
-
7/30/2019 1 Databases and Database Management Systems
79/83
Introduction to Database Systems 79
Data dictionary / repository:
Used to store schema descriptions and otherinformation such as design decisions,application program descriptions, userinformation, usage standards, etc.
Active data dictionary is accessed by DBMSsoftware and users/DBA.
Passive data dictionary is accessed byusers/DBA only.
-
7/30/2019 1 Databases and Database Management Systems
80/83
Introduction to Database Systems 80
14. Classification of DBMSs
Based on data model
Other classifications
-
7/30/2019 1 Databases and Database Management Systems
81/83
Introduction to Database Systems 81
Based on the data model used:
Traditional: Relational,
Network,
Hierarchical. Emerging:
Object-oriented,
Object-relational.
-
7/30/2019 1 Databases and Database Management Systems
82/83
Introduction to Database Systems 82
Other classifications:
Single-user (typically used with micro- computers)vs. multi-user (most DBMSs).
Centralized (uses a single computer with onedatabase) vs. distributed (uses multiple computers,
multiple databases) Distributed Database Systems have now come to be
known as client server based database systems becausethey do not support a totally distributed environment, butrather a set of database servers supporting a set of clients.
Example of a Datab
ase
-
7/30/2019 1 Databases and Database Management Systems
83/83
p
(with a Logical Data Model)
top related