SlideShare a Scribd company logo
1 of 45
Fundamentals of Database systems
Ministry of Higher Education
Bamyan University
Computer Science Department
1
Presented by : Mustafa Kamel Mohammadi
Email : bamian.cs@gmail.com
Database System Concepts and Architecture
Fundamentals of database system 6th edition
Learning objectives
 In this chapter you will learn
 DBMS evolution
 Data model
 Three schema architecture
 DBMS language
 DBMS interfaces
 DBMS components
 Classification of DBMS
2
DBMSs evolution
 Monolithic systems
 The whole DBMS software package was in one integrated system
 Client/server system architecture
 Server module stores data
 Client access to the server
 Client module run on a user personal computer like application programs and user interfaces
 Distributed systems
 large centralized mainframe computers are being replaced by hundreds of distributed
workstations
3
Data model
 One fundamental characteristic of the database approach is Data abstraction
 Data abstraction generally refers to
 Hiding of details of data organization and storage
 Highlighting of the essential features for an improved understanding of data
 Different users can perceive data at their preferred level of detail
 A Data model is a collection of concepts that can be used to describe the
structure of a database
 Structure of a database : the data types, relationships, and constraints
 provides the necessary means to achieve this abstraction
Most data models also include operations
 Basic: retrieve or updating database….
 User defined: calculating some values
4
5
Data models
 High-level or conceptual data models
 Provide concepts that are close to the way many users’ understanding
 Use concepts such as entities, attributes, and relationships
 Entity represents a real-world object or concept, such as an employee or a project
 Attribute represents some characteristics of an Entity
 Relationship represents an association among the entities
 Entity-Relationship (ER) model a popular high-level conceptual data model
6
Cont.
 Representational (or Implementation) data models
 Easily understood by end users but that are not too far removed from the way data is
organized in computer storage
 Widely used Relational data model and so Network and Hierarchical
 Represent data by using record structures
 Low-level or Physical data models
 Provide concepts that describe the details of how data is stored on the computer storage
media
7
8
High Level Data model
Representational Data model
Schemas
 Description of a Database is called the Database schema
 Specified during database design and is not expected to change frequently
 Displayed schema is called a Schema diagram
 Data models have their own conventions for schema representation
 Shows neither the data type of each data item, nor the relationships
 Object in the schema is called schema construct
 Like STUDENT ,EMPLOYEE…
 Schema evolution is the changes in database schema
9
10
Schema diagram Ex.
Database Instances and Database state
 The data in the database at a particular moment in time is called a database
state or snapshot
 Database will contain the set of individual student entities (records) as its
instances
11
12
Database state Ex.
Database State
 Empty state
 When we define a new database, we specify its database schema only to the DBMS.
 Initial state
 The database is first populated or loaded with the initial data
 Current state
 Every time an update operation is applied to the database
 Valid state
 The DBMS is responsible for ensuring that every state of the database is valid
 A state that satisfies the structure and constraints specified in the schema
The schema is sometimes called the intension, and a database state is called an
extension of the schema
13
The Three-Schema Architecture
 Architecture for database systems
 The goal of the three-schema architecture is to separate the user applications from the physical
database
1. The Internal level has an internal schema, which describes the physical storage structure of the
database
2. The Conceptual level has a conceptual schema, which describes the structure of the whole
database for a community of users
3. The External or view level includes a number of external schemas or user views. Each external
schema describes the part of the database that a particular user group is interested in
14
15
Cont.
 Tool are available for visualizing the schema levels
 Some DBMSs clearly separates three schemas
 Most DBMSs do not separate the three levels completely and explicitly
 The three schemas are only descriptions of data, the stored data that actually exists is at the
physical level only
 The processes of transforming requests and results between levels are called mappings
16
As a result …. Data Independence
 Defined as the capacity to change the schema at one level of a database system without having to
change the schema at the next higher level.
 Two types of data independence
1. Logical data independence is the capacity to change the conceptual schema without having to
change external schemas or application programs
2. Physical data independence is the capacity to change the internal schema without having to
change the conceptual schema
Note:
few DBMSs have implemented the full three schema architecture.
Because:
Overhead of mapping during compilation or execution of a query or program
17
DBMS languages
The DBMS must provide appropriate languages and interfaces for each category of users
1-DDL (Data definition language)
 Used by the DBA and by database designers to define both conceptual and internal schemas In
DBMSs
 DDL compiler whose function is to process DDL statements
2- SDL (storage definition language)
 Used to specify the internal schema
 No specific language that performs the role of SDL.
18
Cont.
3 – View definition language (VDL)
To specify user views and their mappings to the conceptual schema.
In most DBMSs the DDL is used to define both conceptual and external schemas.
4 – DML (data manipulating language)
 Language used to manipulate data in database
 Select data
 Update data
 Insert data
 Delete data
19
SQL (Structured Query Language)
In current DBMSs the preceding types of languages are usually not considered
distinct languages
A comprehensive integrated language is used that includes
 DDL
 DML
 VDL
 SDL
Ex : SQL relational database language
 The SDL was a component in early versions of SQL but has been removed
20
DBMS interfaces
Graphical User Interfaces
 A GUI typically displays a schema to the user in diagrammatic form.
 The user then can specify a query by manipulating the diagram.
 In many cases, GUIs utilize both menus ,forms and other pointing objects.
Menu-Based Interfaces for Web Clients or Browsing
 These interfaces present the user with lists of options (called menus) that lead the user through
the formulation of a request
Forms-Based Interfaces
 Displays a form to each user ,Users can fill out all of the form entries to insert new data or
retrieve matching data.
21
22
DBMS interfaces
Natural Language Interfaces
 Accept requests written in English or some other language and attempt to understand them
 Like search engines such as Google, Ask…
Speech Input and Output
 Use of speech as an input query and speech as an answer to a question or result of a request.
 Examples are telephone directory, flight arrival/departure, and credit card account information
 Input is detected using a library of predefined words
 Output by conversion from text or numbers into speech
23
24
Cont.
Interfaces for the DBA.
Most database systems contain privileged commands that can be used only by
the DBA staff. These include commands for
 Creating accounts
 setting system parameters
 granting account authorization
 changing a schema
 reorganizing the storage structures of a database
 …..
 Like PHPmyAdmin
25
26
DBMS components
Access to the disk is controlled primarily by the operating system
The DDL compiler processes schema definitions, specified in the DDL, and stores
descriptions of the schemas (meta-data) in the DBMS catalog
Some uses buffer management module to schedule disk read/write
Stored data manager module of the DBMS controls access to DBMS information
that is stored on disk include read/write operations
Query compiler that compiles the query into an internal form.
Query optimizer used to rearrange and reorder operations, elimination of
redundancies, and use of correct algorithms to execute queries.
Pre compiler extracts DML commands from an application program written in a
host programming language and turning them to object code.
Runtime database processor executes
 Commands, Queris, Transactions
27
28
Database system Utilities
 Loading utility is used to load existing data files such as text files or sequential files into the
database by using conversion tools
 Backup utility creates a backup copy of the database, usually by dumping the entire database
onto tape or other mass storage medium
 Database storage reorganization utility can be used to reorganize a set of database files into
different file organizations, and improve performance
 Performance monitoring utility monitors database usage and provides statistics to the DBA
Note:
Other utilities may be available for sorting files, handling data compression,
monitoring access by users, interfacing with the network, and performing other
functions.
29
Tools, Application Environments and Communications Facilities
Data dictionary (or data repository) system.
 Stores information about
 Schemas
 Constraints
 Design decision
 Usage standards
 Application program description
 User information
 Such a system is also called an information repository.
Application development environments
 provide an environment for developing database applications
 Database design
 GUI development
 Querying and updating
 Application program development
30
Cont.
Communications software
 Whose function is to allow users at locations remote from the database system site to access the
database through computer terminals, workstations, or personal computers
31
Centralized and Client/Server Architectures for DBMSs
Centralized DBMSs Architecture
Uses mainframe computers to provide the main processing for all system
functions, including user application programs and user interface programs, as
well as all the DBMS functionality
Users accessed such systems via computer terminals that did not have processing
power and only provided display capabilities.
Basic Client/Server Architectures
As prices of hardware declined DBMS systems started to exploit the available
processing power at the user side, which led to client/server DBMS architectures
The idea is to define specialized servers
 file server that maintains the files of the client machines
 printer server are connected to printers ,all print requests are forwarded to them
 Web servers
 e-mail servers
32
Cont.
Client machines access to these servers, as well as to run local applications
 Some machines would be client sites only (for example, diskless workstations or
workstations/PCs with disks that have only client software installed)
A server is a system containing both hardware and software that can provide
services to the client machines, such as file access, printing, archiving, or
database access
 In general, some machines install only client software, others only server software, and still
others may include both client and server software
33
34
35
Two-Tier Client/Server Architectures for DBMSs
 In Two-tier architectures the software components are distributed over two systems client and
server
 Client side contains the user interface and application programs
 The query and transaction functionality related to SQL processing remained on the server side.
 The server is often called a query server or transaction server because it provides these two
functionalities. In an RDBMS, the server is also often called an SQL server
 A standard called Open Database Connectivity (ODBC) provides an application programming
interface (API), which allows client-side programs to call the DBMS
 Client program can actually connect to several RDBMSs and send query and transaction requests
using the ODBC API
 Java has defined JDBC that allows Java client programs to access one or more DBMSs through a
standard interface
36
Three-Tier and n-Tier Architectures for Web Applications
 The three-tier architecture adds an intermediate layer between the client and the
database server
 Middle tier is called the application server or the Webserver
 The intermediate server
 accepts requests from the client
 processes the request
 sends database queries and commands to the database server
 The user interface, application rules, and data access act as the three tiers
1. The presentation layer displays information to the user and allows data entry
2. The business logic layer handles intermediate rules and constraints before data is
passed up to the user or down to the DBMS
1. Check credintionals , interface loading, device recognition, location detection
3. The bottom layer includes all data management services.
 It is possible to divide the layers between the user and the stored data further into finer
components, thereby giving rise to n-tier architectures
37
Cont.
where (n) may be four or five tiers. Typically, the business logic layer is divided
into multiple layers
Used in distributed computing that allows
 Each layer can work independently
 Can handle different tasks
 Encryption/ Decryption
 Compression
 GPS
 …
38
39
Classification of Database Management Systems
Based on data model
 Relational DBMSs
 OODBMSs
 ORDBMSs
 Network DBMSs (old)
 hierarchical DBMSs (old)
 native XML DBMSs ( experimental)
 ….
Number of users
 Single-user systems support only one user at a time and are mostly used with PCs.
 Multiuser systems, which include the majority of DBMSs, support concurrent multiple users
40
Cont.
Number of sites
 Centralized if the data is stored at a single computer site.
 Distributed DBMS (DDBMS) can have the actual database and DBMS software distributed over
many sites
Cost
 Free ( open source)
 Commercial ( vary in cost)
Purpose
 General purpose
 Specific purpose
41
Hierarchical DBMSs
 Represents data as hierarchical tree structures
 Each hierarchy represents a number of related records
 Has problem when specifying non hierarchical relationship
42
Network data model
Network Model
 Use links to represent relationships between data, which forms a data network
 Network Model is able to model complex relationships
 Database contains a complex array of pointers that thread through a set of records. (implemented
by linked lists)
43
Exercise
Define the following terms:
• Data model, database schema, database state,
• internal schema, conceptual schema, external schema, data independence,
• DDL, DML, SDL, VDL, query language, host language, data sublanguage,
• DBMS utility, catalog, client/server architecture, three-tier and n-tier architecture.
44
45

More Related Content

What's hot

1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
koolkampus
 
2 database system concepts and architecture
2 database system concepts and architecture2 database system concepts and architecture
2 database system concepts and architecture
Kumar
 
Data base management system
Data base management systemData base management system
Data base management system
Navneet Jingar
 
Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01
Jotham Gadot
 

What's hot (20)

1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
 
Type of database models
Type of database modelsType of database models
Type of database models
 
Dbms Introduction and Basics
Dbms Introduction and BasicsDbms Introduction and Basics
Dbms Introduction and Basics
 
11 Database Concepts
11 Database Concepts11 Database Concepts
11 Database Concepts
 
Introduction to Oracle Database
Introduction to Oracle DatabaseIntroduction to Oracle Database
Introduction to Oracle Database
 
Database systems - Chapter 2
Database systems - Chapter 2Database systems - Chapter 2
Database systems - Chapter 2
 
Intro to dbms
Intro to dbmsIntro to dbms
Intro to dbms
 
2 database system concepts and architecture
2 database system concepts and architecture2 database system concepts and architecture
2 database system concepts and architecture
 
EER Model
EER ModelEER Model
EER Model
 
Introduction to database
Introduction to databaseIntroduction to database
Introduction to database
 
Dbms
DbmsDbms
Dbms
 
Data base management system
Data base management systemData base management system
Data base management system
 
Chapter8 pl sql
Chapter8 pl sqlChapter8 pl sql
Chapter8 pl sql
 
Dbms architecture
Dbms architectureDbms architecture
Dbms architecture
 
Database Management System
Database Management SystemDatabase Management System
Database Management System
 
Dbms slides
Dbms slidesDbms slides
Dbms slides
 
STRUCTURE OF SQL QUERIES
STRUCTURE OF SQL QUERIESSTRUCTURE OF SQL QUERIES
STRUCTURE OF SQL QUERIES
 
Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01
 
Chapter1
Chapter1Chapter1
Chapter1
 
Database : Relational Data Model
Database : Relational Data ModelDatabase : Relational Data Model
Database : Relational Data Model
 

Viewers also liked

00.00 fundamentals of database management syllabus
00.00 fundamentals of database management syllabus00.00 fundamentals of database management syllabus
00.00 fundamentals of database management syllabus
Bishal Ghimire
 
09.02 normalization example
09.02 normalization example09.02 normalization example
09.02 normalization example
Bishal Ghimire
 
market-potential defination
 market-potential defination market-potential defination
market-potential defination
Mayur Patel
 
Database system architecture
Database system architectureDatabase system architecture
Database system architecture
Dk Rukshan
 

Viewers also liked (20)

00.00 fundamentals of database management syllabus
00.00 fundamentals of database management syllabus00.00 fundamentals of database management syllabus
00.00 fundamentals of database management syllabus
 
09.02 normalization example
09.02 normalization example09.02 normalization example
09.02 normalization example
 
Data manipulation language
Data  manipulation languageData  manipulation language
Data manipulation language
 
Normalization,ddl,dml,dcl
Normalization,ddl,dml,dclNormalization,ddl,dml,dcl
Normalization,ddl,dml,dcl
 
Advanced Arel: When ActiveRecord Just Isn't Enough
Advanced Arel: When ActiveRecord Just Isn't EnoughAdvanced Arel: When ActiveRecord Just Isn't Enough
Advanced Arel: When ActiveRecord Just Isn't Enough
 
Part 7 ddl dan dml lant..retriving data up
Part 7  ddl dan dml lant..retriving data upPart 7  ddl dan dml lant..retriving data up
Part 7 ddl dan dml lant..retriving data up
 
market-potential defination
 market-potential defination market-potential defination
market-potential defination
 
DDL DML sysytems
DDL DML sysytemsDDL DML sysytems
DDL DML sysytems
 
01.01 introduction to database
01.01 introduction to database01.01 introduction to database
01.01 introduction to database
 
Relational Model in dbms & sql database
Relational Model in dbms & sql databaseRelational Model in dbms & sql database
Relational Model in dbms & sql database
 
Chapter02
Chapter02Chapter02
Chapter02
 
Database language
Database languageDatabase language
Database language
 
Database management system basic, database, database management, learn databa...
Database management system basic, database, database management, learn databa...Database management system basic, database, database management, learn databa...
Database management system basic, database, database management, learn databa...
 
Database system architecture
Database system architectureDatabase system architecture
Database system architecture
 
Introduction to SQL
Introduction to SQLIntroduction to SQL
Introduction to SQL
 
Chapter 1 Fundamentals of Database Management System
Chapter 1 Fundamentals of Database Management SystemChapter 1 Fundamentals of Database Management System
Chapter 1 Fundamentals of Database Management System
 
SQL - Structured query language introduction
SQL - Structured query language introductionSQL - Structured query language introduction
SQL - Structured query language introduction
 
Database management system
Database management systemDatabase management system
Database management system
 
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with ExamplesDML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
 
Database management system
Database management systemDatabase management system
Database management system
 

Similar to Fundamentals of database system - Database System Concepts and Architecture

Database Design Slide 1
Database Design Slide 1Database Design Slide 1
Database Design Slide 1
ahfiki
 

Similar to Fundamentals of database system - Database System Concepts and Architecture (20)

Database Management system, database architecture unikkkkkkkkkkkkkkk
Database Management system, database architecture unikkkkkkkkkkkkkkkDatabase Management system, database architecture unikkkkkkkkkkkkkkk
Database Management system, database architecture unikkkkkkkkkkkkkkk
 
A N S I S P A R C Architecture
A N S I  S P A R C  ArchitectureA N S I  S P A R C  Architecture
A N S I S P A R C Architecture
 
DATABASE FUNCTIONS
DATABASE FUNCTIONSDATABASE FUNCTIONS
DATABASE FUNCTIONS
 
Database-management-system-dbms-ppt.pptx
Database-management-system-dbms-ppt.pptxDatabase-management-system-dbms-ppt.pptx
Database-management-system-dbms-ppt.pptx
 
csedatabasemanagementsystemppt-170825044344.pdf
csedatabasemanagementsystemppt-170825044344.pdfcsedatabasemanagementsystemppt-170825044344.pdf
csedatabasemanagementsystemppt-170825044344.pdf
 
Database Management System ppt
Database Management System pptDatabase Management System ppt
Database Management System ppt
 
Database Management Systems.ppt
Database Management Systems.pptDatabase Management Systems.ppt
Database Management Systems.ppt
 
Database Design Slide 1
Database Design Slide 1Database Design Slide 1
Database Design Slide 1
 
Bsc cs ii-dbms- u-ii-database system concepts and architecture
Bsc cs ii-dbms- u-ii-database system concepts and architectureBsc cs ii-dbms- u-ii-database system concepts and architecture
Bsc cs ii-dbms- u-ii-database system concepts and architecture
 
database introductoin optimization1-app6891.pdf
database introductoin optimization1-app6891.pdfdatabase introductoin optimization1-app6891.pdf
database introductoin optimization1-app6891.pdf
 
Introduction to Database
Introduction to DatabaseIntroduction to Database
Introduction to Database
 
Lecture 1 to 3intro to normalization in database
Lecture 1 to 3intro to  normalization in databaseLecture 1 to 3intro to  normalization in database
Lecture 1 to 3intro to normalization in database
 
Mca ii-dbms- u-ii-the relational database model
Mca ii-dbms- u-ii-the relational database modelMca ii-dbms- u-ii-the relational database model
Mca ii-dbms- u-ii-the relational database model
 
Unit01 dbms
Unit01 dbmsUnit01 dbms
Unit01 dbms
 
LectDBS_1.pdf
LectDBS_1.pdfLectDBS_1.pdf
LectDBS_1.pdf
 
27 fcs157al2
27 fcs157al227 fcs157al2
27 fcs157al2
 
Database concepts and Archeticture Ch2 with in class Activities
Database concepts and Archeticture Ch2 with in class ActivitiesDatabase concepts and Archeticture Ch2 with in class Activities
Database concepts and Archeticture Ch2 with in class Activities
 
Database-management-system-dbms-ppt.pptx
Database-management-system-dbms-ppt.pptxDatabase-management-system-dbms-ppt.pptx
Database-management-system-dbms-ppt.pptx
 
DBMS.pptx
DBMS.pptxDBMS.pptx
DBMS.pptx
 
Dbms
DbmsDbms
Dbms
 

More from Mustafa Kamel Mohammadi

More from Mustafa Kamel Mohammadi (10)

Web design - Working with forms in HTML
Web design - Working with forms in HTMLWeb design - Working with forms in HTML
Web design - Working with forms in HTML
 
Web design - Working with tables in HTML
Web design - Working with tables in HTMLWeb design - Working with tables in HTML
Web design - Working with tables in HTML
 
Web design - Working with Links and Images
Web design - Working with Links and ImagesWeb design - Working with Links and Images
Web design - Working with Links and Images
 
Web design - Working with Text and Lists in HTML
Web design - Working with Text and Lists in HTMLWeb design - Working with Text and Lists in HTML
Web design - Working with Text and Lists in HTML
 
Web design - HTML (Hypertext Markup Language) introduction
Web design - HTML (Hypertext Markup Language) introductionWeb design - HTML (Hypertext Markup Language) introduction
Web design - HTML (Hypertext Markup Language) introduction
 
Web design - How the Web works?
Web design - How the Web works?Web design - How the Web works?
Web design - How the Web works?
 
Web design - Applications and web application definition
Web design - Applications and web application definitionWeb design - Applications and web application definition
Web design - Applications and web application definition
 
Fundamentals of database system - Data Modeling Using the Entity-Relationshi...
Fundamentals of database system  - Data Modeling Using the Entity-Relationshi...Fundamentals of database system  - Data Modeling Using the Entity-Relationshi...
Fundamentals of database system - Data Modeling Using the Entity-Relationshi...
 
Fundamentals of database system - Relational data model and relational datab...
Fundamentals of database system  - Relational data model and relational datab...Fundamentals of database system  - Relational data model and relational datab...
Fundamentals of database system - Relational data model and relational datab...
 
Fundamentals of Database system - Databases and Database Users
Fundamentals of Database system - Databases and Database UsersFundamentals of Database system - Databases and Database Users
Fundamentals of Database system - Databases and Database Users
 

Recently uploaded

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Fundamentals of database system - Database System Concepts and Architecture

  • 1. Fundamentals of Database systems Ministry of Higher Education Bamyan University Computer Science Department 1 Presented by : Mustafa Kamel Mohammadi Email : bamian.cs@gmail.com Database System Concepts and Architecture Fundamentals of database system 6th edition
  • 2. Learning objectives  In this chapter you will learn  DBMS evolution  Data model  Three schema architecture  DBMS language  DBMS interfaces  DBMS components  Classification of DBMS 2
  • 3. DBMSs evolution  Monolithic systems  The whole DBMS software package was in one integrated system  Client/server system architecture  Server module stores data  Client access to the server  Client module run on a user personal computer like application programs and user interfaces  Distributed systems  large centralized mainframe computers are being replaced by hundreds of distributed workstations 3
  • 4. Data model  One fundamental characteristic of the database approach is Data abstraction  Data abstraction generally refers to  Hiding of details of data organization and storage  Highlighting of the essential features for an improved understanding of data  Different users can perceive data at their preferred level of detail  A Data model is a collection of concepts that can be used to describe the structure of a database  Structure of a database : the data types, relationships, and constraints  provides the necessary means to achieve this abstraction Most data models also include operations  Basic: retrieve or updating database….  User defined: calculating some values 4
  • 5. 5
  • 6. Data models  High-level or conceptual data models  Provide concepts that are close to the way many users’ understanding  Use concepts such as entities, attributes, and relationships  Entity represents a real-world object or concept, such as an employee or a project  Attribute represents some characteristics of an Entity  Relationship represents an association among the entities  Entity-Relationship (ER) model a popular high-level conceptual data model 6
  • 7. Cont.  Representational (or Implementation) data models  Easily understood by end users but that are not too far removed from the way data is organized in computer storage  Widely used Relational data model and so Network and Hierarchical  Represent data by using record structures  Low-level or Physical data models  Provide concepts that describe the details of how data is stored on the computer storage media 7
  • 8. 8 High Level Data model Representational Data model
  • 9. Schemas  Description of a Database is called the Database schema  Specified during database design and is not expected to change frequently  Displayed schema is called a Schema diagram  Data models have their own conventions for schema representation  Shows neither the data type of each data item, nor the relationships  Object in the schema is called schema construct  Like STUDENT ,EMPLOYEE…  Schema evolution is the changes in database schema 9
  • 11. Database Instances and Database state  The data in the database at a particular moment in time is called a database state or snapshot  Database will contain the set of individual student entities (records) as its instances 11
  • 13. Database State  Empty state  When we define a new database, we specify its database schema only to the DBMS.  Initial state  The database is first populated or loaded with the initial data  Current state  Every time an update operation is applied to the database  Valid state  The DBMS is responsible for ensuring that every state of the database is valid  A state that satisfies the structure and constraints specified in the schema The schema is sometimes called the intension, and a database state is called an extension of the schema 13
  • 14. The Three-Schema Architecture  Architecture for database systems  The goal of the three-schema architecture is to separate the user applications from the physical database 1. The Internal level has an internal schema, which describes the physical storage structure of the database 2. The Conceptual level has a conceptual schema, which describes the structure of the whole database for a community of users 3. The External or view level includes a number of external schemas or user views. Each external schema describes the part of the database that a particular user group is interested in 14
  • 15. 15
  • 16. Cont.  Tool are available for visualizing the schema levels  Some DBMSs clearly separates three schemas  Most DBMSs do not separate the three levels completely and explicitly  The three schemas are only descriptions of data, the stored data that actually exists is at the physical level only  The processes of transforming requests and results between levels are called mappings 16
  • 17. As a result …. Data Independence  Defined as the capacity to change the schema at one level of a database system without having to change the schema at the next higher level.  Two types of data independence 1. Logical data independence is the capacity to change the conceptual schema without having to change external schemas or application programs 2. Physical data independence is the capacity to change the internal schema without having to change the conceptual schema Note: few DBMSs have implemented the full three schema architecture. Because: Overhead of mapping during compilation or execution of a query or program 17
  • 18. DBMS languages The DBMS must provide appropriate languages and interfaces for each category of users 1-DDL (Data definition language)  Used by the DBA and by database designers to define both conceptual and internal schemas In DBMSs  DDL compiler whose function is to process DDL statements 2- SDL (storage definition language)  Used to specify the internal schema  No specific language that performs the role of SDL. 18
  • 19. Cont. 3 – View definition language (VDL) To specify user views and their mappings to the conceptual schema. In most DBMSs the DDL is used to define both conceptual and external schemas. 4 – DML (data manipulating language)  Language used to manipulate data in database  Select data  Update data  Insert data  Delete data 19
  • 20. SQL (Structured Query Language) In current DBMSs the preceding types of languages are usually not considered distinct languages A comprehensive integrated language is used that includes  DDL  DML  VDL  SDL Ex : SQL relational database language  The SDL was a component in early versions of SQL but has been removed 20
  • 21. DBMS interfaces Graphical User Interfaces  A GUI typically displays a schema to the user in diagrammatic form.  The user then can specify a query by manipulating the diagram.  In many cases, GUIs utilize both menus ,forms and other pointing objects. Menu-Based Interfaces for Web Clients or Browsing  These interfaces present the user with lists of options (called menus) that lead the user through the formulation of a request Forms-Based Interfaces  Displays a form to each user ,Users can fill out all of the form entries to insert new data or retrieve matching data. 21
  • 22. 22
  • 23. DBMS interfaces Natural Language Interfaces  Accept requests written in English or some other language and attempt to understand them  Like search engines such as Google, Ask… Speech Input and Output  Use of speech as an input query and speech as an answer to a question or result of a request.  Examples are telephone directory, flight arrival/departure, and credit card account information  Input is detected using a library of predefined words  Output by conversion from text or numbers into speech 23
  • 24. 24
  • 25. Cont. Interfaces for the DBA. Most database systems contain privileged commands that can be used only by the DBA staff. These include commands for  Creating accounts  setting system parameters  granting account authorization  changing a schema  reorganizing the storage structures of a database  …..  Like PHPmyAdmin 25
  • 26. 26
  • 27. DBMS components Access to the disk is controlled primarily by the operating system The DDL compiler processes schema definitions, specified in the DDL, and stores descriptions of the schemas (meta-data) in the DBMS catalog Some uses buffer management module to schedule disk read/write Stored data manager module of the DBMS controls access to DBMS information that is stored on disk include read/write operations Query compiler that compiles the query into an internal form. Query optimizer used to rearrange and reorder operations, elimination of redundancies, and use of correct algorithms to execute queries. Pre compiler extracts DML commands from an application program written in a host programming language and turning them to object code. Runtime database processor executes  Commands, Queris, Transactions 27
  • 28. 28
  • 29. Database system Utilities  Loading utility is used to load existing data files such as text files or sequential files into the database by using conversion tools  Backup utility creates a backup copy of the database, usually by dumping the entire database onto tape or other mass storage medium  Database storage reorganization utility can be used to reorganize a set of database files into different file organizations, and improve performance  Performance monitoring utility monitors database usage and provides statistics to the DBA Note: Other utilities may be available for sorting files, handling data compression, monitoring access by users, interfacing with the network, and performing other functions. 29
  • 30. Tools, Application Environments and Communications Facilities Data dictionary (or data repository) system.  Stores information about  Schemas  Constraints  Design decision  Usage standards  Application program description  User information  Such a system is also called an information repository. Application development environments  provide an environment for developing database applications  Database design  GUI development  Querying and updating  Application program development 30
  • 31. Cont. Communications software  Whose function is to allow users at locations remote from the database system site to access the database through computer terminals, workstations, or personal computers 31
  • 32. Centralized and Client/Server Architectures for DBMSs Centralized DBMSs Architecture Uses mainframe computers to provide the main processing for all system functions, including user application programs and user interface programs, as well as all the DBMS functionality Users accessed such systems via computer terminals that did not have processing power and only provided display capabilities. Basic Client/Server Architectures As prices of hardware declined DBMS systems started to exploit the available processing power at the user side, which led to client/server DBMS architectures The idea is to define specialized servers  file server that maintains the files of the client machines  printer server are connected to printers ,all print requests are forwarded to them  Web servers  e-mail servers 32
  • 33. Cont. Client machines access to these servers, as well as to run local applications  Some machines would be client sites only (for example, diskless workstations or workstations/PCs with disks that have only client software installed) A server is a system containing both hardware and software that can provide services to the client machines, such as file access, printing, archiving, or database access  In general, some machines install only client software, others only server software, and still others may include both client and server software 33
  • 34. 34
  • 35. 35
  • 36. Two-Tier Client/Server Architectures for DBMSs  In Two-tier architectures the software components are distributed over two systems client and server  Client side contains the user interface and application programs  The query and transaction functionality related to SQL processing remained on the server side.  The server is often called a query server or transaction server because it provides these two functionalities. In an RDBMS, the server is also often called an SQL server  A standard called Open Database Connectivity (ODBC) provides an application programming interface (API), which allows client-side programs to call the DBMS  Client program can actually connect to several RDBMSs and send query and transaction requests using the ODBC API  Java has defined JDBC that allows Java client programs to access one or more DBMSs through a standard interface 36
  • 37. Three-Tier and n-Tier Architectures for Web Applications  The three-tier architecture adds an intermediate layer between the client and the database server  Middle tier is called the application server or the Webserver  The intermediate server  accepts requests from the client  processes the request  sends database queries and commands to the database server  The user interface, application rules, and data access act as the three tiers 1. The presentation layer displays information to the user and allows data entry 2. The business logic layer handles intermediate rules and constraints before data is passed up to the user or down to the DBMS 1. Check credintionals , interface loading, device recognition, location detection 3. The bottom layer includes all data management services.  It is possible to divide the layers between the user and the stored data further into finer components, thereby giving rise to n-tier architectures 37
  • 38. Cont. where (n) may be four or five tiers. Typically, the business logic layer is divided into multiple layers Used in distributed computing that allows  Each layer can work independently  Can handle different tasks  Encryption/ Decryption  Compression  GPS  … 38
  • 39. 39
  • 40. Classification of Database Management Systems Based on data model  Relational DBMSs  OODBMSs  ORDBMSs  Network DBMSs (old)  hierarchical DBMSs (old)  native XML DBMSs ( experimental)  …. Number of users  Single-user systems support only one user at a time and are mostly used with PCs.  Multiuser systems, which include the majority of DBMSs, support concurrent multiple users 40
  • 41. Cont. Number of sites  Centralized if the data is stored at a single computer site.  Distributed DBMS (DDBMS) can have the actual database and DBMS software distributed over many sites Cost  Free ( open source)  Commercial ( vary in cost) Purpose  General purpose  Specific purpose 41
  • 42. Hierarchical DBMSs  Represents data as hierarchical tree structures  Each hierarchy represents a number of related records  Has problem when specifying non hierarchical relationship 42
  • 43. Network data model Network Model  Use links to represent relationships between data, which forms a data network  Network Model is able to model complex relationships  Database contains a complex array of pointers that thread through a set of records. (implemented by linked lists) 43
  • 44. Exercise Define the following terms: • Data model, database schema, database state, • internal schema, conceptual schema, external schema, data independence, • DDL, DML, SDL, VDL, query language, host language, data sublanguage, • DBMS utility, catalog, client/server architecture, three-tier and n-tier architecture. 44
  • 45. 45