Previous Topic: Refinement OptionsNext Topic: Sample Exercise #1: Estimating I/Os for a Retrieval Transaction


Estimating I/Os for Transactions

After you have assigned data location and access modes to the entities in a database, you need to estimate the number of input/output operations that each business transaction will perform. You estimate the I/O count for a transaction by tracing the flow of processing from one entity to another in the database. As you trace the flow of processing, you determine the number of I/Os required to access all necessary entities.

The I/O estimate for a business transaction depends on several factors, including:

General guidelines

Assuming that an entire cluster of database entities can fit on a single database page, you can use the following general guidelines for estimating I/Os:

To calculate the time required to perform all I/O operations in a particular transaction, perform the following computations:

Once you have determined how much time will be required to execute a particular transaction, you need to compare this time figure with the performance goal you established earlier in the design process. If the required time does not meet your expectations, you need to modify the physical database model until it does. Sometimes you have to change your expectations.

For further information on establishing performance goals for business transactions, see Chapter 10, "Identifying Application Performance Requirements".

Two sample exercises in estimating I/Os are presented below. Each exercise uses the EMPLOYEE, EXPERTISE, and SKILL entities:

Two sample exercises in estimating I/Os.