Database Design Overview

22
Database Design Overview

description

Database Design Overview. Overview of Database Design. Purpose of Data Modeling. Assist in understanding of the semantics of data Facilitate the communication about information requirements. Expressability. Simplicity. Extensibility. Integrity. Nonredundancy. Diagrammatic Representation. - PowerPoint PPT Presentation

Transcript of Database Design Overview

Page 1: Database Design Overview

Database Design Overview

Page 2: Database Design Overview

Overview of Database Design• Assist in understanding of the semantics of data• Facilitate the communication about information

requirements

Purpose of Data Modeling

Criteria for Optimal Data Models

Shareability

Diagrammatic Representation

Extensibility

Expressability

Structural Validity

Nonredundancy

Integrity

Simplicity

Page 3: Database Design Overview

Database Design Methodology• A structured approach that uses procedures, techniques,

tools and documentation aids to support and facilitate the process of design

Interaction with users

Structured methodology

Data-driven approach

Structural and integrity

considerations

Data dictionary

validate

diagrams

DBDL

Repeat

Page 4: Database Design Overview

Broad Goals of Database Development

• Develop a common vocabulary• Define data meaning• Ensure data quality• Provide efficient implementation

Page 5: Database Design Overview

Develop a Common Vocabulary

• Diverse groups of users• Difficult to obtain acceptance of a common

vocabulary• Compromise to find least objectionable

solution• Unify organization by establishing a common

vocabulary

Page 6: Database Design Overview

Define Meaning of Data• Business rules support organizational

policies• Restrictiveness of business rules

– Too restrictive: reject valid business interactions– Too loose: allow erroneous business interactions

• Exceptions allow flexibility

Example: - Faculty assignment to courses: timing issue - Prerequisite check: allow prerequisites to be violated

Page 7: Database Design Overview

Data Quality

• Poor data quality leads to poor decision making– Difficult customer communication– Inventory shortages

• Cost-benefit tradeoff to achieve desired level of data quality

• Long-term effects of poor data quality

Page 8: Database Design Overview

Data Quality Measures

• Completeness• Lack of ambiguity• Timeliness• Correctness• Consistency• Reliability

Page 9: Database Design Overview

Data Quality Measures• Completeness:

– database represents all important parts of an information system• Lack of ambiguity:

– each part of a database has only one meaning• Timeliness:

– business changes are posted to a database without excessive delays• Correctness:

– database contains values perceived by the user• Consistency:

– different parts of a database do not conflict• Reliability:

– failures or interference do not corrupt database

Importance of measure depends on the database, system, and organizationEach measure can be quantified

Page 10: Database Design Overview

Efficient Implementation

• Supersedes other goals• Optimization problem

– Maximize performance– Subject to constraints of data quality, data

meaning, and resource usage• Difficult problem:

– Number of choices– Relationships among choices– DBMS specific

Page 11: Database Design Overview

Database Development Phases

Conceptual Data Modeling

Logical Database Design

Distributed Database Design

Physical Database Design

ERD

Tables

Distribution Schema

Internal Schema, Populated DB

Data requirements

OPTIONAL

Page 12: Database Design Overview

13

Database Design

Conceptual database design - the process of constructing a model of the information used in an organization, independent of all physical considerations

Step 1 Build local conceptual data model for each user view

Page 13: Database Design Overview

14

Database Design

Logical database design for the relational model - the process of constructing a model of the info used in an organization based on a specific data model, but independent of a particular DBMS and other physical considerationsStep 2 Build and validate local data model for each user viewStep 3 Build and validate global logical data model

Page 14: Database Design Overview

15

Database Design

Physical database design for relational databases - the process of producing a description of the implementation of the database on secondary storage.

Step 4 Translate global data model for target DBMS

Step 5 Design physical representationStep 6 Design security mechanismsStep 7 Monitor and tune the operational

system

Page 15: Database Design Overview

Phases of Database Design

• Process of constructing a model of the information used in an enterprise independent of all physical considerations

Conceptual Database Design

• Process of constructing a model of information used in an enterprise based on a specific data model but independent of a particular DBMS or any other physical considerations

Logical Database Design

• (Optional)Process of deciding about the placement of data across the sites of a computer network. Involves designing the network itself, as well as distribution of DBMS software, DB applications and data

Distributed Database Design

• Description of the implementation of the database on secondary storage. It describes the storage structures and access methods for efficient access.

Physical Database Design

Page 16: Database Design Overview

Overview of Database Design

Build local conceptual data model for each user view

Build and Validate local logical data model for each user view

Build and validate global logical Model

Translate global logical model for target DBMS

Design Physical representation

Design Security Mechanisms

Monitor and Tune operational system

Conceptual

Logical

Physical

Page 17: Database Design Overview

Conceptual Database Design

1.1 • Identify entity types

1.2 • Identify relationship

types

1.3 • Identify and associate

attributes with entity or relationship types

1.4 • Determine Attribute

Domains

1.5 • Determine candidate

and primary key attributes

1.6 • Specialize/generalize

entity types

1.7 • Draw Entity-

Relationship Diagram

1.8 • Review local

conceptual data model with user

1. Build local logical data model for each user view

Page 18: Database Design Overview

Logical Database Design

2.1 • Map local Conceptual

data model to local logical data model

2.2 • Derive relations from

local logical data model

2.3 • Validate model using

normalization

2.4 • Validate model against

user transactions

2.5 • Draw Entity

relationship Diagram

2.6 • Define integrity

constraints

2.7 • Review Local logical

data model with user

2. Build and validate local logical data model

Page 19: Database Design Overview

Logical Database Design

3.1 • Merge local logical

data models into global model

3.2 • Validate global logical

data model

3.3 • Check for future

growth

3.4 • Draw final Entity

Relationship diagram

3.5 • Review global logical

data model with users

3. Build and Validate Global Logical data model

Page 20: Database Design Overview

Physical Database Design

4. Translate Global Logical Data Model for target DBMS

4.1 Design base relations for target DBMS4.2 Design enterprise constraints for target DBMS

5. Design Physical Representations5.1 Analyze transactions5.2 Choose file organizations

Page 21: Database Design Overview

Physical Database design

5.3 Choose secondary indexes5.4 Consider introduction of controlled redundancy

6. Design Security Mechanisms6.1 Design user views6.2 Design access rules

7. Monitor and tune operational system

Page 22: Database Design Overview