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