REVIEW - SQL Performance Tuning


Title:

SQL Performance Tuning

Author:

Peter Gulutzan, Trudy Pelzer

ISBN:

Publisher:

Addison-Wesley Professional (2003)

Pages:

495pp

Reviewer:

Christopher Hill

Reviewed:

June 2003

Rating:

★★★★★


Every DBA and SQL writer should have a copy to hand.

Take eight computers. Install a different database system on each (MySQL is included in the eight). Then work your way through the SQL language seeing how you can make significant portable improvements in performance.

This book is a labour of love. The authors try out all the wheezes and 'everybody knows that.' to produce a catalogue of ways to write portable SQL code (ANSI/ISO standard SQL:1999) that works swiftly over the major platforms.

The relative performance of the database is not compared (this is prohibited by the vendors) but for each item two snippets of SQL are compared and if there is a better than 5% improvement on a platform it gets an 'improvement' tick. Most items get 8 ticks. A very few have a negative impact on particular platforms.

The first third of the book covers the main parts of the SQL that cause bottlenecks: simple searches, Order By, Group By, Joins and Subqueries. They then move on to the physical aspects; Columns, Tables, Indexes, Constraints and Stored Procedures. The final third looks at ODBC, JDBC, Locks, Client/Server and Cost-based Optimisation.

Given the subject matter, inevitably the book has a 'cook book' feel, although the writing style does a great deal to reduce this. There is plenty of background information on why you should use this technique over another, so you can decide which is best for your circumstances. Some solid theory is also presented (including Btrees and normalisation) in a very approachable manner.

'Your DBMS is your pal. You should try to get to know it better and help it to help you'. This should not be your first book on SQL, but every DBA and SQL writer should have a copy to hand. Highly recommended.


Book cover image courtesy of Open Library.





Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED


By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED



Settings can be changed at any time from the Cookie Policy page.