Troubleshooting Oracle Performance, 2nd Edition is a systematic guide to diagnosing and resolving performance problems in database-backed applications involving Oracle Database. It’s a book written for developers by a developer, who has learned by doing. Christian Antognini brings a decade and a half of experience to his topic. The book gives his systematic approach to solving database application performance problems, and it helps you plan for performance as you would for any other application requirement. This second edition has been rigorously updated to cover the latest developments in Oracle Database 11g Release 2 through Oracle Database 12c.
What do you do when your database application isn’t running fast enough? You troubleshoot, of course. Finding the slow part of an application is often the easy part of the battle. It’s finding a solution that’s difficult. Troubleshooting Oracle Performance, 2nd Edition helps by providing a systematic approach to addressing the underlying causes of poor database application performance. The author freely shares his experience while explaining the underlying foundations of how SQL statements are executed by the database engine. You’ll be able to draw a solid foundation of theory and shared experience as you face head-on the performance challenges in your daily work.
What you’ll learn
This book shows you how to do the following:
- Identify performance problems using a systematic and repeatable approach.
- Configure the query optimizer to meet your application performance goals.
- Obtain and interpret execution plans as well as assess whether they are inefficient.
- Apply SQL optimization techniques such as hints, stored outlines, SQL profiles and SQL plan baselines.
- Minimize the impact of parsing without jeopardizing performance.
- Optimize data access, joins and the physical design.
- Improve performance through parallel processing, materialized views, and result caching.
This book is intended for performance analysts, application developers, and database administrators who are involved in troubleshooting performance problems in applications using Oracle Database.
No specific knowledge in optimization is required. However, readers are expected to have a working knowledge of Oracle Database and to be profi cient with SQL. Some sections of the book cover features that are specific to programming languages such as PL/SQL, Java, C#, PHP, and C. Th ese features are covered only to provide a widerange of application developers with specific information about the programming language they’re using. You can pick out the ones you’re using or interested in and skip the others.
Which Versions Are Covered?
The most important concepts covered in this book are independent of the version of Oracle Database you’re using. It’s inevitable, however, that when details about the implementation are discussed, some information is version-specific. This book explicitly discusses the versions currently available from Oracle Database 10g Release 2 to Oracle Database
12c Release 1. They are as follows:
- Oracle Database 10g Release 2, up to and including version 10.2.0.5.0
- Oracle Database 11g Release 1, up to and including version 184.108.40.206.0
- Oracle Database 11g Release 2, up to and including version 220.127.116.11.0
- Oracle Database 12c Release 1, version 18.104.22.168.0
Differences between the First and the Second Editions
The main goals set for the revision of the book were the following:
- Add content about Oracle Database 11g Release 2 and Oracle Database 12c Release 1.
- Remove content about Oracle9i and Oracle Database 10g Release 1.
- Add content that was missing in the first edition (for example, features like hierarchical profiler, active session history, AWR, and Statspack).
- Add information about PHP in the parts that cover features that are specific to programming languages.
- Reorganize part of the material for better readability. For example, splitting the chapter about system and object statistics in two.
- Fix errata and generally enhance the text.