SQL Performance Explained
SQL Performance Explained

Author: Markus Winand
Publisher: Markus Winand
Pages: 204
ISBN: 978-3950307825
Audience: Database developers
Rating: 4
Reviewer: Joe Celko

Covers issues of performance for all major SQL databases.

I met author Markus Winand at the 2012 PostgreSQL EU Conference, held in Prague on October 23-26, 2012, and he gave me an English copy of this book, which is also available in German. He asked me a good question about my books: why don't I ever discuss indexing or performance?

My reason is simple; I do books on ANSI/ISO Standard SQL and the Standards have never had any mention of access methods. The syntax that everyone uses is “CREATE [<index type>]INDEX <index name> ON <table name> [<product specific options>];” came from the X\Open and SQL Access consortia of vendors. Yes, the ANSI X3H2 Committee and these two groups (which later merged) had a lot of overlapping membership.


 

Click book cover for details from the book's site

 

Terminology and implementations for indexing varies from product to product. This book gives code in MySQL, Postgres, a little DB2, SQL Server and Oracle, but uses the Oracle terminology. This range of products pretty much covers every indexing option in use today.

 

Banner

 

The book then proceeds to go into details that programmers my age have forgotten and younger programmers were never taught. The discussion on B-Tree indexes gives the usual description of how they work and balance. But then we get discussions on what causes slow indexes, the limitations of function based indexes, over-indexing, how to search for Ranges and not just simple equality. We look at when and why column order matters. There are a ton of common anti-patterns in DDL that mess up indexing and performance. The discussions of JOIN Operations (Nested Loops, Hash Join, Sort-Merge Join, Clustering Data, Sorting and Grouping, etc) is surprisingly detailed.

Perhaps the best material is the debunking of common myths that are spread out in the book: “Indexes Can Degenerate” , “Most Selective First”, "Oracle Cannot Index NULL” and “Dynamic SQL is Slow' are some examples. You will probably be surprised how many things you believe without being conscious of it.

This book is definitively worth having in the company library.

A pdf ebook is also available.

More Details:

http://sql-performance-explained.com/

Banner


Programming Android (2e)

Author: Zigurd Mednieks, Laird Dornin, G. Blake Meike & Masumi Nakamura
Publisher:O'Reilly
Pages: 566
ISBN: 978-1449316648
Aimed at: Proficient programmers who want to get up to speed on Android 
Rating: 4.5
Reviewer: Harry Fairhead

Programming Android has been updated to cover Android 4 for its [ ... ]



Raspberry Pi User Guide (3e)

Authors: Eben Upton and Gareth Halfacree
Publisher: Wiley
Pages: 312

ISBN: 9781118921661
Print:1118921666
Kindle: B00N2RDVQ8

Audience: New users of Raspberry Pi
Rating: 3.5
Reviewer: Harry Fairhead

A guide to the Raspberry Pi co-authored by the man who invented it. What more could y [ ... ]


More Reviews

Last Updated ( Friday, 16 November 2012 )
 
 

   
Banner
RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2016 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.