Vous l'avez déjà ? Vendez votre exemplaire ici
Désolé, cet article n'est pas disponible en
Image non disponible pour la
couleur :
Image non disponible

Dites-le à l'éditeur :
J'aimerais lire ce livre sur Kindle !

Vous n'avez pas encore de Kindle ? Achetez-le ici ou téléchargez une application de lecture gratuite.

SQL Performance Explained [Anglais] [Broché]

Markus Winand
5.0 étoiles sur 5  Voir tous les commentaires (2 commentaires client)

Voir les offres de ces vendeurs.

Offres spéciales et liens associés

Les clients ayant consulté cet article ont également regardé

Descriptions du produit

SQL Performance Explained helps developers to improve database performance. The focus is on SQL-it covers all major SQL databases without getting lost in the details of any one specific product.

Starting with the basics of indexing and the WHERE clause, SQL Performance Explained guides developers through all parts of an SQL statement and explains the pitfalls of object-relational mapping (ORM) tools like Hibernate.

Topics covered include:
 • Using multi-column indexes
 • Correctly applying SQL functions
 • Efficient use of LIKE queries
 • Optimizing join operations
 • Clustering data to improve performance
 • Pipelined execution of ORDER BY and GROUP BY
 • Getting the best performance for pagination queries
 • Understanding the scalability of databases

Its systematic structure makes SQL Performance Explained both a textbook and a reference manual that should be on every developer's bookshelf.

Covers all major databases: Oracle® Database, SQL Server®, PostgreSQL, MySQL

What readers say:
"This book is definitively worth having in the company library." - Joe Celko

Détails sur le produit

  • Broché: 204 pages
  • Langue : Anglais
  • ISBN-10: 3950307826
  • ISBN-13: 978-3950307825
  • Dimensions du produit: 15 x 1,3 x 23 cm
  • Moyenne des commentaires client : 5.0 étoiles sur 5  Voir tous les commentaires (2 commentaires client)
  • Classement des meilleures ventes d'Amazon: 207.092 en Livres (Voir les 100 premiers en Livres)
  •  Souhaitez-vous compléter ou améliorer les informations sur ce produit ? Ou faire modifier les images?

Dans ce livre (En savoir plus)
Parcourir les pages échantillon
Couverture | Copyright | Table des matières | Extrait | Index
Rechercher dans ce livre:

Vendre une version numérique de ce livre dans la boutique Kindle.

Si vous êtes un éditeur ou un auteur et que vous disposez des droits numériques sur un livre, vous pouvez vendre la version numérique du livre dans notre boutique Kindle. En savoir plus

Quels sont les autres articles que les clients achètent après avoir regardé cet article?

Commentaires en ligne 

4 étoiles
3 étoiles
2 étoiles
1 étoiles
5.0 étoiles sur 5
5.0 étoiles sur 5
Commentaires client les plus utiles
2 internautes sur 2 ont trouvé ce commentaire utile 
5.0 étoiles sur 5 j'adore 15 mars 2013
Par freshdaz
Achat vérifié
l'exemple parfait du livre qui vous fait avancer dans votre vie professionnelle.
rien d'autre à ajouter si ce n'est que je le conseille
Avez-vous trouvé ce commentaire utile ?
5.0 étoiles sur 5 super 11 août 2014
Par Fred
Achat vérifié
très bon livre, un excellent investissement pour comprendre puis optimiser la vitesse de certains traitements. Une bonne connaissance des bases de données est évidement requise.
Avez-vous trouvé ce commentaire utile ?
Commentaires client les plus utiles sur Amazon.com (beta)
Amazon.com: 4.8 étoiles sur 5  4 commentaires
5 internautes sur 6 ont trouvé ce commentaire utile 
4.0 étoiles sur 5 The title doesn't lie 11 septembre 2013
Par Daniel - Publié sur Amazon.com
To begin with I should point out that I was given the book by the author and promised to review it. The author has however had no insight into the contents of this review and have made no attempts whatsoever to influence it.

With a title like "SQL Performance Explained" it might seem strange that the book is less than 200 pages long. Don't let the page count fool you though, this book does a very good job of covering a lot of ground. The small tip boxes scattered around the pages alone have more valuable content than many other books.

The author is well known for his expertise on indexing and that obviously shines through in the book, but the topics discussed are not at all limited to indexing. The wide set of topics covered include efficient indexing and querying, join algorithms, execution plans as well as the anatomy of indexes. Care is also taken to discuss how data volumes affect query performance and database scalability. The focus of the writing is very much geared towards developers, many chapters include code samples in many common languages apart from the SQL.

The book covers specifics about the major four database engines which is as much a strength as it is a potential weakness. Anyone interested only in database X might think this book is too broad, which would be unfortunate. While most readers probably focus on their database of choice and skip over sections on the competing ones it is never a bad idea to learn more about the competition. Not to mention the great fit it is for consultants who see a wide array of environments on different assignments.

To conclude, this book is vital for any database developer, DBA as well as anyone interested in database performance. It's unlikely to be the only book in your professional library but is highly likely to be one that sticks in your memory and that you read cover to cover. It is highly likely to be your go to book. The promise the title gives is held, SQL performance is explained
1 internautes sur 1 ont trouvé ce commentaire utile 
5.0 étoiles sur 5 Must-read for every developer 26 septembre 2013
Par Ronald Ploeger - Publié sur Amazon.com
The preface of the book already states that "Database indexing is a development task." This is because to define an optimal index one must understand how the application queries the data.

Every developer should read this book. It will show you how to read execution plans and how to create indices for a wide range of scenarios.

Mr. Winand has an easy to follow writing style and this book will give you a good understanding of b-tree indices guiding you through many scenarios using easy to follow examples for multiple databases.
1 internautes sur 1 ont trouvé ce commentaire utile 
5.0 étoiles sur 5 Knowing about proper indexing covers 90% of what anyone needs to know about SQL performance 17 septembre 2013
Par Lukas - Publié sur Amazon.com
SQL is a very complex topic. While most developers still interact with SQL in one way or another, many find it an increasingly hard to master technology because SQL seems to perform so much magic.

Markus Winand, creator of [...] busts a lot of myths by explaining in very simple terms that all you need to understand is proper indexing. His book SQL Performance Explained, which is available also in German and French, reads like a very easy text book, starting by explaining the most popular and most common indexing structure: the B-Tree. From there on, the book puts new things in logical relation to topics already covered. As such, it helps the reader find their way to understanding the most complex problems faced in every day SQL development. At the same time, the amount of information per page is extremely dense, making every sentence an important piece of the puzzle. This is quite remarkable for such a technical book, dealing with such a dry matter.

Markus proves to be very knowledgeable in his writings, not only with respect to SQL as a language itself, but also concerning software architecture in general. He puts database interaction in relation to overall scalability, and also knows his ways with ORMs in various languages. This is interesting for those developers who are using a "higher levels" of abstraction over their database, and are thus facing the fine-tuning of third-party generated SQL.

The book really shines once the reader goes into the depths of understanding performance implications of proper indexing to each of the SQL SELECT statement's various clauses. Even after years of tuning Oracle execution plans, I've had many "aha" effects when learning about things like

- How Oracle's not indexing NULL can lead to very surprising full table scan operations, because Oracle has to check the table for records that are not in the index.
- How using bind values becomes increasingly important when many JOIN operations are involved, because the query optimizer complexity increases with the factorial of the number of joined tables.
- How nested loops, hash joins, sort merge joins really work, and when they work best.
- How to design queries to produce index-only scans, when all columns from the predicates and the projection are indeed contained in an applicable index.

The most interesting "aha" effect to me, however, was triggered by learning that indexes can be used for their data clustering effects. If properly designed, an index will "pre-sort" related values prior to actually executing GROUP BY, ORDER BY, or FETCH FIRST clauses. This can lead to instant ORDER BY results, if the ORDER BY clause matches the chosen index definition. Markus also busts the myth that Oracle's Index-Organized Tables are actually useful for this purpose. They're mostly not useful.
If clustering and pipelining effects do not apply, one can still choose to use what Markus calls the "SEEK method", where partial results are fetched by omitting the OFFSET .. FETCH FIRST clause and using much faster regular predicates instead. The "SEEK method" has two advantages:

- It is extremely fast, as no rows have to be skipped before reaching the "OFFSET".
- It is stable, as the "OFFSET" doesn't shift when new records are inserted during paging.

What I am looking forward to in a future edition of Markus' book is some more depth in the chapters explaining the influence of indexes with respect to performance of INSERT, UPDATE, DELETE statements (and maybe MERGE?). It would also be great, if some additional insight into DB2 and Sybase could be given. The current edition essentially covers the popular Oracle, PostgreSQL, SQL Server, MySQL databases.

Having read this book, I feel much more at ease with designing databases for performance and with analyzing execution plans for fine-tuning. Even with quite a bit of experience, this book has generated some new knowledge, while at the same time, I think it is very easy to read for SQL tuning beginners as well.

Or to put it in Markus' terms: "This book should have been written 10 years ago"
5.0 étoiles sur 5 Easy to follow, yet comprehensive coverage on how indexes work, plenty of gotchas 20 novembre 2013
Par A. Zubarev - Publié sur Amazon.com
To the best of my knowledge this is the only book on the market that covers the four major relational database engine’s data storage implementations and namely indexes. I must stress the words data engine because this book deeply covers only one aspect of a relational database – the data management and storage improvements from the indexing prospective, nothing else.

But do not be deceived by its limited content – the indexing part is the most complex, yet a cornerstone part to shipping a successful software product which unfortunately remains a complete black box to most, even seasoned developers! Yet, the book covers in depth.

To expand more, indexing is an often overlooked or even ignored aspect, or at best a post deployment task which typically gets triggered by customers calling in to express how slow the application performance is.

For a software shop then to introduce changes to an application accessing a database poorly at a stage when it was just fully tested and signed off then deployed to production will cost a whole lot more money and headaches than if it were still in early stages of development, not to mention how little time typically is left to make it fast before the customers pull out!

I must tell, I totally agree with Markus – he has correctly stated in the book that it should be the developer, not the Database Administrator who is responsible for the database indexes.

I hope I have enticed you already to get a copy of this book. I personally liked it a lot, especially the second part of it.

I need to also convey to whoever reads my review - the ORM implementations have received its fair portion of the blame, which I am happy Markus had the courage to bring up. Read the book to find out more.

Overall, I admire how the author succeeded to remain neutral in tone and details by not expressing any bias toward any of the four big database vendors.

Even in light of literally dozens of NoSQL (key-value pairs) databases popping up on the landscape today, the book remains very much to the point and actual because the influx of the webscale or sensor data is definitely taking its tall on poorly performing queries.

If somebody would ask me to sum up the book review in a few words I would say this is the book to help you choose the proper RDBMS for your project. If you are already tied to a specific database engine then read this book as soon possible before you develop against it too far to avoid costly performance mistakes.

One suggestion I have to Markus is to remedy the omission on a relatively new feature - the Columnstore Index (a SQL Server 2012 feature). This type of an index promises unforeseen data retrieval speeds and gets even improved further in SQL Server 2014.

Nevertheless, 5 out of 5 from me.
Ces commentaires ont-ils été utiles ?   Dites-le-nous
Rechercher des commentaires
Rechercher uniquement parmi les commentaires portant sur ce produit

Discussions entre clients

Le forum concernant ce produit
Discussion Réponses Message le plus récent
Pas de discussions pour l'instant

Posez des questions, partagez votre opinion, gagnez en compréhension
Démarrer une nouvelle discussion
Première publication:
Aller s'identifier

Rechercher parmi les discussions des clients
Rechercher dans toutes les discussions Amazon

Rechercher des articles similaires par rubrique


Souhaitez-vous compléter ou améliorer les informations sur ce produit ? Ou faire modifier les images?