--What is a Database--1 What is a database What is a Database.

22
--What is a Database-- 1 What is a database What is a Database
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    228
  • download

    1

Transcript of --What is a Database--1 What is a database What is a Database.

Page 1: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 1

What is a database

What is a Database

Page 2: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 2

Basic Difinitions

Miniworld: Some part of the real world about which information is stored.

Data: Known facts about the miniworld recorded have an implicit meaning

Database (DB): A collection of related data elements Database Management System (DBMS): A software

package to facilitate the process of Defining - specifying types, organization (schema) Constructing - loading the data Manipulating - querying the data One DBMS, many DBs, many applications

Database system: A database and a DBMS

Page 3: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 3

A DBMS

database

application program

user

persistent storage

database

DBMS

Page 4: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 4

Pictorial Representation

Users/Programs

Application Programs/Queries

Software to Process Queries/Programs

Software to Access Stored Data

DATABASE SYSTEM

DBMS SOFTWARE

Stored Database Definition

(Meta-Data)

Stored Database

Page 5: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 5

Functions of a DBMS

Provides persistent, shared storage Objects live beyond program execution Shared by multiple applications DBMS reduces redundancy in Development and maintenance

Provides multiple interfaces Query language, embedded query language, APIs, GUIs

Protects against Software/hardware failure Security breaches

Page 6: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 6

When not to use a DBMS

Main costs of using a DBMS High initial investment May need additional hardware Overhead Training

When a DBMS may be unnecessary Application is simple, well-defined, and not expected to change Stringent real-time requirements (Write) access to data by multiple users is not needed

Page 7: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 7

Classes of DB users – Workers on the scene

Persons whose job involves daily use of a large database. Database administrators (DBAs)

Responsible for managing the database system.

Database designers End users

The people that use the database for querying, updating, generating reports

Interactive users: Use full DBMS capabilities directly via a DML. Parametric (or naive) end users: They use pre-programmed canned

transactions to interact continuously with the database. For example, bank tellers or reservation clerks.

Application programmers Design and implement canned transactions for parametric users.

Page 8: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 8

DBA Duties

Chooses storage structure and access strategy performance-enhancing data structures

Acts as liaison with users Security czar

Defines authorization checks and validation procedures

Responsible for backups and recovery monitoring performance and updates (to schema)

Page 9: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 9

Database Users – Workers Behind the Scene

People who design and develop the DBMS software DBMS designers and implementers Tool developers

Design and implement tools that facilitate the use of DBMS software. Tools include design tools, performance tools, special interfaces, etc.

Operators and maintenance personnel Run and maintain the hardware and software environment for

the database system.

Page 10: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 10

Interfaces

Menu vs. form-based GUI

Canned interfaces for parametric users DBA Application

Natural language Web search engines

Shell

Page 11: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 11

Input (Using a Form)

Page 12: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 12

Sample of Input Form for a Lab Work

Page 13: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 13

Output (Using a Report)

SID Name 1’st 2’nd 3’rd Total

8891 Allen 25% 27% 33% 85%

8767 Jones 20% 25% 0 45%

2365 Watson 13% 0 0 13%

4256 Cabeen 15% 20% 17% 52%

Exam result for ID

Page 14: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 14

Sample Output Report for a Lab Work

Page 15: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 15

Data Models

A data model is a data definition language along with a data manipulation language. Conceptual Representational Physical

Page 16: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 16

Data Models

A data definition language (DDL) describes database schemas. Data relationships Data semantics Integrity constraints

Database schemas vs. instances Similar to types and variables in programming languages

A data manipulation language (DML) is used for querying and updating database instances.

Page 17: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 17

Schema vs. Instance

Schema - Description of how data is organized and constrained.

Instance - The data in a database (conforms to a schema). Snapshot - Database state at a particular point in time. Initially empty Database is populated or loaded, DBMS ensures every state is a

valid state. Schema evolution vs. data update

Page 18: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 18

Type of Data Models

Record-based conceptual models (1960s) hierarchical model (e.g., IBM IMS) (1970s) network model (e.g., CA-IDMS) (1980s - current) relational model (e.g., Microsoft Access,

Microsoft SQL Server, IBM DB2, Oracle8)

Object-based conceptual models (late 1980s - current) entity-relationship model §(late 1980s - current) object-oriented model

Text-based conceptual models (late 1990s - current) XML

Page 19: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 19

ANSI Three-Schema Architecture

Supports DBMS characteristics of: Program-data independence. Support of multiple views of the data.

Defines DBMS schemas at three levels: Physical

How data is stored on disk Data storage structures Access paths to the data

Logical External

Page 20: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 20

Schema and Mappings

First Name Last Name SalaryStaffID Name Birthdate

staff_no fnamelname dob salarybranch_no

Struct STAFF { int staff_no; int branch_no; char fname [15]; char lname [15]; struct date dob; float salary; struct STAFF *next;};

index staff_no; index branch_no;

external level

physical level

conceptual level

Page 21: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 21

Data Independence

Each level is “independent” in the sense that a completely different organization can be used.

Physical data independence - Physical level can change without having to change the logical level.

Logical data independence - Logical level can change without having to change the external level.

Page 22: --What is a Database--1 What is a database What is a Database.

--What is a Database-- 22

DBMS Achitecture

DBMS

DDL Statements

Privileged Commands

Interactive Query

Precompiler

Application Programs

Application Programmers

Host Language Compiler

Canned Transactions

DML Statements

Query Compiler

Query Execution Plan

Run-time Evaluator

Transaction and Data Manager

Data Dictionary Data Files

DDL Compiler

DBA Staff Casual UsersParametric

Users