| About the Author | p. xiii |
| About the Technical Reviewers | p. xv |
| Introduction | p. xvii |
| Introduction to Performance Forecasting | p. 1 |
| Risk: A Four-Letter Word | p. 2 |
| Service-Level Management | p. 3 |
| Modeling: Making the Complex Simple | p. 5 |
| Model Types | p. 6 |
| Mathematical Models | p. 6 |
| Benchmark Models | p. 7 |
| Simulation Models | p. 7 |
| Differences Between Benchmarks and Simulations | p. 8 |
| Challenges in Forecasting Oracle Performance | p. 9 |
| Essential Performance Forecasting | p. 13 |
| The Computing System Is Alive | p. 13 |
| Transactions Are Units of Work | p. 15 |
| The Arrival Rate | p. 15 |
| The Transaction Processor | p. 16 |
| The Queue | p. 17 |
| Transaction Flow | p. 18 |
| The Response Time Curve | p. 19 |
| CPU and IO Subsystem Modeling | p. 20 |
| Method Is a Must | p. 22 |
| Data Collection | p. 23 |
| Essential Mathematics | p. 25 |
| The Formulas | p. 25 |
| The Application | p. 27 |
| What Management Needs to Know | p. 29 |
| Risk Mitigation Strategies | p. 31 |
| Tuning the Application and Oracle | p. 31 |
| Buying More CPU Capacity | p. 32 |
| Balancing Existing Workload | p. 34 |
| Summary | p. 37 |
| Increasing Forecast Precision | p. 39 |
| Forecasting Gotchas! | p. 39 |
| Model Selection | p. 40 |
| Questions to Ask | p. 40 |
| Fundamental Forecasting Models | p. 42 |
| Baseline Selection | p. 46 |
| Response Time Mathematics | p. 47 |
| Erlang C Forecasting Formulas | p. 48 |
| Contrasting Forecasting Formulas | p. 57 |
| Average Calculation | p. 59 |
| The Right Distribution Pattern | p. 60 |
| How to Average Diverse Values | p. 61 |
| Case Study: Highlight Company | p. 65 |
| Determine the Study Question | p. 66 |
| Gather and Characterize Workload | p. 66 |
| Select the Forecast Model | p. 66 |
| Forecast and Validate | p. 67 |
| What We Tell Management | p. 72 |
| Summary | p. 73 |
| Basic Forecasting Statistics | p. 75 |
| What Is Statistics? | p. 75 |
| Sample vs. Population | p. 77 |
| Describing Samples | p. 77 |
| Numerically Describing Samples | p. 77 |
| Visually Describing Data Samples | p. 79 |
| Fully Describing Sample Data | p. 82 |
| Making Inferences | p. 89 |
| Precision That Lies | p. 91 |
| Summary | p. 93 |
| Practical Queuing Theory | p. 95 |
| Queuing System Notation | p. 95 |
| Little's Law | p. 99 |
| Kendall's Notation | p. 103 |
| The Queuing Theory Workbook | p. 106 |
| Queuing Configurations and Response Time Curve Shifts | p. 114 |
| Observing the Effects of Different Queuing Configurations | p. 114 |
| Moving the Response Time Curve Around | p. 119 |
| Challenges in Queuing Theory Application | p. 124 |
| Summary | p. 136 |
| Methodically Forecasting Performance | p. 139 |
| The Need for a Method | p. 139 |
| The OraPub Forecasting Method | p. 141 |
| Determine the Study Question | p. 141 |
| Gather the Workload Data | p. 144 |
| Characterize the Workload | p. 145 |
| Develop and Use the Appropriate Model | p. 145 |
| Validate the Forecast | p. 146 |
| Forecast | p. 151 |
| Summary | p. 151 |
| Characterizing the Workload | p. 153 |
| The Challenge | p. 153 |
| Gathering the Workload | p. 154 |
| Gathering Operating System Data | p. 155 |
| Gathering Oracle Data | p. 158 |
| Defining Workload Components | p. 161 |
| Simple Workload Model | p. 162 |
| Single-Category Workload Model | p. 163 |
| Multiple-Category Workload Model | p. 168 |
| Selecting the Peak | p. 181 |
| Selecting a Single Sample | p. 183 |
| Summarizing Workload Samples | p. 184 |
| Summary | p. 184 |
| Ratio Modeling | p. 185 |
| What Is Ratio Modeling? | p. 185 |
| The Ratio Modeling Formula | p. 186 |
| Gathering and Characterizing the Workload | p. 187 |
| Deriving the Ratios | p. 189 |
| Deriving the Batch-to-CPU Ratio | p. 189 |
| Deriving the OLTP-to-CPU Ratio | p. 192 |
| Forecasting Using Ratio Modeling | p. 194 |
| Summary | p. 198 |
| Linear Regression Modeling | p. 199 |
| Avoiding Nonlinear Areas | p. 199 |
| Finding the Relationships | p. 200 |
| Determining a Linear Relationship | p. 203 |
| View the Raw Data | p. 203 |
| View the Raw Data Graph | p. 205 |
| View the Residual Data | p. 206 |
| View the Residual Data Graph | p. 208 |
| View the Regression Formula | p. 211 |
| View the Correlation Strength | p. 212 |
| If Everything Is OK, Forecast | p. 213 |
| Dealing with Outliers | p. 214 |
| Identifying Outliers | p. 216 |
| Determining When to Stop | p. 219 |
| Regression Analysis Case Studies | p. 221 |
| Summary | p. 228 |
| Scalability | p. 229 |
| The Relationship Between Physical CPUs and Effective CPUs | p. 229 |
| How Scalability Is Used in Forecasting | p. 230 |
| What's Involved in Scalability? | p. 233 |
| Speedup and Scaleup | p. 235 |
| Which Forecast Models Are Affected by Scalability? | p. 236 |
| Scalability Models | p. 237 |
| Amdahl Scaling | p. 237 |
| Geometric Scaling | p. 240 |
| Quadratic Scaling | p. 240 |
| Super-Serial Scaling | p. 242 |
| Methods to Determine Scalability | p. 244 |
| Physical-to-Effective CPU Data | p. 244 |
| Benchmark: Physical CPUs-to-Throughput Data | p. 248 |
| Real System: Load and Throughput Data | p. 251 |
| Summary | p. 253 |
| Index | p. 255 |
| Table of Contents provided by Ingram. All Rights Reserved. |