Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Chapter 11: Physical Database Design Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer © Prentice Hall, 2004 11-1 Chapter Objectives  After studying this chapter you should be able to: – Design database fields. – Evaluate denormalization situations. – Design file organization structures. – Design object-relational features. Chapter 11 © Prentice Hall, 2004 11-2 Chapter 11 © Prentice Hall, 2004 11-3 What Is Physical Database Design?  The part of a database design that deals with efficiency considerations for access of data  Processing speed, storage space, and data manipulation are key issues in physical database design Chapter 11 © Prentice Hall, 2004 11-4 Sometimes, the analyst and the designer are the same person, Deliverables Chapter 11 © Prentice Hall, 2004 11-5 Chapter 11 © Prentice Hall, 2004 11-6 What Is SQL?  Structured Query Language  The standard language for creating and using relational databases  ANSI Standards – SQL-92 – most commonly available – SQL-99 – included object-relational features Chapter 11 © Prentice Hall, 2004 11-7 Common SQL Commands  CREATE TABLE – used to define table structures and link tables together  SELECT – used to retrieve data using specified formats and selection criteria  INSERT – used to add new rows to a table  UPDATE – used to modify data in existing table rows  DELETE – used to remove rows from tables Chapter 11 © Prentice Hall, 2004 11-8 Example CREATE TABLE Statements Here, a table called DEPT is created, with one numeric and two text fields. The numeric field is the primary key. Chapter 11 © Prentice Hall, 2004 11-9 SELECT The SELECT, and FROM clauses are required. All others are optional. WHERE is used very commonly. Chapter 11 © Prentice Hall, 2004 11-10 Example SELECT Statements  Select * from EMP where ENAME = ‘SMITH’;  Select EMPNO, ENAME From EMP where JOB = ‘SALESMAN’ order by ENAME; Chapter 11 © Prentice Hall, 2004 11-11 What Is a Join Query?  A query in which the WHERE clause includes a match of primary key and foreign key values between tables that share a relationship  Select EMPNO, ENAME, DNAME from EMP, DEPT where EMP.DEPT_NO = DEPT.DEPT_NO; Chapter 11 © Prentice Hall, 2004 11-12 Example Data Manipulation Commands  Insert into DEPT values (50, ‘DESIGN’, ‘MIAMI’);  Update EMP set SAL = 3000 where EMPNO = 7698;  Delete from EMP where EMPNO = 7844 Chapter 11 © Prentice Hall, 2004 11-13 Designing Fields  Field – the smallest unit of named application data recognized by system software such as a DBMS  Fields map roughly onto attributes in conceptual data models  Field design involves consideration of identity, data types, sizes, and constraints Chapter 11 © Prentice Hall, 2004 11-14 Chapter 11 © Prentice Hall, 2004 11-15 Mapping a composite attribute onto multiple fields with various data types Chapter 11 © Prentice Hall, 2004 11-16 Creating and Using Composite Attribute Types Chapter 11 © Prentice Hall, 2004 11-17 Data Integrity Controls      Default Values – used if no explicit value is entered Format Controls – restricts data entry values in specific character positions Range Controls – forces values to be among an acceptable set of values Referential Integrity – forces foreign keys to align with primary keys Null Value Controls – determines whether fields can be empty of value Chapter 11 © Prentice Hall, 2004 11-18 Chapter 11 © Prentice Hall, 2004 11-19 What Is Denormalization?  The process of combining normalized relations into physical tables based on affinity of use of rows and fields, and on retrieval and update frequencies on the tables  Results in better speed of access, but reduces data integrity and increases data redundancy Chapter 11 © Prentice Hall, 2004 11-20 This will result in null values in several rows’ application data. Chapter 11 © Prentice Hall, 2004 11-21 Chapter 11 © Prentice Hall, 2004 11-22 This will result in duplications of item descriptions in several rows of the CanSupplyDR table. Chapter 11 © Prentice Hall, 2004 11-23 Duplicate regionManager data Chapter 11 © Prentice Hall, 2004 11-24 What Is a File Organization?  A technique for physically arranging the row objects of a file  Main purpose of file organization is to optimize speed of data access and modification Chapter 11 © Prentice Hall, 2004 11-25 Chapter 11 © Prentice Hall, 2004 11-26 Determining Table Scan Time  A table scan is a complete read of the file block by block, regardless of the number of row objects in the answer to a query  Block – a unit of data retrieval from secondary storage  Blocking factor – the number of row objects that fit in one block Chapter 11 © Prentice Hall, 2004 11-27 Determining Table Scan Time (Continued)  Block read time is determined by seek, rotation and transfer.  Average table scan time equals #rows in table divided by blocking factor multiplied by block read time Chapter 11 © Prentice Hall, 2004 11-28 What Is a Heap?  A file with no organization  Requires full table scan for data retrieval  Only use this for small, cacheable tables Chapter 11 © Prentice Hall, 2004 11-29 What Is Hashing?  A technique that uses an algorithm to convert a key value to a row address  Useful for random access, but not for sequential access Chapter 11 © Prentice Hall, 2004 11-30 What Is an Indexed File Organization?  A storage structure involving indexes, which are key values and pointers to row addresses  Indexed file organizations are structured to enable fast random and sequential access  Index files are fast for queries, but require additional overhead for inserts, deletes, and updates Chapter 11 © Prentice Hall, 2004 11-31 Random Access Processing Using B+ Tree Indexes Indexes are usually implemented as B+ trees These are balanced trees, which preserve a sequential ascending order of items as they are added. Chapter 11 © Prentice Hall, 2004 11-32 Issues to Consider When Selecting a File Organization  File size  Frequency of data retrievals  Frequency of updates  Factors related to primary and foreign keys  Factors related to non-key attributes Chapter 11 © Prentice Hall, 2004 11-33 Chapter 11 © Prentice Hall, 2004 11-34 Recap  After studying this chapter we learned to: – Design database fields. – Evaluate denormalization situations. – Design file organization structures. – Design object-relational features. Chapter 11 © Prentice Hall, 2004 11-35