01.09.2016 Views

Beginning Oracle Database 11g Administration From Novice to Professional

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 7<br />

Physical <strong>Database</strong> Design<br />

In most people’s vocabularies, design means veneer. It’s interior decorating. It’s the<br />

fabric of the curtains and the sofa. But <strong>to</strong> me, nothing could be further from the<br />

meaning of design. Design is the fundamental soul of a man- made creation that<br />

ends up expressing itself in successive outer layers of the product or service.<br />

—Apple CEO Steve Jobs, interviewed in Fortune magazine; January 24, 2000<br />

The two stages of database design are logical and physical design. Logical database<br />

design, also referred <strong>to</strong> as data modeling, is done first. It is the process of studying the<br />

workings of a business organization, constructing a set of tables <strong>to</strong> s<strong>to</strong>re the business data,<br />

and understanding the constraints on the data, the dependencies between the tables, and<br />

the business rules concerning the data. The logical database design process is conducted<br />

without reference <strong>to</strong> any specific database technology such as <strong>Oracle</strong> or Microsoft SQL<br />

Server, and a simple example can be found in <strong>Oracle</strong> <strong>Database</strong> <strong>11g</strong> Java Developer’s Guide.<br />

Tools such as <strong>Oracle</strong> Designer, CA ERwin Data Modeler, Embarcadero ER/Studio, and<br />

Toad Data Modeler can be used for the purpose. Physical database design follows logical<br />

database design. First, the logical model is mapped <strong>to</strong> the proprietary features of the<br />

chosen database technology. Security requirements, integrity requirements, and business<br />

rules are also implemented. Finally, we consider performance: the ability of the database<br />

engine <strong>to</strong> handle work requests efficiently. This typically involves the creation of indexes<br />

on the data, and <strong>Oracle</strong> <strong>Database</strong> provides a wealth of indexing mechanisms <strong>to</strong> choose<br />

from.<br />

Performance considerations can come <strong>to</strong> the forefront at any time during the life of<br />

the database; new queries can be introduced at any time. <strong>Database</strong> administra<strong>to</strong>rs must<br />

therefore understand the mechanisms that can be used <strong>to</strong> improve performance.<br />

Three broad categories of performance mechanisms are available for physical database<br />

design. Indexes can be used <strong>to</strong> quickly find the data. Partitions and clusters can be used <strong>to</strong><br />

organize the data. Finally, materialized views and denormalized tables can be used <strong>to</strong> perform<br />

expensive operations like Joins ahead of time.<br />

131

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!