411 likes | 902 Views
Introduction to Database Design Methodology. Chapter 1 The Importance of Good Database Design. Learning Goals. To know the basic idea and purposes of database design To be aware of the importance of good database design in effective database management
E N D
Introduction to Database Design Methodology Chapter 1 The Importance of Good Database Design
Learning Goals • To know the basic idea and purposes of database design • To be aware of the importance of good database design in effective database management • To identify some factors to be considered in database design
Table of Contents • What is database design? • Why is good database design important? • Comparing different examples of database design • Some factors to be considered in database design
What is Database Design?
Database Design • In various applications of computer in data processing (e.g. library catalogue system), database is used to store data in fulfilling users’ needs. • The database should be designed carefully, otherwise the design could not satisfy all user requirements, or make the data retrieval and processing slow. A poorly-designed database may also increase the chance of storing incorrect and invalid data. • In this chapter, we will study the basic idea of database design, and explore some examples of database design.
What is Database Design? • Database design is the process for designing the structure of a database. • The basic purposes of database design are to determine: • What data should be stored? • How the data are stored? • How the data are related? • In relational database model, it means designing the structures of tables and determining the relationships among the tables.
What is Database Design? What data should be stored? What data should be stored? ? ? Database How the data are stored? ? ? ? How the data are related?
Why is Good Database Design Important?
Why is Good Database Design Important? • Good database design is important for effective database management. • Database management includes the following tasks: • Retrieval of information from a database. • Modification, deletion and insertion of data in a database. • Modification on database structure so as to meet the changing needs.
Why is Good Database Design Important? • A well-designed database should • allow users to retrieve the correct information efficiently; • minimize the chance of getting errors in modification, deletion and insertion of data; • be flexiblein modification of structure to meet the changing needs.
Why is Good Database Design Important? • From the point of view of database designers, good database design may also mean that they do not need to write complex instructions (SQL statements) to retrieve the required information. • The following readings show the views of some database designers on the importance of good database design. • Reading 1:Good SQL goes hand in hand with Good Database Design http://databaseperformance.blogspot.com/2008/02/good-sql-goes-hand-in-hand-with-good.html • Reading 2:The Cost of Poor Database Design http://www.toadworld.com/Default.aspx?tabid=67&EntryID=87
Why is Good Database Design Important? • There are even websites for IT experts to share their experiences on poor database design. The following is one of them. http://www.databasedesign-resource.com/worst-database-design.html • Although the articles in the above website are quite technical for secondary school students to understand, they can reflect how important database design is.
Comparing Different Database Designs
Comparing Different Database Designs • Depending on how the data stored are to be manipulated, there could be different ways to design the database. • We will explore some examples of database design in the rest of this chapter. • The systematic approaches for designing database will be introduced in later chapters.
Comparing Different Database Designs • To see how the database design can affect the effectiveness of database management, let us study some examples through the following activities.
Activity 1 • Refer to Worksheet 1 of Chapter 1 • This activity will let you understand the importance of designing suitable fields in constructing table(s) in a database.
Activity 2 • Refer to Worksheet 2 of Chapter 1 • This activity will let you understand the problems associated with duplicate data in a database. • You will also learn that amount of duplicate data can be reduced by splitting up the table(s) appropriately.
Activity 3 • Refer to Worksheet 3 of Chapter 1 • In this activity, you will explore three database designs for handling the same problem. • You will compare the designs in terms of their efficiency in performing various types of manipulations, such as retrieval of data, updating of data and modification of database structure, etc. • Another important issue to be considered in database design is the control of data duplication. • We shall study a database design with minimal data duplication. The method for designing such database will be introduced in later chapters.
Factors to be Considered in Database Design
Factors to be Considered in Database Design • As a conclusion of the above activities, let us summarize the factors to be considered in database design as follows: • Fulfillment of all users’ needs. (Activity 1) • Reasonable performance in manipulations of database. (Activity 3) • Minimal duplication of data. This can avoid data inconsistency. (Activities 2 and 3) • Flexibility in further development. This is to cater for expansion of user requirements. (Activities 1 and 3)
References • http://www.schools.ash.org.au/olshc/infotech/dbdesign.htm • http://www.wrox.com/WileyCDA/Section/id-129433.html • http://www.databasedev.co.uk/table_design_tips.html • http://www.articles.freemegazone.com/Database_Design_mistakes.php