IT 20303 – DBMS Concepts Relational Database Theory.

44
IT 20303 – DBMS Concepts • Relational Database Theory

Transcript of IT 20303 – DBMS Concepts Relational Database Theory.

Page 1: IT 20303 – DBMS Concepts Relational Database Theory.

IT 20303 – DBMS Concepts

• Relational Database Theory

Page 2: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• The Database Environment

– Evolution of Computing Technology

• Punch-Cards – 1950-60s

• Character Based VDU – 1960-70s

• GUI – 1980-90s

• Voice/Telephony – 1990-Beyond

Page 3: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• The Database Environment

– Evolution of Processing Environments

• Batch Processing – 1950-60s

• Online – 1970-80s

• Networked – 1980-90s

• Future ? – 2000-beyond

Page 4: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Computing Technology based on Advances in:– Hardware – economics and

miniaturization• Continues to provide increasing

power at decreasing costs• Enables a broad range of powerful

servers and workstations

Page 5: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Computing Technology based on Advances in:

– Software – availability & capabilities

• Off-the-Shelf applications software

• Software to support all phases of application development

Page 6: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Computing Technology based on Advances in:

– Connectivity – networking & internet

• Creates demand for web-enabled applications

• Allows interaction with many systems & databases

Page 7: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Technology Evolution

– Files – 1950-60s

– Hierarchical – 1960-70s

– Network – 1970-80s

– Relational – 1990-beyond

Page 8: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Technology

– Relational is the dominate database technology

– Importance of business rules is widely recognized

– Importance, use, and amount of data is increasing

Page 9: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Technology– Our understanding of the nature of

data is expanding• Scalar (traditional) data: numbers,

character strings, dates• Complex data: graphics, images,

geographic data, audio, video, documents

Page 10: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Technology

– Relational DBMS capabilities are being extended

• To handle larger volumes and complex data

Page 11: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Technology

– Trend is to provide a GUI to the database

– Accessing the database via the web

Page 12: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Impact of Technology Advances

– Systems are user-oriented rather than machine-oriented

– Rate of new technology & product introduction is very fast

– People use computers, databases, & the internet to do their jobs

Page 13: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Impact of Technology Advances

– Conducting business on the internet is vital to most organizations

– Still working to provide easier user access to data

– Still seeking better ways to turn data into useful information

Page 14: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Environment – Introduction– Components:

• Data• Users• Network• Software• Hardware• Administration

Page 15: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database & the DBMS– What is a Database?

• A collection of related data• Intended for use by a known group of

users• Designed & built for a specific set of

requirements• Represents (or models) some aspect

of the real world

Page 16: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database & the DBMS

– What is a database management system (DBMS)?

• A collection of programs

• Enables users to create, maintain, & access a database

Page 17: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Why use a Database & a DBMS?

– A database supports data sharing

• Many users access the same data

• Minimizes duplicated data and resulting update inconsistencies

Page 18: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Why use a Database & a DBMS?– An RDBMS is a productivity tool

• Provides efficient storage and access techniques

• Provides a standard databse access language, SQL

–Many development & case tools interface to RDBMSs

Page 19: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Why use a Database & a DBMS?

– An RDBMS provides centralized control of operational data

• Restricts access to authorized users: security

• Supports recovery of data in case of failure: durability

Page 20: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Why use a Database & a DBMS?

• Provides access by multiple users at the same time: concurrency

• Supports business rules about data values, relationships: integrity

Page 21: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Different Groups of Users work with Databases– Data Administration– End Users– Data Analyst– Business Systems Analyst– Systems Analyst– Programmer Analyst– DBA

Page 22: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• End Users are at all levels in the organization– End Users’ primary job function is not

programming• Need information to answer questions,

make decisions, etc.• Provide input for data and process

requirements• Scattered throughout the organization

Page 23: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Analysts

– Business Systems Analyst

• Expertise in business operations

• Develop specifications, process models for applications

Page 24: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Analysts

– Systems Analyst

• Expertise in business applications development

• Develop specifications, models, and applications

Page 25: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Analysts

– Data Analyst

• Expertise in business applications, especially data usage

Page 26: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Analysts– Programmer Analyst

• Expertise in programming, application development/maintenance

–Uses VB, C++, etc.• Support day-to-day operations of

the enterprise

Page 27: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Administrator (DBA)

– Interfaces with Users

– Builds and Populates the database

– Manages disk storage, backup, & recovery

– Maintains passwords & access authorization

Page 28: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Administrator (DBA)

– Monitors performance & responds to changing needs

– Installs new releases of the RDBMS & related products

– Keeper of the Data Dictionary

Page 29: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Administration

– Develops high-level data architecture

– Supports current & expected business functions

– Responsible for a global view of all the enterprise’s data

Page 30: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Database Administration

– Overall data architecture can have many subject databases

• One or more subject databases can have one or many DBAs

– Integral to Information Resource Management (IRM) philosophy

Page 31: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

– Production Database

• Used to accomplish business functions of an organization

–Online or batch applications

–Objective is reliable, timely, valid processing of data

Page 32: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

• Database usage includes CRUD activities

–Creating, Reading, Updating, & Deleting data (CRUD)

–Sometimes referred to as online complex processing

Page 33: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

• Required features of DBMS often include:

–Security

–Recovery

–Concurrency

–Transaction Processing

Page 34: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database– Decision-Support Database

• Used for analysis, querying, & reporting

–Read-Only–Sometimes referred to as

OnLine Analytical Processing (OLAP)

Page 35: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

• Required features of DBMS environment often include:

–Easy-to-Use query tools or custom applications

Page 36: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

• Data Warehouse

–An approach to providing a database for querying and analysis

Page 37: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

– Individual Use Database

• A DBMS & a database in the individual user’s workstation

–Single-User environment

Page 38: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database• Initially mass-consumer-oriented

–Example: dBASE, Paradox, FoxPro, Access

• RDBMS vendors introduced personal versions:

–Personal Oracle (Free)–IBM DB2/2 – ($600/year)–Sybase SQL Anywhere – ($200)

Page 39: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Uses of a Database

• Required features often include ease of:

–Installing, Use

–Reporting

–Producing simple applications

Page 40: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• The Database Development Process

– Requirements

– Analysis/Design

– Produce

– Build/Test

– Production Maintenance

Page 41: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Roles in Application & Database Development - Logical– Data

• Data Administration• Data Analyst

–Conceptual Data Models»ERDs»Created with help of the Users

Page 42: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Roles in Application & Database Development - Logical– Process

• Business Systems Analyst• Systems Analyst

–Process Model»DFD, Action Diagrams, Process

Specification Diagrams

Page 43: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Roles in Application & Database Development – Physical

– Data

• Database Administrator

–Database

Page 44: IT 20303 – DBMS Concepts Relational Database Theory.

Relational Database Theory

• Roles in Application & Database Development – Physical

– Process

• Programmer Analyst

–Program Code