SlideShare a Scribd company logo
1 of 40
Chapter 14




                       Database Design



McGraw-Hill/Irwin    Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved.
Objectives
       • Compare and contrast conventional files and modern,
         relational databases.
       • Define and give examples of fields, records, files, and
         databases.
       • Describe modern data architecture of files, operational
         databases, data warehouses, personal databases, and work
         group databases.
       • Compare roles of systems analyst, database administrator,
         and data administrator.
       • Describe architecture of database management system
       • Describe how a relational database implements entities,
         attributes, and relationships from a logical data model.
       • Transform a logical data model into a physical, relational
         database schema.
14-2
       • Generate SQL to create the database structure in a schema.
14-3
Conventional Files
       versus the Database
       File – a collection of similar records.
         • Files are unrelated to each other except in
           the code of an application program.
         • Data storage is built around the applications
           that use the files.

       Database – a collection of interrelated files
         • Records in one file (or table) are physically
           related to records in another file (or table).
         • Applications are built around the integrated
14-4       database
Files versus Database




14-5
Pros and Cons of
       Conventional Files
              Pros                    Cons
       • Easy to design       • Harder to adapt to
         because of their       sharing across
         single-application     applications
         focus                • Harder to adapt to
       • Excellent              new requirements
         performance due      • Need to duplicate
         to optimized           attributes in several
         organization for a     files.
         single application
14-6
Pros and Cons of Databases
               Pros                       Cons
       • Data independence       • More complex than file
         from applications         technology
         increases               • Somewhat slower
         adaptability and          performance
         flexibility             • Investment in DBMS
       • Superior scalability      and database experts
       • Ability to share data   • Need to adhere to
         across applications       design principles to
       • Less, and controlled      realize benefits
         redundancy (total       • Increased vulnerability
         non-redundancy is         due to consolidating in
         not achievable)           a centralized database
14-7
Fields

        Field – the smallest unit of meaningful
        data to be stored in a database
        • the physical implementation of a data
          attribute




14-8
Fields (continued)
       Primary key – a field that uniquely identifies a record.

       Secondary key – a field that identifies a single record
       or a subset of related records.

       Foreign key – a field that points to records in a
       different file.

       Descriptive field – any nonkey field.
14-9
Records

        Record – a collection of fields arranged in a
        predetermined format.
          • Fixed-length record structures
          • Variable-length record structures


        Blocking factor – the number of logical
        records included in a single read or write
        operation (from the computer’s
        perspective).
14-10
Files and Tables

        File – the set of all occurrences of a given
        record structure.

        Table – the relational database equivalent
        of a file.




14-11
Types of conventional files
        and tables
        • Master files – Records relatively permanent
          though values may change
        • Transaction files – Records describe business
          events
        • Document files – Historical data for review
          without overhead of regenerating document
        • Archival files – Master and transaction records
          that have been deleted
        • Table lookup files – Relatively static data that
          can be shared to maintain consistency
        • Audit files – Special records of updates to
14-12     other files
File and Table Design

        • Older file design methods required
          analyst to specify precisely how records
          should be:
          • Sequenced (File organization)
          • Accessed (File access)
        • Database technology usually
          predetermines and/or limits this
          • Trained database administrator may be given
            some control over organization, storage
            location, and access methods for
14-13       performance tuning.
Data Architecture

        Data architecture – a definition of how:
          • Files and databases are to be developed and
            used to store data
          • The file and/or database technology to be
            used
          • The administrative structure set up to
            manage the data resource



14-14
Data Architecture (continued)
        Data is stored in some combination of:
          • Conventional files
          • Operational databases – databases that
            support day-to-day operations and
            transactions for an information system. Also
            called transactional databases.
          • Data warehouses – databases that store
            data extracted from operational databases.
              • To support data mining
          • Personal databases
14-15
          • Work group databases
A Modern Data Architecture




14-16
Administrators

        Data administrator – a database specialist
        responsible for data planning, definition,
        architecture, and management.

        Database administrator – a specialist
        responsible for database technology, database
        design,construction, security, backup and
        recovery, and performance tuning.
          • A database administrator will administer one or more
            databases
14-17
Database Architecture
        Database architecture – the database
        technology used to support data architecture
          • Including the database engine, database utilities,
            CASE tools, and database development tools.

        Database management system (DBMS) –
        special software used to create, access, control,
        and manage a database.
          • The core of the DBMS is its database engine.
          • A data definition language (DDL) is used to physically
            define tables, fields, and structural relationships.
          • A data manipulation language (DML) is used to
            create, read, update, and delete records in database
14-18       and navigate between records.
Typical DBMS Architecture




14-19
Relational Databases

        Relational database – a database that
         implements stored data in a series of two-
         dimensional tables that are “related” to one
         another via foreign keys.
          • The physical data model is called a schema.
          • The DDL and DML for a relational database is called
            SQL (Structured Query Language).
          • Triggers – programs embedded within a database
            that are automatically invoked by updates.
          • Stored procedures – programs embedded within a
            database that can be called from an application
            program.
14-20
From Logical Data Model …




14-21
… To Physical Data Model
        (Relational Schema)




14-22
User Interface for a
        Relational PC DBMS




14-23
What is a Good Data Model?
        • A good data model is simple
          • The data attributes that describe an entity should
            describe only that entity

        • A good data model is essentially nonredundant
          • Each data attribute exists in at most one entity
            (except for foreign keys)

        • A good data model should be flexible and
          adaptable to future needs

          These goals are achieved through database
14-24     normalization.
Database Normalization
        (also see Chapter 8)
        • A logical entity (or physical table) is in first normal form
          if there are no attributes (fields) that can have more than
          one value for a single instance (record).

        • A logical entity (or physical table) is in second normal
          form if it is in first normal form and if the values of all
          nonprimary key attributes are dependent on the full
          primary key.

        • A logical entity (or physical table) is in third normal
          form if it is in second normal form and if the values of all
          nonprimary key attributes are not dependent on other
14-25     nonprimary key attributes.
Conventional File Design
        • Output and input designs typically completed
          first
        • Fundamental entities from data model designed
          as master or transaction records
          • Master files are typically fixed-length records
          • Associative entities from data model are joined into
            transaction records as variable-length records
        • File access and organization selected
          •   Sequential
          •   Indexed
          •   Hashed
14-26     •   ISAM/VSAM
Goals of Database Design
        • A database should provide for efficient storage,
          update, and retrieval of data.

        • A database should be reliable—the stored data
          should have high integrity and promote user
          trust in that data.

        • A database should be adaptable and scalable to
          new and unforeseen requirements and
          applications.

        • A database should support the business
14-27
          requirements of the information system.
Logical data Model in
        Third Normal Form




14-28
Database Schema

        • Database schema – a model or blueprint
          representing the technical
          implementation of the database.
          • Also called a physical data model




14-29
A Method for Database Design
        1. Review the logical data model.
        2. Create a table for each entity.
        3. Create fields for each attribute.
        4. Create index for each primary & secondary key.
        5. Create index for each subsetting criterion.
        6. Designate foreign keys for relationships.
        7. Define data types, sizes, null settings, domains,
           and defaults for each attribute.
        8. Create or combine tables to implement
           supertype/subtype structures.
14-30
        9. Evaluate/specify referential integrity constraints.
Database Integrity
        • Key integrity – Every table should have a
          primary key.
        • Domain integrity – Appropriate controls must
          be designed to ensure that no field takes on an
          inappropriate value
        • Referential integrity – the assurance that a
          foreign key value in one table has a matching
          primary key value in the related table.
          •   No restriction
          •   Delete: cascade
          •   Delete: restrict
14-31     •   Delete: set null
Data Types for Different
        Database Technologies
Logical Data Type        Physical Data Type    Physical Data Type        Physical Data Type
to be stored in field)      MS Access            MS SQL Server                 Oracle
Fixed length character     TEXT               CHAR (size) or           CHAR (size)
data (use for fields with                     character (size)
relatively fixed length
character data)
Variable length character TEXT                VARCHAR (max size)       VARCHAR (max size)
data (use for fields that                     or
require character data but                    character varying (max
for which size varies                         size)
greatly--such as
ADDRESS)
Very long character data MEMO                 TEXT                     LONG VARCHAR or
(use for long descriptions                                             LONG VARCHAR2
and notes--usually no
more than one such field
per record)
14-32
Data Types for Different
        Database Technologies (cont.)
 Logical Data Type        Physical Data Type     Physical Data Type      Physical Data Type
 to be stored in field)                            MS SQL Server               Oracle
 Integer number              MS Access
                          NUMBER               INT (size) or          INTEGER (size) or
                                               integer      or        NUMBER (size)
                                               smallinteger or
                                               tinuinteger
 Decimal number           NUMBER               DECIMAL (size,         DECIMAL (size, decimal
                                               decimal places) or     places) or
                                               NUMERIC (size,         NUMERIC (size, decimal
                                               decimal places)        places) or
                                                                      NUMBER
 Financial Number         CURRENCY             MONEY                  see decimal number
 Date (with time)         DATE/TIME            DATETIME or            DATE
                                               SMALLDATETIME
                                               Depending on
                                               precision needed
 Current time (use to    not supported         TIMESTAMP              not supported
 store the data and time
 from the computer’s
14-33
 system clock)
Data Types for Different
         Database Technologies (cont.)
 Logical Data Type        Physical Data Type    Physical Data Type      Physical Data Type
 to be stored in field)                            MS SQL Server              Oracle
 Yes or No; or True or    YES/NOAccess
                             MS                BIT                   use CHAR(1) and set a yes
 False                                                               or no domain

 Image                    OLE OBJECT           IMAGE                 LONGRAW
 Hyperlink                HYPERLINK            VARBINARY             RAW
 Can designer define      NO                   YES                   YES
 new data types?




14-34
Physical Database Schema




14-35
Database Schema with
        Referential Integrity Constraints




14-36
Database Distribution and
        Replication
        Data distribution analysis establishes
        which business locations need access to
        which logical data entities and attributes.




14-37
Database Distribution and
        Replication (continued)
        • Centralization
           • Entire database on a single server in one physical location
        • Horizontal distribution (also called partitioning)
           • Tables or row assigned to different database servers/locations.
           • Efficient access and security
           • Cannot always be easily recombined for management analysis
        • Vertical distribution (also called partitioning)
           • Specific table columns assigned to specific databases/servers
           • Similar advantages and disadvantages of Horizontal
        • Replication
           •   Data duplicated in multiple locations
           •   DBMS coordinates updates and synchronization
           •   Performance and accessibility advantages
14-38      •   Increases complexity
Database Capacity Planning
        • For each table sum the field sizes. This is the
          record size.
        • For each table, multiply the record size times
          the number of entity instances to be included in
          the table (planning for growth). This is the table
          size.
        • Sum the table sizes. This is the database size.
        • Optionally, add a slack capacity buffer (e.g.
          10percent) to account for unanticipated factors.
          This is the anticipated database capacity.
14-39
SQL DDL Code
 CREATE TABLE [dbo].[ClassCodes] (
         [ClassID] [Integer] Identity(1,1) NOT NULL,
         [DepartmentCodeID] [varchar] (3) NOT NULL ,
         [SectionCodeID] [varchar] (2) NOT NULL ,
         [ClassCodeID] [varchar] (5) NOT NULL ,
         [GroupCodeID] [varchar] (1) NOT NULL ,
         [ClassDescription] [varchar] (50) NOT NULL ,
         [ValidOnLine] bit NULL ,
         [LastUpdated] [smalldatetime] NULL
 ) ON [PRIMARY]
 GO

 Alter Table [dbo].[ClassCodes] Add Constraint pk_classcodes
          Primary Key (ClassID)
 Alter Table [dbo].[ClassCodes] Add Constraint df_classcodes_groupcodeid
          Default 'A' for GroupCodeID
 Alter Table [dbo].[ClassCodes] Add Constraint fk_classcodes_sectioncodes
          Foreign Key (DepartmentCodeID,SectionCodeID)
          References SectionCodes(DepartmentCodeID,SectionCodeID)
 Alter Table [dbo].[ClassCodes] Add Constraint un_classcodes_Dept_Section_Class
14-40     Unique (DepartmentCodeID,SectionCodeID,ClassCodeID)
 GO

More Related Content

What's hot

What's hot (20)

Chapter-1 Introduction to Database Management Systems
Chapter-1 Introduction to Database Management SystemsChapter-1 Introduction to Database Management Systems
Chapter-1 Introduction to Database Management Systems
 
RDBMS
RDBMSRDBMS
RDBMS
 
Data warehousing - Dr. Radhika Kotecha
Data warehousing - Dr. Radhika KotechaData warehousing - Dr. Radhika Kotecha
Data warehousing - Dr. Radhika Kotecha
 
data modeling and models
data modeling and modelsdata modeling and models
data modeling and models
 
Different data models
Different data modelsDifferent data models
Different data models
 
Data models
Data modelsData models
Data models
 
DATABASE MANAGEMENT SYSTEM
DATABASE MANAGEMENT SYSTEMDATABASE MANAGEMENT SYSTEM
DATABASE MANAGEMENT SYSTEM
 
Information Management
Information ManagementInformation Management
Information Management
 
Introduction of DBMS
Introduction of DBMSIntroduction of DBMS
Introduction of DBMS
 
Database design process
Database design processDatabase design process
Database design process
 
File Processing System
File Processing SystemFile Processing System
File Processing System
 
Database system concepts
Database system conceptsDatabase system concepts
Database system concepts
 
Normalization in a Database
Normalization in a DatabaseNormalization in a Database
Normalization in a Database
 
Database Normalization by Dr. Kamal Gulati
Database Normalization by Dr. Kamal GulatiDatabase Normalization by Dr. Kamal Gulati
Database Normalization by Dr. Kamal Gulati
 
3.organisasi sequential
3.organisasi sequential3.organisasi sequential
3.organisasi sequential
 
Data base management system
Data base management systemData base management system
Data base management system
 
080827 abramson inmon vs kimball
080827 abramson   inmon vs kimball080827 abramson   inmon vs kimball
080827 abramson inmon vs kimball
 
Introduction: Databases and Database Users
Introduction: Databases and Database UsersIntroduction: Databases and Database Users
Introduction: Databases and Database Users
 
Basic DBMS ppt
Basic DBMS pptBasic DBMS ppt
Basic DBMS ppt
 
Dbms Notes Lecture 4 : Data Models in DBMS
Dbms Notes Lecture 4 : Data Models in DBMSDbms Notes Lecture 4 : Data Models in DBMS
Dbms Notes Lecture 4 : Data Models in DBMS
 

Viewers also liked (18)

Column and hadoop
Column and hadoopColumn and hadoop
Column and hadoop
 
Chapter12 designing databases
Chapter12 designing databasesChapter12 designing databases
Chapter12 designing databases
 
Chap07
Chap07Chap07
Chap07
 
Chap15
Chap15Chap15
Chap15
 
Erakartzeko marketing aurkezpena
Erakartzeko marketing aurkezpenaErakartzeko marketing aurkezpena
Erakartzeko marketing aurkezpena
 
Risk taking and emotions
Risk taking and emotionsRisk taking and emotions
Risk taking and emotions
 
Chap04
Chap04Chap04
Chap04
 
Chap05
Chap05Chap05
Chap05
 
Chap06
Chap06Chap06
Chap06
 
Chap17
Chap17Chap17
Chap17
 
Asi Chap005
Asi Chap005Asi Chap005
Asi Chap005
 
Algorithms
AlgorithmsAlgorithms
Algorithms
 
Chap02
Chap02Chap02
Chap02
 
Chap01
Chap01Chap01
Chap01
 
Chap09
Chap09Chap09
Chap09
 
Chap03
Chap03Chap03
Chap03
 
Information Systems Analysis and Design
Information Systems Analysis and DesignInformation Systems Analysis and Design
Information Systems Analysis and Design
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
 

Similar to Chap14

Similar to Chap14 (20)

Management information system database management
Management information system database managementManagement information system database management
Management information system database management
 
Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01Fundamentals of Database ppt ch01
Fundamentals of Database ppt ch01
 
Relational
RelationalRelational
Relational
 
Chapter 09
Chapter 09Chapter 09
Chapter 09
 
System Analysis And Design
System Analysis And DesignSystem Analysis And Design
System Analysis And Design
 
Case mis ch05
Case mis ch05Case mis ch05
Case mis ch05
 
Lecture-1.ppt
Lecture-1.pptLecture-1.ppt
Lecture-1.ppt
 
Rdbms
RdbmsRdbms
Rdbms
 
CS3270 - DATABASE SYSTEM - Lecture (1)
CS3270 - DATABASE SYSTEM -  Lecture (1)CS3270 - DATABASE SYSTEM -  Lecture (1)
CS3270 - DATABASE SYSTEM - Lecture (1)
 
(Dbms) class 1 & 2 (Presentation)
(Dbms) class 1 & 2 (Presentation)(Dbms) class 1 & 2 (Presentation)
(Dbms) class 1 & 2 (Presentation)
 
Database
DatabaseDatabase
Database
 
Database Systems Lec 1.pptx
Database Systems Lec 1.pptxDatabase Systems Lec 1.pptx
Database Systems Lec 1.pptx
 
Chapter 5 data resource management
Chapter 5  data resource managementChapter 5  data resource management
Chapter 5 data resource management
 
Dbms unit 1
Dbms unit 1Dbms unit 1
Dbms unit 1
 
Dbms
DbmsDbms
Dbms
 
Introduction to RDBMS
Introduction to RDBMSIntroduction to RDBMS
Introduction to RDBMS
 
DBMS introduction
DBMS introductionDBMS introduction
DBMS introduction
 
Unit 01 dbms
Unit 01 dbmsUnit 01 dbms
Unit 01 dbms
 
01-Database Administration and Management.pdf
01-Database Administration and Management.pdf01-Database Administration and Management.pdf
01-Database Administration and Management.pdf
 
DBMS
DBMSDBMS
DBMS
 

Recently uploaded

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 

Recently uploaded (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 

Chap14

  • 1. Chapter 14 Database Design McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved.
  • 2. Objectives • Compare and contrast conventional files and modern, relational databases. • Define and give examples of fields, records, files, and databases. • Describe modern data architecture of files, operational databases, data warehouses, personal databases, and work group databases. • Compare roles of systems analyst, database administrator, and data administrator. • Describe architecture of database management system • Describe how a relational database implements entities, attributes, and relationships from a logical data model. • Transform a logical data model into a physical, relational database schema. 14-2 • Generate SQL to create the database structure in a schema.
  • 4. Conventional Files versus the Database File – a collection of similar records. • Files are unrelated to each other except in the code of an application program. • Data storage is built around the applications that use the files. Database – a collection of interrelated files • Records in one file (or table) are physically related to records in another file (or table). • Applications are built around the integrated 14-4 database
  • 6. Pros and Cons of Conventional Files Pros Cons • Easy to design • Harder to adapt to because of their sharing across single-application applications focus • Harder to adapt to • Excellent new requirements performance due • Need to duplicate to optimized attributes in several organization for a files. single application 14-6
  • 7. Pros and Cons of Databases Pros Cons • Data independence • More complex than file from applications technology increases • Somewhat slower adaptability and performance flexibility • Investment in DBMS • Superior scalability and database experts • Ability to share data • Need to adhere to across applications design principles to • Less, and controlled realize benefits redundancy (total • Increased vulnerability non-redundancy is due to consolidating in not achievable) a centralized database 14-7
  • 8. Fields Field – the smallest unit of meaningful data to be stored in a database • the physical implementation of a data attribute 14-8
  • 9. Fields (continued) Primary key – a field that uniquely identifies a record. Secondary key – a field that identifies a single record or a subset of related records. Foreign key – a field that points to records in a different file. Descriptive field – any nonkey field. 14-9
  • 10. Records Record – a collection of fields arranged in a predetermined format. • Fixed-length record structures • Variable-length record structures Blocking factor – the number of logical records included in a single read or write operation (from the computer’s perspective). 14-10
  • 11. Files and Tables File – the set of all occurrences of a given record structure. Table – the relational database equivalent of a file. 14-11
  • 12. Types of conventional files and tables • Master files – Records relatively permanent though values may change • Transaction files – Records describe business events • Document files – Historical data for review without overhead of regenerating document • Archival files – Master and transaction records that have been deleted • Table lookup files – Relatively static data that can be shared to maintain consistency • Audit files – Special records of updates to 14-12 other files
  • 13. File and Table Design • Older file design methods required analyst to specify precisely how records should be: • Sequenced (File organization) • Accessed (File access) • Database technology usually predetermines and/or limits this • Trained database administrator may be given some control over organization, storage location, and access methods for 14-13 performance tuning.
  • 14. Data Architecture Data architecture – a definition of how: • Files and databases are to be developed and used to store data • The file and/or database technology to be used • The administrative structure set up to manage the data resource 14-14
  • 15. Data Architecture (continued) Data is stored in some combination of: • Conventional files • Operational databases – databases that support day-to-day operations and transactions for an information system. Also called transactional databases. • Data warehouses – databases that store data extracted from operational databases. • To support data mining • Personal databases 14-15 • Work group databases
  • 16. A Modern Data Architecture 14-16
  • 17. Administrators Data administrator – a database specialist responsible for data planning, definition, architecture, and management. Database administrator – a specialist responsible for database technology, database design,construction, security, backup and recovery, and performance tuning. • A database administrator will administer one or more databases 14-17
  • 18. Database Architecture Database architecture – the database technology used to support data architecture • Including the database engine, database utilities, CASE tools, and database development tools. Database management system (DBMS) – special software used to create, access, control, and manage a database. • The core of the DBMS is its database engine. • A data definition language (DDL) is used to physically define tables, fields, and structural relationships. • A data manipulation language (DML) is used to create, read, update, and delete records in database 14-18 and navigate between records.
  • 20. Relational Databases Relational database – a database that implements stored data in a series of two- dimensional tables that are “related” to one another via foreign keys. • The physical data model is called a schema. • The DDL and DML for a relational database is called SQL (Structured Query Language). • Triggers – programs embedded within a database that are automatically invoked by updates. • Stored procedures – programs embedded within a database that can be called from an application program. 14-20
  • 21. From Logical Data Model … 14-21
  • 22. … To Physical Data Model (Relational Schema) 14-22
  • 23. User Interface for a Relational PC DBMS 14-23
  • 24. What is a Good Data Model? • A good data model is simple • The data attributes that describe an entity should describe only that entity • A good data model is essentially nonredundant • Each data attribute exists in at most one entity (except for foreign keys) • A good data model should be flexible and adaptable to future needs These goals are achieved through database 14-24 normalization.
  • 25. Database Normalization (also see Chapter 8) • A logical entity (or physical table) is in first normal form if there are no attributes (fields) that can have more than one value for a single instance (record). • A logical entity (or physical table) is in second normal form if it is in first normal form and if the values of all nonprimary key attributes are dependent on the full primary key. • A logical entity (or physical table) is in third normal form if it is in second normal form and if the values of all nonprimary key attributes are not dependent on other 14-25 nonprimary key attributes.
  • 26. Conventional File Design • Output and input designs typically completed first • Fundamental entities from data model designed as master or transaction records • Master files are typically fixed-length records • Associative entities from data model are joined into transaction records as variable-length records • File access and organization selected • Sequential • Indexed • Hashed 14-26 • ISAM/VSAM
  • 27. Goals of Database Design • A database should provide for efficient storage, update, and retrieval of data. • A database should be reliable—the stored data should have high integrity and promote user trust in that data. • A database should be adaptable and scalable to new and unforeseen requirements and applications. • A database should support the business 14-27 requirements of the information system.
  • 28. Logical data Model in Third Normal Form 14-28
  • 29. Database Schema • Database schema – a model or blueprint representing the technical implementation of the database. • Also called a physical data model 14-29
  • 30. A Method for Database Design 1. Review the logical data model. 2. Create a table for each entity. 3. Create fields for each attribute. 4. Create index for each primary & secondary key. 5. Create index for each subsetting criterion. 6. Designate foreign keys for relationships. 7. Define data types, sizes, null settings, domains, and defaults for each attribute. 8. Create or combine tables to implement supertype/subtype structures. 14-30 9. Evaluate/specify referential integrity constraints.
  • 31. Database Integrity • Key integrity – Every table should have a primary key. • Domain integrity – Appropriate controls must be designed to ensure that no field takes on an inappropriate value • Referential integrity – the assurance that a foreign key value in one table has a matching primary key value in the related table. • No restriction • Delete: cascade • Delete: restrict 14-31 • Delete: set null
  • 32. Data Types for Different Database Technologies Logical Data Type Physical Data Type Physical Data Type Physical Data Type to be stored in field) MS Access MS SQL Server Oracle Fixed length character TEXT CHAR (size) or CHAR (size) data (use for fields with character (size) relatively fixed length character data) Variable length character TEXT VARCHAR (max size) VARCHAR (max size) data (use for fields that or require character data but character varying (max for which size varies size) greatly--such as ADDRESS) Very long character data MEMO TEXT LONG VARCHAR or (use for long descriptions LONG VARCHAR2 and notes--usually no more than one such field per record) 14-32
  • 33. Data Types for Different Database Technologies (cont.) Logical Data Type Physical Data Type Physical Data Type Physical Data Type to be stored in field) MS SQL Server Oracle Integer number MS Access NUMBER INT (size) or INTEGER (size) or integer or NUMBER (size) smallinteger or tinuinteger Decimal number NUMBER DECIMAL (size, DECIMAL (size, decimal decimal places) or places) or NUMERIC (size, NUMERIC (size, decimal decimal places) places) or NUMBER Financial Number CURRENCY MONEY see decimal number Date (with time) DATE/TIME DATETIME or DATE SMALLDATETIME Depending on precision needed Current time (use to not supported TIMESTAMP not supported store the data and time from the computer’s 14-33 system clock)
  • 34. Data Types for Different Database Technologies (cont.) Logical Data Type Physical Data Type Physical Data Type Physical Data Type to be stored in field) MS SQL Server Oracle Yes or No; or True or YES/NOAccess MS BIT use CHAR(1) and set a yes False or no domain Image OLE OBJECT IMAGE LONGRAW Hyperlink HYPERLINK VARBINARY RAW Can designer define NO YES YES new data types? 14-34
  • 36. Database Schema with Referential Integrity Constraints 14-36
  • 37. Database Distribution and Replication Data distribution analysis establishes which business locations need access to which logical data entities and attributes. 14-37
  • 38. Database Distribution and Replication (continued) • Centralization • Entire database on a single server in one physical location • Horizontal distribution (also called partitioning) • Tables or row assigned to different database servers/locations. • Efficient access and security • Cannot always be easily recombined for management analysis • Vertical distribution (also called partitioning) • Specific table columns assigned to specific databases/servers • Similar advantages and disadvantages of Horizontal • Replication • Data duplicated in multiple locations • DBMS coordinates updates and synchronization • Performance and accessibility advantages 14-38 • Increases complexity
  • 39. Database Capacity Planning • For each table sum the field sizes. This is the record size. • For each table, multiply the record size times the number of entity instances to be included in the table (planning for growth). This is the table size. • Sum the table sizes. This is the database size. • Optionally, add a slack capacity buffer (e.g. 10percent) to account for unanticipated factors. This is the anticipated database capacity. 14-39
  • 40. SQL DDL Code CREATE TABLE [dbo].[ClassCodes] ( [ClassID] [Integer] Identity(1,1) NOT NULL, [DepartmentCodeID] [varchar] (3) NOT NULL , [SectionCodeID] [varchar] (2) NOT NULL , [ClassCodeID] [varchar] (5) NOT NULL , [GroupCodeID] [varchar] (1) NOT NULL , [ClassDescription] [varchar] (50) NOT NULL , [ValidOnLine] bit NULL , [LastUpdated] [smalldatetime] NULL ) ON [PRIMARY] GO Alter Table [dbo].[ClassCodes] Add Constraint pk_classcodes Primary Key (ClassID) Alter Table [dbo].[ClassCodes] Add Constraint df_classcodes_groupcodeid Default 'A' for GroupCodeID Alter Table [dbo].[ClassCodes] Add Constraint fk_classcodes_sectioncodes Foreign Key (DepartmentCodeID,SectionCodeID) References SectionCodes(DepartmentCodeID,SectionCodeID) Alter Table [dbo].[ClassCodes] Add Constraint un_classcodes_Dept_Section_Class 14-40 Unique (DepartmentCodeID,SectionCodeID,ClassCodeID) GO

Editor's Notes

  1. This repository of slides is intended to support the named chapter. The slide repository should be used as follows: Copy the file to a unique name for your course and unit. Edit the file by deleting those slides you don’t want to cover, editing other slides as appropriate to your course, and adding slides as desired. Print the slides to produce transparency masters or print directly to film or present the slides using a computer image projector. Each slide includes instructor notes. To view those notes in PowerPoint, click-left on the View Menu; then click left on Notes View sub-menu. You may need to scroll down to see the instructor notes. The instructor notes are also available in hardcopy as the Instructor Guide to Accompany Systems Analysis and Design Methods, 6/ed.
  2. Chapter 14 – Database Design No additional notes
  3. Chapter 14 – Database Design Teaching Notes This slide shows the how this chapter's content fits with the building blocks framework used throughout the textbook. The emphasis of this chapter is with the physical design phase, focusing on KNOWLEDGE. It involves system designers and systems analysts.
  4. Chapter 14 – Database Design Teaching Notes The point about data built around applications or vice-versa is illustrated on the next slide.
  5. Chapter 14 – Database Design Teaching Notes When the emphasis is on the program rather than the data, it leads to redundant and conflicting data.
  6. Chapter 14 – Database Design No additional notes
  7. Chapter 14 – Database Design No additional notes
  8. No additional notes.
  9. No additional notes.
  10. Chapter 14 – Database Design No additional notes
  11. Chapter 14 – Database Design No additional notes
  12. No additional notes.
  13. No additional notes.
  14. Chapter 14 – Database Design No additional notes
  15. Chapter 14 – Database Design No additional notes
  16. Chapter 14 – Database Design Teaching Notes It is useful to walk through this diagram.
  17. Chapter 14 – Database Design No additional notes
  18. Chapter 14 – Database Design No additional notes
  19. Chapter 14 – Database Design Teaching Notes Point out everything above the DBMS block is traditionally called front-end while the DMBS and data are called back-end. Explain that metadata is “data about data” that describes the structure of the user data.
  20. Chapter 14 – Database Design No additional notes
  21. Chapter 14 – Database Design No additional notes
  22. Chapter 14 – Database Design Teaching Notes This is the physical relational database schema for the previous slide.
  23. No additional notes.
  24. Chapter 14 – Database Design No additional notes
  25. Chapter 14 – Database Design Teaching Notes This is a review from Chapter 8. Logical entity = Physical table.
  26. No additional notes.
  27. Chapter 14 – Database Design No additional notes
  28. No additional notes.
  29. No additional notes
  30. Chapter 14 – Database Design Teaching Notes Referential integrity is discussed on the next slide.
  31. Chapter 14 – Database Design No additional notes
  32. Teaching Notes Comparing the data types of different databases underscores database-specific data types vs. conceptual data types and broadens students’ understanding of databases If your school uses another database, add a fourth column
  33. Teaching Notes Comparing the data types of different databases underscores database-specific data types vs. conceptual data types and broadens students’ understanding of databases If your school uses another database, add a fourth column
  34. Teaching Notes Comparing the data types of different databases underscores database-specific data types vs. conceptual data types and broadens students’ understanding of databases If your school uses another database, add a fourth column
  35. Chapter 14 – Database Design No additional notes
  36. Chapter 14 – Database Design No additional notes
  37. Chapter 14 – Database Design No additional notes
  38. No additional notes.
  39. No additional notes.
  40. Teaching Notes DDL can often be created by a CASE tool given a physical data model. DDL can also be hand-written.