Top Banner
Introduction to Introduction to Database Database
41

Introduction to Database How to Organize Information? What are the different structures we use to organize information? What are the organizing principles?

Apr 01, 2015

Download

Documents

Aliza Herd
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Introduction to DatabaseIntroduction to Database

Page 2: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

How to Organize Information?How to Organize Information?

What are the different structures we use to What are the different structures we use to organize information?organize information?

What are the organizing principles?What are the organizing principles?

Page 3: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Organizational MemoryOrganizational Memory

Provides support for Provides support for Transaction processingTransaction processing Decision makingDecision making

services

Organizationalmemory

DataQuality

decisions

Qualityproducts

Quality

Page 4: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Daily Interaction with DatabasesDaily Interaction with Databases

Trip to a bankTrip to a bank Processes conducted?Processes conducted?

• Withdraw, deposit, etc …Withdraw, deposit, etc … Stored data?Stored data?

• Customers, accounts , balances, employees, etc …Customers, accounts , balances, employees, etc …

Airline/Hotel reservation?Airline/Hotel reservation? Customer, airlines, airports, flights, times, captains, payment Customer, airlines, airports, flights, times, captains, payment

informationinformation

Book purchase from Amazon.com?Book purchase from Amazon.com? Book inventory, customer, credit card, credit card company, Book inventory, customer, credit card, credit card company,

Amazon’s balance, your balance, etc …Amazon’s balance, your balance, etc …

Page 5: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Data, Information, and Data, Information, and KnowledgeKnowledge

DataData Raw, unsummarized, and unanalyzed factsRaw, unsummarized, and unanalyzed facts

InformationInformation Data processed into a meaningful formData processed into a meaningful form One person's information can be another's dataOne person's information can be another's data

KnowledgeKnowledge Knowing what information is requiredKnowing what information is required Knowing what the information meansKnowing what the information means

Data

InformationConversion

Decision

Knowledge

InterpretationRequest

Page 6: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

What is a Database?What is a Database? A database is a collection of related A database is a collection of related

datadata Implicit properties:Implicit properties:

A database represents some aspect of A database represents some aspect of real-world (miniworld)real-world (miniworld)

A database is designed for some specific A database is designed for some specific applicationapplication

It has an intended group of usersIt has an intended group of users

Page 7: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

What is a DBMS? What is a DBMS?

A database is a mechanized, shared, formally A database is a mechanized, shared, formally defined and centrally controlled collection of defined and centrally controlled collection of data.data.

Implications:Implications: Multiple Independent UsersMultiple Independent Users Concurrent AccessConcurrent Access Central RepositoryCentral Repository InformationInformation

Page 8: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Typical DBMS FunctionalityTypical DBMS Functionality

Define a database in terms of data types, structures and constraints

Construct or load (with data) the database on a secondary storage medium

Manipulating the database: querying, generating reports, insertions, deletions and modifications to its content

Concurrent processing and sharing by a set of users and programs

yet, keeping all data valid and consistent! Other features (useful but not mandatory):

Protection (against malfunction) or security measures to prevent unauthorized/malicious access

Page 9: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Database UsersDatabase Users

End-users: interact with the database End-users: interact with the database applicationsapplications

Application programmersApplication programmers Database administrator (DBA)Database administrator (DBA)

Deciding information content of databaseDeciding information content of database Deciding storage structure and access strategyDeciding storage structure and access strategy Interact with usersInteract with users Defining security and integrity checksDefining security and integrity checks Backup and recovery strategyBackup and recovery strategy Monitoring performanceMonitoring performance

Page 10: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Files and DatabasesFiles and Databases

File: A collection of records or documents File: A collection of records or documents dealing with one organization, person, area or dealing with one organization, person, area or subject. (Rowley)subject. (Rowley) Manual (paper) filesManual (paper) files Computer filesComputer files

Database: A collection of similar records with Database: A collection of similar records with relationships between the records. (Rowley)relationships between the records. (Rowley) bibliographic, statistical, business data, images, etc.bibliographic, statistical, business data, images, etc.

Page 11: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Traditional File Processing vs. Traditional File Processing vs. DatabaseDatabase

Sales Order program Payroll program

EmployeeCustomerInventorySalesman

Invoicing program

Customer

Traditional File processing approach

EmployeeCustomerInventory

DBMS

Other data

Database as a collection of related files

Sales Order program Payroll program Invoicing program

Page 12: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

File Based SystemsFile Based Systems

Naughty

NiceJust what asked for

CoalEstimation

DeliveryList

Application File

ToysAddresses

Toys

Page 13: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Traditional File-Based SystemsTraditional File-Based Systems

A collection of application programs that perform A collection of application programs that perform services for the end-users such as the production of services for the end-users such as the production of reports. Each program defines and manages its own reports. Each program defines and manages its own data.data.

Limitations of the File-Based Approach:Limitations of the File-Based Approach: Separation and isolation of dataSeparation and isolation of data Duplication of dataDuplication of data Data dependenceData dependence Incompatible file formatIncompatible file format Fixed queriesFixed queries

Page 14: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Disadvantages of File ProcessingDisadvantages of File Processing

Program-Data DependenceProgram-Data Dependence All programs maintain metadata for each file they useAll programs maintain metadata for each file they use

Duplication of DataDuplication of Data Different systems/programs have separate copies of the same dataDifferent systems/programs have separate copies of the same data

Limited Data SharingLimited Data Sharing No centralized control of dataNo centralized control of data

Lengthy Development TimesLengthy Development Times Programmers must design their own file formatsProgrammers must design their own file formats

Excessive Program MaintenanceExcessive Program Maintenance 80% of of information systems budget80% of of information systems budget

Page 15: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Problems with Data DependencyProblems with Data Dependency Each application programmer must maintain their

own data Each application program needs to include code

for the metadata of each file Each application program must have its own

processing routines for reading, inserting, updating and deleting data

Lack of coordination and central control Non-standard file formats

Page 16: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Figure 1-2 Three file processing systems at Pine Valley Furniture

Duplicate Data

Page 17: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Problems with Data Problems with Data RedundancyRedundancy

Waste of space to have duplicate dataWaste of space to have duplicate data Causes more maintenance headachesCauses more maintenance headaches The biggest problem: The biggest problem:

When data changes in one file, could When data changes in one file, could cause inconsistenciescause inconsistencies

Compromises Compromises data integritydata integrity

Page 18: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

SOLUTION: SOLUTION: The DATABASE ApproachThe DATABASE Approach

Central repository of shared dataCentral repository of shared data Data is managed by a controlling Data is managed by a controlling

agentagent Stored in a standardized, convenient Stored in a standardized, convenient

formform

Requires a Database Management System (DBMS)

Page 19: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Database Management Database Management SystemSystem

DBMS manages data resources like an operating system manages hardware resources

A software system that is used to create, maintain, and provide controlled access to user databases

Page 20: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

DBMS BenefitsDBMS Benefits Minimal Data RedundancyMinimal Data Redundancy Consistency of DataConsistency of Data Integration of DataIntegration of Data Sharing of DataSharing of Data Ease of Application DevelopmentEase of Application Development Uniform Security, Privacy, and Integrity Uniform Security, Privacy, and Integrity

ControlsControls Data Accessibility and ResponsivenessData Accessibility and Responsiveness Data IndependenceData Independence Reduced Program MaintenanceReduced Program Maintenance

Page 21: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

DisadvantagesDisadvantages

ComplexityComplexity SizeSize Cost of DBMSCost of DBMS Additional hardware costsAdditional hardware costs Cost of conversionCost of conversion PerformancePerformance Higher impact on failureHigher impact on failure

Page 22: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

Data IndependenceData Independence Physical representation and location of data Physical representation and location of data

and the use of that data are separatedand the use of that data are separated• The application doesn’t need to know how or The application doesn’t need to know how or

where the database has stored the data, but just where the database has stored the data, but just how to ask for it.how to ask for it.

• Moving a database from one DBMS to another Moving a database from one DBMS to another should not have a material effect on application should not have a material effect on application programprogram

• Recoding, adding fields, etc. in the database Recoding, adding fields, etc. in the database should not affect applicationsshould not affect applications

Page 23: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Types of Database SystemsTypes of Database Systems

PC DatabasesPC Databases Centralized DatabaseCentralized Database Client/Server DatabasesClient/Server Databases Distributed DatabasesDistributed Databases Database ModelsDatabase Models

Page 24: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

PC DatabasesPC Databases

E.G.AccessFoxProDbaseEtc.

Page 25: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Centralized DatabasesCentralized Databases

Central Computer

Page 26: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Client Server DatabasesClient Server Databases

NetworkClient

Client

Client

DatabaseServer

Page 27: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Distributed DatabasesDistributed Databases

computercomputer

computer

Location A

Location CLocation B

HomogeneousDatabases

Page 28: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Distributed DatabasesDistributed Databases

Local Network

DatabaseServer

Client

Client

CommServer

Remote Comp.

Remote Comp.

HeterogeneousOr FederatedDatabases

Page 29: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Range of Database ApplicationsRange of Database Applications

PC databasesPC databases Usually for individual Usually for individual

Workgroup databasesWorkgroup databases Small group use where everyone has access to the Small group use where everyone has access to the

database over a LANdatabase over a LAN Departmental databasesDepartmental databases

Larger than a workgroup – but similarLarger than a workgroup – but similar Enterprises databasesEnterprises databases

For the entire organization over an intranet (or For the entire organization over an intranet (or sometimes the internet)sometimes the internet)

Page 30: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

Database activities:Database activities: CreateCreate

• Add new data to the databaseAdd new data to the database ReadRead

• Read current data from the databaseRead current data from the database UpdateUpdate

• Update or modify current database dataUpdate or modify current database data DeleteDelete

• Remove current data from the databaseRemove current data from the database

Page 31: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

EnterpriseEnterprise OrganizationOrganization

EntityEntity Person, Place, Thing, Event, Concept...Person, Place, Thing, Event, Concept...

AttributesAttributes Data elements (facts) about some entityData elements (facts) about some entity Also sometimes called fields or items or domainsAlso sometimes called fields or items or domains

Data valuesData values instances of a particular attribute for a particular entityinstances of a particular attribute for a particular entity

Page 32: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

RecordsRecords The set of values for all attributes of a The set of values for all attributes of a

particular entityparticular entity “ “tuples” or “rows” in relational DBMStuples” or “rows” in relational DBMS

FileFile Collection of records Collection of records “ “Relation” or “Table” in relational DBMSRelation” or “Table” in relational DBMS

Page 33: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

KeyKey an attribute or set of attributes used to identify an attribute or set of attributes used to identify

or locate records in a fileor locate records in a file Primary KeyPrimary Key

an attribute or set of attributes that an attribute or set of attributes that uniquelyuniquely identifies each record in a fileidentifies each record in a file

Page 34: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Terms and ConceptsTerms and Concepts

Data AdministrationData Administration Responsibility for the overall management of data Responsibility for the overall management of data

resources within an organizationresources within an organization Database AdministrationDatabase Administration

Responsibility for physical database design and Responsibility for physical database design and technical issues in database managementtechnical issues in database management

Data StewardData Steward Responsibility for some subset of the organization’s Responsibility for some subset of the organization’s

data, and all of the interactions (applications, user data, and all of the interactions (applications, user access, etc.) for that dataaccess, etc.) for that data

Page 35: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Figure 1-11 Components of the database environment

Page 36: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Components of the Components of the Database EnvironmentDatabase Environment

CASE Tools – computer-aided software engineering Repository – centralized storehouse of metadata Database Management System (DBMS) – software for managing

the database Database – storehouse of the data Application Programs – software using the data User Interface – text and graphical displays to users Data Administrators – personnel responsible for maintaining the

database System Developers – personnel responsible for designing

databases and software End Users – people who use the applications and databases

Page 37: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Evolution of DB SystemsEvolution of DB Systems

Flat files - 1960s - 1980s Hierarchical – 1970s - 1990s Network – 1970s - 1990s Relational – 1980s - present Object-oriented – 1990s - present Object-relational – 1990s - present Data warehousing – 1980s - present Web-enabled – 1990s - present

Page 38: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

Example of a DatabaseExample of a Database

Page 39: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?

The SQL Query Language

To find all supliers in London Select * FROM S Where city=“London” • To find just names and status, replace

the first line: SELECT sname, status

Page 40: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?
Page 41: Introduction to Database How to Organize Information?  What are the different structures we use to organize information?  What are the organizing principles?