Chapter 18 Methodology – Monitoring and Tuning the Operational System Transparencies © Pearson Education Limited 1995, 2005
2 Chapter 18 - Objectives u Meaning of denormalization. u When to denormalize to improve performance. u Importance of monitoring and tuning the operational system. u How to measure efficiency. u How system resources affect performance. © Pearson Education Limited 1995, 2005
3 Step 7 Consider the Introduction of Controlled Redundancy To determine whether introducing redundancy in a controlled manner by relaxing normalization rules will improve the performance of the system. © Pearson Education Limited 1995, 2005
4 Step 7 Consider the Introduction of Controlled Redundancy u Result of normalization is a design that is structurally consistent with minimal redundancy. u However, sometimes a normalized database does not provide maximum processing efficiency. u May be necessary to accept loss of some benefits of a fully normalized design in favor of performance. © Pearson Education Limited 1995, 2005
5 Step 7 Consider the Introduction of Controlled Redundancy u Also consider that denormalization: –makes implementation more complex; –often sacrifices flexibility; –may speed up retrievals but it slows down updates. © Pearson Education Limited 1995, 2005
6 Step 7 Consider the Introduction of Controlled Redundancy u Denormalization refers to a refinement to relational schema such that the degree of normalization for a modified relation is less than the degree of at least one of the original relations. u Also use term more loosely to refer to situations where two relations are combined into one new relation, which is still normalized but contains more nulls than original relations. © Pearson Education Limited 1995, 2005
7 Step 7 Consider the Introduction of Controlled Redundancy u Consider denormalization in following situations, specifically to speed up frequent or critical transactions: –Step 7.1 Combining 1:1 relationships –Step 7.2 Duplicating non-key attributes in 1:* relationships to reduce joins –Step 7.3 Duplicating foreign key attributes in 1:* relationships to reduce joins © Pearson Education Limited 1995, 2005
8 Step 7 Consider the Introduction of Controlled Redundancy –Step 7.4 Duplicating attributes in *:* relationships to reduce joins –Step 7.5 Introducing repeating groups –Step 7.6 Creating extract tables –Step 7.7 Partitioning relations. © Pearson Education Limited 1995, 2005
9 Sample Relation Diagram © Pearson Education Limited 1995, 2005
10 Sample Relations © Pearson Education Limited 1995, 2005
11 Step 7.1 Combining 1:1 relationships © Pearson Education Limited 1995, 2005
12 Step 7.2 Duplicating non-key attributes in 1:* relationships to reduce joins © Pearson Education Limited 1995, 2005
13 Step 7.2 Duplicating non-key attributes in 1:* relationships: Lookup Table © Pearson Education Limited 1995, 2005
14 Step 7.2 Duplicating non-key attributes in 1:* relationships: Lookup Table © Pearson Education Limited 1995, 2005
15 Step 7.3 Duplicating FK attributes in 1:* relationship to reduce joins © Pearson Education Limited 1995, 2005
16 Step 7.4 Duplicating attributes in *:* relationships to reduce joins © Pearson Education Limited 1995, 2005
17 Step 7.5 Introducing repeating groups © Pearson Education Limited 1995, 2005
18 Step 7.6 Creating extract tables u Reports can access derived data and perform multi- relation joins on same set of base relations. However, data the report is based on may be relatively static or may not have to be current. u Possible to create a single, highly denormalized extract table based on relations required by reports, and allow users to access extract table directly instead of base relations. © Pearson Education Limited 1995, 2005
19 Step 7.7 Partitioning relations u Rather than combining relations together, alternative approach is to decompose them into a number of smaller and more mannageable partitions. u Two main types of partitioning: horizontal and vertical. © Pearson Education Limited 1995, 2005
20 Step 7.7 Partitioning relations © Pearson Education Limited 1995, 2005
21 Advantages and disadvantages of denormalization © Pearson Education Limited 1995, 2005
22 Step 8 Monitor & Tune Operational System To monitor operational system and improve performance of system to correct inappropriate design decisions or reflect changing requirements. © Pearson Education Limited 1995, 2005
23 Step 8 Monitor & Tune Operational System u Number of factors may be used to measure efficiency: - Transaction throughput: number of transactions processed in given time interval. -Response time: elapsed time for completion of a single transaction. -Disk storage: amount of disk space required to store database files. u No one factor is always correct. Have to trade each off against another to achieve reasonable balance. u Need to understand how the various hardware components interact and affect database performance. © Pearson Education Limited 1995, 2005
24 Step 8 Monitor & Tune Operational System DreamHome wish to hold pictures of properties, and comments that describe main features of property. © Pearson Education Limited 1995, 2005