- ホーム
- > 洋書
- > 英文書
- > Computer / Databases
Full Description
In this book, Mark Gurry shares his in-depth knowledge of Oracle's SQL statement optimizers. Mark's knowledge is the result of many hard-fought tuning battles during his many years of providing Oracle tuning services to clients. Mark provides insights into the workings of the rule-based optimizer that go well beyond what the rules tell you. He also provides solutions to many common problems that occur with both the rule-based and cost-based optimizers. In addition to the specific problem/solution scenarios for the optimizers, the book provides a number of SQL tuning tips. It discusses the various optimizer hints, telling you when they can be used to good effect. Finally, it discusses the use of the DBMS_STATS package to manage database statistics, and the use of outlines to specify execution plans for SQL statements in third-party applications that you can't otherwise modify..
Contents
The SQL optimizers - understanding the rule-based optimizer, understanding the cost-based optimizer, some common optimizer misconceptions, which optimizer to use?; rule-based optimizer problems and solutions - problem 1 - incorrect driving table, problem 2 - incorrect index, problem 3 - incorrect driving index, problem 4 - using the ORDER BY index and not the WHERE index; cost-based optimizer problems and solutions - problem 1 - the skewness problem, problem 2 - analyzing with wrong data, problem 3 - mixing the optimizers in joins, problem 4 - choosing an inferior index, problem 5 - joining too many tables, problem 6 - incorrect INIT.ORA parameter settings; problems common to rule and cost with solutions - problem 1 - statement not written for indexes, problem 2 - indexes are missing or inappropriate, problem 3 - use of single-column index merge, problem 4 - misuse of nested loop, sort merge, or hash join, problem 5 - misuse of IN, EXISTS, NOT IN, NOT EXISTS, or table joins, problem 6 - unnecessary sorts, problem 7 - too many indexes on a table, problem 8 - use of OR instead of UNION, problem 9 - tables and indexes with many deletes, other problems - heavy usage of views, other problems - joining too many tables; handy SQL tuning tips - identify bad SQL, identify long-running SQL statements, use DECODE for IF/ELSE selection, encourage bind variables; using SQL hints - when are hints ignored?, using hints in views, available hints; using DBMS_STATS to manage statistics - using DBMS_STATS to analyze faster copying statistics, using dBMS_STATS Manipulating statistics using DBMS_STATS, reverting to previous statistics; using outlines for consistent execution plans - recording outlines, enabling outlines, managing outlines.