0% found this document useful (0 votes)
12 views26 pages

Fundamental of Database CH-2

Uploaded by

mersenjaleta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views26 pages

Fundamental of Database CH-2

Uploaded by

mersenjaleta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Fundamentals of Database

System(cosc2041)

Chapter Two
Database System Concepts and
Architecture
Chapter outline
 Data Models and Their Categories
 History of Data Models
 Schemas, Instances, and States
 Three-Schema Architecture
 Data Independence
 DBMS Languages and Interfaces
 Database System Utilities and Tools
 Centralized and Client-Server Architectures
 Classification of DBMSs

By: Melishew Awoke(MSc) 2


Data Model:
• A set of concepts to describe the structure of a database, the operations for
manipulating these structures, and certain constraints that the database
should obey.
Data Model Structure and Constraints:
• Constructs are used to define the database structure
• Constructs typically include elements (and their data types) as well as
groups of elements (e.g entity, record, table), and relationships among such
groups
• Constraints specify some restrictions on valid data; these constraints must
be enforced at all times
Data Model Operations:
• These operations are used for specifying database retrievals and updates by
referring to the constructs of the data model.
• Operations on the data model may include basic model operations (e.g.
generic insert, delete, update) and user-defined operations;
By: Melishew Awoke(MSc) 3
Categories of Data Models
A. Conceptual (high-level, semantic) data models:
• Provide concepts that are close to the way many users perceive data.
• The way users perceive the data.
• (Also called entity-based or object-based data models.)
• The community view of the database.
• This level describes what data is stored in the database and the relationships
among the data.
• All the constraints on the data;
• Semantic information about the data;
• security and integrity information.
• entities, their attributes, and their relationships;

By: Melishew Awoke(MSc) 4


B. Physical (low-level, internal) data models:
• The way the DBMS and the operating system perceive the data.
• Provide concepts that describe details of how data is stored in the
computer.
• The physical representation of the database on the computer.
• The internal level is concerned with such things as:
• Storage space allocation for data and indexes;
• Record descriptions for storage (with stored sizes for data items);
• Record placement;
• Data compression and data encryption techniques.
C. Implementation (representational) data models:
• Provide concepts that fall between the above two, used by many
commercial DBMS implementations (e.g. relational data models used in
many commercial systems).
• which provide concepts that may be easily understood by end users.
• Representational data models hide many details of data storage on disk
but can be implemented on a computer system directly.
By: Melishew Awoke(MSc) 5
Schemas versus Instances
Database schema: A database schema is the skeleton structure that
represents the logical view of the entire database.
• It defines how the data is organized and how the relations among them
are associated.
• It formulates all the constraints that are to be applied on the data.
• Simply Schema is the description of a database.
• Includes descriptions of the database structure, data types, and the
constraints on the database.
• The data in the database at any particular point in time is called a
database instance.
Schema Diagram:
• An illustrative display of (some aspects of) a database schema.
Schema Construct:
• A component of the schema or an object within the schema, e.g., student,
course.

By: Melishew Awoke(MSc) 6


Database State:
• The actual data stored in a database at a particular moment in time. This
includes the collection of all the data in the database.
• Also called database instance (or occurrence or snapshot).
• The term instance is also applied to individual database components, e.g.
record instance, table instance, entity instance
Initial Database State:
• Refers to the database state when it is initially loaded into the system.
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.

By: Melishew Awoke(MSc) 7


• Schema is sometimes called the intension of the database
• Instance is called an extension(or state) of the database.

By: Melishew Awoke(MSc) 8


• The following relations contains database instances or values

Name Student_num Class Major


ber

Smith 17 1 CS

Brown 8 2 CS

By: Melishew Awoke(MSc) 9


Three-Schema Architecture

• Proposed to support DBMS characteristics of:

• Program-data independence.

• Support of multiple views of the data.

• Not explicitly used in commercial DBMS products, but has been useful in
explaining database system organization

Defines DBMS schemas at three levels:


• at the internal level to describe physical storage structures and access paths.
Internal schema
• Is a complete description of the internal model, containing the definitions of
stored records, the methods of representation, the data fields, and the
indexes and storage structures used.
• Typically uses a physical data model.
By: Melishew Awoke(MSc) 10
• Conceptual schema at the conceptual level to describe the structure and
constraints for the whole database for a community of users.
• Describes all the entities, attributes, and relationships together with integrity
constraints.
• Uses a conceptual or an implementation data model.
• External schemas (also called subschema) at the external level to
describe the various user views.
• Correspond to different views of the data.
• Usually uses the same data model as the conceptual level.
The three-schema architecture

By: Melishew Awoke(MSc) 11


The three-schema architecture

• Mappings among schema levels are needed to transform requests and data.
• Programs refer to an external schema, and are mapped by the DBMS to the
internal schema for execution.
• Data extracted from the internal DBMS level is reformatted to match the
user’s external view (e.g. formatting the results of an SQL query for display
in a Web page).

By: Melishew Awoke(MSc) 12


Data independence: is the ability to modify the schema definition in one
level should not affect the schema definition in the next higher level.
• Two types of Data Independence:
1. Physical Data Independence
2. Logical Data Independence
Logical Data Independence:
• Logical data is data about database, that is, it stores information about how
data is managed inside.
• The capacity to change the conceptual schema without having to change the
external schemas and their associated application programs.
Physical Data Independence:
• The capacity to change the internal schema without having to change the
conceptual schema.
• For example, the internal schema may be changed when certain file structures
are reorganized or new indexes are created to improve database performance

By: Melishew Awoke(MSc) 13


• When a schema at a lower level is changed, only the mappings
between this schema and higher-level schemas need to be changed in
a DBMS that fully supports data independence.
• The higher-level schemas themselves are unchanged.
• Hence, the application programs need not be changed since they refer
to the external schemas.

 DBMS Languages
• A data sublanguage consists of two parts:
• Data Definition Language(DDL)
• Data Manipulation Language(DML).
• The DDL is used to specify the database schema
By: Melishew Awoke(MSc) 14
• The DML is used to both read and update the database.
• These languages are called data sublanguages because they do not include
constructs for all computing needs such as conditional or iterative statements,
which are provided by the high-level programming languages.
• Many DBMSs have a facility for embedding the sublanguage in a high-level
programming language such as COBOL, Fortran, Pascal, Ada, ‘C’, C++, Java, or
Visual Basic.
High-Level or Non-procedural Languages: These include the
relational language SQL. May be used in a standalone way or may be embedded
in a programming language
Low Level or Procedural Languages: These must be embedded in a
programming language.
View definition language (VDL)- Specifies user views/mappings to
conceptual schema.
 Storage definition language (SDL)- Specifies the internal schema

By: Melishew Awoke(MSc) 15


Data Definition Language (DDL):
• Used by the DBA and database designers to specify the conceptual schema of a
database.
• In many DBMSs, the DDL is also used to define internal and external schemas
(views).
• In some DBMSs, separate storage definition language (SDL) and view
definition language (VDL) are used to define internal and external schemas.
• SDL is typically realized via DBMS commands provided to the DBA and
database designers
Data Manipulation Language (DML):
• Used to specify database retrievals and updates
• DML commands (data sublanguage) can be embedded in a general-purpose
programming language (host language), such as COBOL, C, C++, or Java.
• A library of functions can also be provided to access the DBMS from a
programming language
• Alternatively, stand-alone DML commands can be applied directly (called a query
language).
By: Melishew Awoke(MSc) 16
• Types of DML
High Level or Non-procedural Language:
• For example, the SQL relational language
• Are “set”-oriented and specify what data to retrieve rather than how to
retrieve it.
• Also called declarative languages.
Low Level or Procedural Language:
• Retrieve data one record-at-a-time;
• Constructs such as looping are needed to retrieve multiple records, along
with positioning pointers.
DBMS Interfaces
 Stand-alone query language interfaces
• Example: Entering SQL queries at the DBMS interactive SQL interface
(e.g. SQL*Plus in ORACLE)
 Programmer interfaces for embedding DML in programming languages

By: Melishew Awoke(MSc) 17


 User-friendly interfaces
• Menu-based, forms-based, graphics-based, etc.
 Menu-based interfaces for Web clients or browsing
 Forms-based interfaces
 Graphical user interfaces
 Natural language interfaces
 Speech input and output
 Interfaces for parametric users
 Interfaces for the DBA
Database System Utilities
To perform certain functions such as:
 Loading data stored in files into a database. Includes data conversion tools.

 Backing up the database periodically on tape.

By: Melishew Awoke(MSc) 18


 Reorganizing database file structures.

 Report generation utilities.

 Performance monitoring utilities.

 Other functions, such as sorting, user monitoring, data compression, etc.

Other Tools
Data dictionary / repository:
 Used to store schema descriptions and other information such as design
decisions, application program descriptions, user information, usage
standards, etc.
 Active data dictionary is accessed by DBMS software and users/DBA.

 Passive data dictionary is accessed by users/DBA only.

By: Melishew Awoke(MSc) 19


Application Development Environments and CASE (computer-aided software
engineering) tools:
Examples:
 PowerBuilder (Sybase)

 JBuilder (Borland)

 JDeveloper 10G (Oracle)

The next figure shows


Typical DBMS
component module of

By: Melishew Awoke(MSc) 20


Centralized and Client-Server DBMS Architectures
Centralized DBMS:
 Combines everything into single system including:-
 DBMS software,
 hardware,
 application programs, and
 user interface processing software.
 User can still connect through a remote terminal.
 however, all processing is done at centralized site.

By: Melishew Awoke(MSc) 21


Basic 2-tier Client-Server Architectures
• Specialized Servers with Specialized functions
• Print server
• File server
• DBMS server
• Web server
• Email server
• Clients can access the specialized servers as needed

By: Melishew Awoke(MSc) 22


Clients
• Provide appropriate interfaces through a client software module to access
and utilize the various server resources.
• Clients may be diskless machines or PCs or Workstations with disks with only
the client software installed.
• Connected to the servers via some form of a network.
• (LAN: local area network, wireless network, etc.)
DBMS Server
• Provides database query and transaction services to the clients
• Relational DBMS servers are often called SQL servers, query servers, or
transaction servers
• Applications running on clients utilize an Application Program Interface (API)
to access server databases via standard interface Like

By: Melishew Awoke(MSc) 23


• ODBC: Open Database Connectivity standard
• JDBC: for Java programming access
• Client and server must install appropriate client module and server module
software for ODBC or JDBC
Two Tier Client-Server Architecture
• A client program may connect to several DBMSs, sometimes called the data
sources.
• In general, data sources can be files or other non-DBMS software that
manages data.
• Other variations of clients are possible: e.g., in some object DBMSs, more
functionality is transferred to clients including data dictionary functions,
optimization and recovery across multiple servers, etc.

By: Melishew Awoke(MSc) 24


Three Tier Client-Server Architecture
• Common for Web applications
• Intermediate Layer called Application Server or Web Server:
• Stores the web connectivity software and the business logic part of the
application used to access the corresponding data from the database
server
• Acts like a conduit for sending partially processed data between the
database server and the client.
• Three-tier Architecture Can Enhance Security:
• Database server only accessible via middle tier
• Clients cannot directly access database server

By: Melishew Awoke(MSc) 25


Classification of DBMS
I. Based on the data model used
• Traditional: Relational, Network, Hierarchical.
• Emerging: Object-oriented, Object-relational.
II. Other classifications
• Single-user (typically used with personal computers)
vs. multi-user (most DBMSs).
• Centralized (uses a single computer with one database)
vs. distributed (uses multiple computers, multiple databases)

By: Melishew Awoke(MSc) 26

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