SlideShare a Scribd company logo
1 of 34
Download to read offline
Database Principles:
Introduction
!"!#
$%&'()*+,'%-./01%'2'34-5/6*(+)/%+
Outline
• 7')/ 0'))'% 89/9 '& :*+*;*9/ 949+/)9<
• 5*+*;*9/ ='%0/6+9<
• 5*+*;*9/->/?'28+,'%
• @*A'(-0')6'%/%+9-'&-+1/-5B@7-/%?,('%)/%+<
• C:?*%+*3/9-*%:-:,9*:?*%+*3/9-'&-5B@7<
Why we study Database?
Web/Mobile Applications
Artificial Intelligence Applications
Data Analysis and decision-making
Applications
Examples of Applications using Database
Can you think of any other examples?
“Databases are like televions!” Mere Mortals
History of Databases (1950-2020)
Flat file: stores information in a
single file or table
Database Principles Course Topics
IT222
Relational
Databases
The Relational Data Model
SQL
Database Normalization
NoSQL Databases
NoSQL Data Model
NoSQL Types
Why do we need to study Relational Database?
Different Database for Different Requirements
The History of Databases
• The concept of a database existed before there
were computers. Some of you are even old enough
to remember the filing cabinets in which your
parents kept health records, tax documents, and
old family recipes.
9
Before the Advent of Database System:
• File-Based Data Management System or File systems :
• File systems are effectively a digitized version of paper-based filing systems for a
wider range of file types.
• File systems is a collection of application programs that perform services for the
end users (e.g. reports)where each program defines and manages its own data.
• It is usually integrated into a computer’s operating system and is responsible for
storing and retrieving files from a storage medium, such as a hard disk or flash
drive.
10
An Example of FBS:
11
CustomerNr
CustomerName
VATcode
CustomerNr
CustomerName
Turnover
CustomerNr
CustomerName
ZipCode
Invoicing CRM GIS
Duplicate data!
Limitations of File-Based Approach
• Separation and isolation of data
• Each program maintains its own set of data.
• Users of one program may be unaware of potentially useful data held
by other programs.
• Duplication of data
• Same data is held by different programs.
• Wasted space and potentially different values and/or different formats
for the same item.
12
Limitations of File-Based Approach
• Data dependence
• File structure is defined in the program code.
• Definition of data was embedded in application programs, rather than being stored
separately and independently.
• Incompatible file formats
• Programs are written in different languages, and so cannot easily access each other’s
files.
• Fixed Queries/Proliferation of application programs
• Programs are written to satisfy particular functions.
• Any new requirement needs a new program.
• No control over access and manipulation of data beyond that imposed by application
programs.
13
To Overcome the FBS limitations:
• The Database Approach:
• The first computer database was built in the 1960s, but the history of databases as we know them,
really begins in 1970.
• Database Management System (DBMS) is a much larger application that can manipulate large
quantities of data in complex ways.
• Database is a shared collection of logically related data (and a description of this data), designed to
meet the information needs of an organization.
• System catalogue (metadata) provides description of data to enable program–data independence.
• Database consists of a logically related data comprises entities, attributes, and relationships of an
organization’s information.
14
File versus Database Approach to Data Management
Invoicing CRM GIS
DBMS
Raw data Catalog
Database Concepts
• Data is a meaningless static value. e.g. Ali, 3421… What does 3421 means?
• Information is the data you process in a manner that makes it meaningful.
Information can be provided only if proper data exists. e.g. “Ali ID number is
0987”.
• A database (DB) is a collection of a logically related persistent data, designed to
meet the information needs of an organization. Can be generated & maintained
manually or automatically.
16
Database Concepts
• Database Management System (DBMS):
A software system that facilitates the creation and maintenance of a database, i.e.
implementing database application.
• Database Application Programs:
A computer program that interacts with database by issuing an appropriate request
(SQL statement) to the DBMS.
• Database System (DBS): is database and Software (DBMS + Application
Program).
• DBS is a single large repository of data, defined once and managed using DBMS
while used by many application programs
17
DBS Environment
18
Database
Meta-Data
Data Access
Query Process
Application Program
DBMS
DBS
Users/Programmers
Relational DBMS (RDBMS) Functions
• The DBMS is expected to:
1. Allow users to create new databases and specify their schemas (logical structure of the
data), using a specialized data-definition language.
2. Give users the ability to query the data and modify the data, using an appropriate
language, often called a query language or data-manipulation language (DML.
3. Support the storage of very large amounts of data — many terabytes or more — over a
long period of time, allowing efficient access to the data for queries and database
modifications.
4. Enable durability, the recovery of the database in the face of failures, errors of many
kinds, or intentional misuse.
5. Control access to data from many users at once, without allowing unexpected
interactions among users (called isolation) and without actions on the data to be
performed partially but not completely (called atomicity).
19
Examples of Relational DBMS vendors
Components of DBMS Environment
1. Hardware
• Can range from a PC to a network of computers.
2. Software
• DBMS, operating system, network software (if necessary) and also the application programs.
3. Data
• Used by the organization and a description of this data
4. Procedures
• Instructions and rules that should be applied to the design and use of the database and DBMS.
5. People
21
22
Roles in the Database Environment
Roles in the Database Environment
• System Analyst: Determine the user requirements and develop the system
specifications.
• Database Designer: Identify the data and choose the appropriate structure to
represent and store the data.
• Application Programmer: Implement the application program based on the
system specification.
• Database administrator (DBA): Administrates the DB, DBMS and related
software.
23
Roles in the Database Environment
• Database End-users: They use the data for queries, reports and some of them
update the database content (data). End-users can be categorized into:
— Naïve users: Invokes one of the permanent application programs that have
been written previously.
— Sophisticated users: form requests in a database query language.
24
Advantages of RDBMSs
1. Control of data redundancy:
• In contrast to FBS, the database approach attempts to eliminate the redundancy
by integrating the files so that multiple copies of the same data are not stored.
• Database approach does not eliminate redundancy entirely, but controls the
amount of redundancy inherent in the database.
• For example, it is desirable to duplicate some data items to improve performance
(e.g. foreign keys)
25
Advantages of RDBMSs
2. Data consistency:
• If a data item is stored only once in the database, any update to its value has to
be performed only once and the new value is available immediately to all users.
• The database system can ensure that all copies of the item are kept consistent.
3. More information from the same amount of data
• Data integration can lead to derive additional information from the same data
26
Advantages of RDBMSs
4. Sharing of data:
• A database belongs to the entire organization and can be shared by all authorized
users.
• New applications can build on the existing data in the database and add only data
that is not currently stored
5. Improved data integrity:
• Database integrity refers to the validity and consistency of stored data.
• Integrity =constraints
• For example, a member of staff’s salary cannot be greater than $40,000
27
Advantages of RDBMSs
6. Improved security:
• Database security is the protection of the database from unauthorized users.
• Example: a branch manager may have access to all data that relates to his or her branch
office
7. Enforcement of standards:
• Standards for such as data formats to facilitate exchange of data between systems,
naming conventions, documentation standards, update procedures, and access rules.
8. Economy of scale:
• Combining all the organization’s operational data into one database and creating a set of
applications that work on this one source of data can result in cost savings.
28
Advantages of RDBMSs
9. Balance conflicting requirements:
• Each user or department has needs that may be in conflict with the needs of other users.
10. Improved data accessibility and responsiveness:
• A result of integration, data that crosses departmental boundaries is directly accessible to the
end- users.
11. Increased productivity
• DBMS provides all the low-level file-handling routines that are typical in application programs.
• This results in increased programmer productivity and reduced development time (with
associated cost savings).
29
Advantages of RDBMSs
12. Improved maintenance through data independence:
• A DBMS separates the data descriptions from the applications, thereby making
applications immune to changes in the data descriptions (known as data
independence)
13. Increased concurrency:
• if two or more users access the same file simultaneously, it is possible that the
accesses will interfere with each other, resulting in loss of information or even
loss of integrity.
• DBMSs manage concurrent database access and ensure that such problems
cannot occur.
Advantages of RDBMSs
14. Improved backup and recovery services:
• file-based systems place the responsibility on the user to provide measures to
protect the data from failures to the computer system or application program
• In contrast, modern DBMSs provide facilities to minimize the amount of
processing that is lost following a failure.
31
Disadvantages of RDBMSs
1. Complexity:
• Failure to understand the DBMS system can lead to bad design decisions, which can have
serious consequences for an organization.
2. Size:
• DBMS occupies many megabytes of disk space and requiring substantial amounts of
memory to run efficiently
3. Cost of DBMS:
• A large mainframe multi-user DBMS servicing hundreds of users can be extremely
expensive, perhaps $100,000 or even $1,000,000.
• Additional annual maintenance cost
32
Disadvantages of RDBMSs
4. Additional hardware costs:
• Disk storage requirements for the DBMS and the database may necessitate the purchase of
additional storage space
5. Cost of conversion:
• High cost of converting existing applications to run on the new DBMS and hardware
6. Performance:
• In contrast to FBS, DBMS is written to be more general, to cater for many applications rather than
just one. The result is that some applications may not run as fast as they used to
7. Higher impact of a failure:
• The centralization of resources increases the vulnerability of the system
33
References:
• Chapter 1: Database Systems: A Practical Approach to Design, Implementation
and Management.”Thomas Connolly, Carolyn Begg, 6th Edition, Addison-Wesley,
2016

More Related Content

Similar to 1-introduction to DB.pdf

Similar to 1-introduction to DB.pdf (20)

CP 121_2.pptx about time to be implement
CP 121_2.pptx about time to be implementCP 121_2.pptx about time to be implement
CP 121_2.pptx about time to be implement
 
Database & dbms
Database & dbmsDatabase & dbms
Database & dbms
 
Data base chapter 2 | detail about the topic
Data base chapter 2 | detail about the topicData base chapter 2 | detail about the topic
Data base chapter 2 | detail about the topic
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Assign 1
Assign 1Assign 1
Assign 1
 
Chap1-Introduction to database systems.ppt
Chap1-Introduction to database systems.pptChap1-Introduction to database systems.ppt
Chap1-Introduction to database systems.ppt
 
CS3270 - DATABASE SYSTEM - Lecture (1)
CS3270 - DATABASE SYSTEM -  Lecture (1)CS3270 - DATABASE SYSTEM -  Lecture (1)
CS3270 - DATABASE SYSTEM - Lecture (1)
 
Introduction to DBMS.pptx
Introduction to DBMS.pptxIntroduction to DBMS.pptx
Introduction to DBMS.pptx
 
INT 1010 07-5.pdf
INT 1010 07-5.pdfINT 1010 07-5.pdf
INT 1010 07-5.pdf
 
unit 1.pdf
unit 1.pdfunit 1.pdf
unit 1.pdf
 
PHP/MySQL First Session Material
PHP/MySQL First Session MaterialPHP/MySQL First Session Material
PHP/MySQL First Session Material
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
 
Database Systems
Database SystemsDatabase Systems
Database Systems
 
Unit-I mech for studendts for btech .ppt
Unit-I mech for studendts for btech .pptUnit-I mech for studendts for btech .ppt
Unit-I mech for studendts for btech .ppt
 
Components and Advantages of DBMS
Components and Advantages of DBMSComponents and Advantages of DBMS
Components and Advantages of DBMS
 
Db lecture 1
Db lecture 1Db lecture 1
Db lecture 1
 
Introduction & history of dbms
Introduction & history of dbmsIntroduction & history of dbms
Introduction & history of dbms
 
Unit 2 rdbms study_material
Unit 2  rdbms study_materialUnit 2  rdbms study_material
Unit 2 rdbms study_material
 
Cp 121 lecture 01
Cp 121 lecture 01Cp 121 lecture 01
Cp 121 lecture 01
 
Lecture#5
Lecture#5Lecture#5
Lecture#5
 

Recently uploaded

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Recently uploaded (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

1-introduction to DB.pdf

  • 2. Outline • 7')/ 0'))'% 89/9 '& :*+*;*9/ 949+/)9< • 5*+*;*9/ ='%0/6+9< • 5*+*;*9/->/?'28+,'% • @*A'(-0')6'%/%+9-'&-+1/-5B@7-/%?,('%)/%+< • C:?*%+*3/9-*%:-:,9*:?*%+*3/9-'&-5B@7<
  • 3. Why we study Database? Web/Mobile Applications Artificial Intelligence Applications Data Analysis and decision-making Applications
  • 4. Examples of Applications using Database Can you think of any other examples?
  • 5. “Databases are like televions!” Mere Mortals
  • 6. History of Databases (1950-2020) Flat file: stores information in a single file or table
  • 7. Database Principles Course Topics IT222 Relational Databases The Relational Data Model SQL Database Normalization NoSQL Databases NoSQL Data Model NoSQL Types
  • 8. Why do we need to study Relational Database? Different Database for Different Requirements
  • 9. The History of Databases • The concept of a database existed before there were computers. Some of you are even old enough to remember the filing cabinets in which your parents kept health records, tax documents, and old family recipes. 9
  • 10. Before the Advent of Database System: • File-Based Data Management System or File systems : • File systems are effectively a digitized version of paper-based filing systems for a wider range of file types. • File systems is a collection of application programs that perform services for the end users (e.g. reports)where each program defines and manages its own data. • It is usually integrated into a computer’s operating system and is responsible for storing and retrieving files from a storage medium, such as a hard disk or flash drive. 10
  • 11. An Example of FBS: 11 CustomerNr CustomerName VATcode CustomerNr CustomerName Turnover CustomerNr CustomerName ZipCode Invoicing CRM GIS Duplicate data!
  • 12. Limitations of File-Based Approach • Separation and isolation of data • Each program maintains its own set of data. • Users of one program may be unaware of potentially useful data held by other programs. • Duplication of data • Same data is held by different programs. • Wasted space and potentially different values and/or different formats for the same item. 12
  • 13. Limitations of File-Based Approach • Data dependence • File structure is defined in the program code. • Definition of data was embedded in application programs, rather than being stored separately and independently. • Incompatible file formats • Programs are written in different languages, and so cannot easily access each other’s files. • Fixed Queries/Proliferation of application programs • Programs are written to satisfy particular functions. • Any new requirement needs a new program. • No control over access and manipulation of data beyond that imposed by application programs. 13
  • 14. To Overcome the FBS limitations: • The Database Approach: • The first computer database was built in the 1960s, but the history of databases as we know them, really begins in 1970. • Database Management System (DBMS) is a much larger application that can manipulate large quantities of data in complex ways. • Database is a shared collection of logically related data (and a description of this data), designed to meet the information needs of an organization. • System catalogue (metadata) provides description of data to enable program–data independence. • Database consists of a logically related data comprises entities, attributes, and relationships of an organization’s information. 14
  • 15. File versus Database Approach to Data Management Invoicing CRM GIS DBMS Raw data Catalog
  • 16. Database Concepts • Data is a meaningless static value. e.g. Ali, 3421… What does 3421 means? • Information is the data you process in a manner that makes it meaningful. Information can be provided only if proper data exists. e.g. “Ali ID number is 0987”. • A database (DB) is a collection of a logically related persistent data, designed to meet the information needs of an organization. Can be generated & maintained manually or automatically. 16
  • 17. Database Concepts • Database Management System (DBMS): A software system that facilitates the creation and maintenance of a database, i.e. implementing database application. • Database Application Programs: A computer program that interacts with database by issuing an appropriate request (SQL statement) to the DBMS. • Database System (DBS): is database and Software (DBMS + Application Program). • DBS is a single large repository of data, defined once and managed using DBMS while used by many application programs 17
  • 18. DBS Environment 18 Database Meta-Data Data Access Query Process Application Program DBMS DBS Users/Programmers
  • 19. Relational DBMS (RDBMS) Functions • The DBMS is expected to: 1. Allow users to create new databases and specify their schemas (logical structure of the data), using a specialized data-definition language. 2. Give users the ability to query the data and modify the data, using an appropriate language, often called a query language or data-manipulation language (DML. 3. Support the storage of very large amounts of data — many terabytes or more — over a long period of time, allowing efficient access to the data for queries and database modifications. 4. Enable durability, the recovery of the database in the face of failures, errors of many kinds, or intentional misuse. 5. Control access to data from many users at once, without allowing unexpected interactions among users (called isolation) and without actions on the data to be performed partially but not completely (called atomicity). 19
  • 20. Examples of Relational DBMS vendors
  • 21. Components of DBMS Environment 1. Hardware • Can range from a PC to a network of computers. 2. Software • DBMS, operating system, network software (if necessary) and also the application programs. 3. Data • Used by the organization and a description of this data 4. Procedures • Instructions and rules that should be applied to the design and use of the database and DBMS. 5. People 21
  • 22. 22 Roles in the Database Environment
  • 23. Roles in the Database Environment • System Analyst: Determine the user requirements and develop the system specifications. • Database Designer: Identify the data and choose the appropriate structure to represent and store the data. • Application Programmer: Implement the application program based on the system specification. • Database administrator (DBA): Administrates the DB, DBMS and related software. 23
  • 24. Roles in the Database Environment • Database End-users: They use the data for queries, reports and some of them update the database content (data). End-users can be categorized into: — Naïve users: Invokes one of the permanent application programs that have been written previously. — Sophisticated users: form requests in a database query language. 24
  • 25. Advantages of RDBMSs 1. Control of data redundancy: • In contrast to FBS, the database approach attempts to eliminate the redundancy by integrating the files so that multiple copies of the same data are not stored. • Database approach does not eliminate redundancy entirely, but controls the amount of redundancy inherent in the database. • For example, it is desirable to duplicate some data items to improve performance (e.g. foreign keys) 25
  • 26. Advantages of RDBMSs 2. Data consistency: • If a data item is stored only once in the database, any update to its value has to be performed only once and the new value is available immediately to all users. • The database system can ensure that all copies of the item are kept consistent. 3. More information from the same amount of data • Data integration can lead to derive additional information from the same data 26
  • 27. Advantages of RDBMSs 4. Sharing of data: • A database belongs to the entire organization and can be shared by all authorized users. • New applications can build on the existing data in the database and add only data that is not currently stored 5. Improved data integrity: • Database integrity refers to the validity and consistency of stored data. • Integrity =constraints • For example, a member of staff’s salary cannot be greater than $40,000 27
  • 28. Advantages of RDBMSs 6. Improved security: • Database security is the protection of the database from unauthorized users. • Example: a branch manager may have access to all data that relates to his or her branch office 7. Enforcement of standards: • Standards for such as data formats to facilitate exchange of data between systems, naming conventions, documentation standards, update procedures, and access rules. 8. Economy of scale: • Combining all the organization’s operational data into one database and creating a set of applications that work on this one source of data can result in cost savings. 28
  • 29. Advantages of RDBMSs 9. Balance conflicting requirements: • Each user or department has needs that may be in conflict with the needs of other users. 10. Improved data accessibility and responsiveness: • A result of integration, data that crosses departmental boundaries is directly accessible to the end- users. 11. Increased productivity • DBMS provides all the low-level file-handling routines that are typical in application programs. • This results in increased programmer productivity and reduced development time (with associated cost savings). 29
  • 30. Advantages of RDBMSs 12. Improved maintenance through data independence: • A DBMS separates the data descriptions from the applications, thereby making applications immune to changes in the data descriptions (known as data independence) 13. Increased concurrency: • if two or more users access the same file simultaneously, it is possible that the accesses will interfere with each other, resulting in loss of information or even loss of integrity. • DBMSs manage concurrent database access and ensure that such problems cannot occur.
  • 31. Advantages of RDBMSs 14. Improved backup and recovery services: • file-based systems place the responsibility on the user to provide measures to protect the data from failures to the computer system or application program • In contrast, modern DBMSs provide facilities to minimize the amount of processing that is lost following a failure. 31
  • 32. Disadvantages of RDBMSs 1. Complexity: • Failure to understand the DBMS system can lead to bad design decisions, which can have serious consequences for an organization. 2. Size: • DBMS occupies many megabytes of disk space and requiring substantial amounts of memory to run efficiently 3. Cost of DBMS: • A large mainframe multi-user DBMS servicing hundreds of users can be extremely expensive, perhaps $100,000 or even $1,000,000. • Additional annual maintenance cost 32
  • 33. Disadvantages of RDBMSs 4. Additional hardware costs: • Disk storage requirements for the DBMS and the database may necessitate the purchase of additional storage space 5. Cost of conversion: • High cost of converting existing applications to run on the new DBMS and hardware 6. Performance: • In contrast to FBS, DBMS is written to be more general, to cater for many applications rather than just one. The result is that some applications may not run as fast as they used to 7. Higher impact of a failure: • The centralization of resources increases the vulnerability of the system 33
  • 34. References: • Chapter 1: Database Systems: A Practical Approach to Design, Implementation and Management.”Thomas Connolly, Carolyn Begg, 6th Edition, Addison-Wesley, 2016