Quelles ressources existent pour l'optimisation des performances de la base de données? [fermé]

214

Quelles bonnes ressources existent pour comprendre le réglage de la base de données sur les principaux moteurs et faire progresser vos connaissances dans ce domaine?

L'idée de cette question est de collecter la charge de ressources qui existe invariablement, afin que les gens puissent avoir un magasin de connaissances «à guichet unique» des bonnes ressources approuvées par les pairs.


SQL général

PostgreSQL ( wiki ) ( PGsearch )

MySQL

Oracle

MS SQL Server

Sybase SQL Anywhere

JDBC

Gavin Miller
la source

Réponses:

31

Tom Kyte, le propriétaire d'Oracle, possède un référentiel fantastique sur tous les types de problèmes de performances imaginables sur http://asktom.oracle.com . Il prend généralement le temps de recréer des problèmes spécifiques et donne des explications très détaillées.

Neil Kodner
la source
5

Optimisation PostgreSQL rapide (optimisation des requêtes)

Courte lecture, explique bien des choses et «fonctionne» un vrai exemple qui est agréable pour ceux d'entre nous qui apprennent mieux de cette façon.

Après avoir vu le lien wiki vers PostgreSQL, je me suis dit que j'éditerais cet article avec des liens pour les documents mysql / oracle , pas vraiment un guide d'optimisation spécifiquement mais les deux sont de bonnes ressources, en particulier celui de mysql. Pour l'optimisation et toutes les autres fonctionnalités de réglage.

Louis
la source
3

J'ajouterais qu'en plus d'avoir théoriquement réglé votre base de données, vous devez profiler votre application à l'aide d'un profileur qui suit les appels SQL.

Malgré vos meilleures intentions, quelques mauvais appels se faufileront dans votre application et causeront souvent 90% de vos problèmes de performances.

Nathan Voxland
la source
3
  • Livre: Dépannage des performances d'Oracle (Antognini Christian)
Thomas Aregger
la source
2

Si vous recherchez des références de réglage des performances spécifiques à SQL Server, il existe une quantité absolue de ressources de qualité disponibles en ligne, allant de livres blancs sur la mise en œuvre de technologies spécifiques telles que le partitionnement, à d'excellents blogs qui détaillent des instructions étape par étape sur la façon d'optimiser les performances d'un plate-forme de serveur SQL.

La fiche sans vergogne suit: Vous pouvez commencer votre recherche en examinant la zone de réglage des performances de mon blog personnel, ou pour toute exigence / problème spécifique à SQL Server, n'hésitez pas à me renvoyer un e-mail.

Ressources SQL Server

John Sansom
la source
2

Site SQL Server Performance Decent pour des informations spécifiques à MSSQL.

Christopher Klein
la source
1

J'étais assez content quand j'ai vu cette façon de voir rapidement ce qui s'est passé avec une instruction SQL que vous réglez sous Oracle. Remplacez la première instruction SQL ci-dessous par votre instruction SELECT et conservez cet indice là-dedans.

SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL;

SELECT * FROM TABLE(dbms_xplan.display_cursor( NULL, NULL, 'RUNSTATS_LAST'))
;

PLAN_TABLE_OUTPUT
-----------------------------------------------------
SQL_ID  5z36y0tq909a8, child number 0
-------------------------------------
SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL

Plan hash value: 272002086

---------------------------------------------------------------------------------------------
| Id  | Operation         | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers | Reads  |
---------------------------------------------------------------------------------------------
|   1 |  TABLE ACCESS FULL| DUAL |      1 |      1 |      1 |00:00:00.02 |       3 |      2 |
---------------------------------------------------------------------------------------------


12 rows selected.

Où:

  • E-Rows est une estimation des lignes.
  • Les lignes A sont des lignes réelles.
  • A-Time est le temps réel.
  • Les tampons sont des tampons réels.

Lorsque le plan estimé varie de l'exécution réelle par ordre de grandeur, vous savez que vous avez des problèmes.

WW.
la source
0

Pour les personnes travaillant avec Oracle, je recommande ce lien .............

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/toc.htm

D'après mes expériences avec le développement de bases de données Oracle, j'ai découvert que l'acquisition d'une connaissance de l'utilisation de SQL, de son fonctionnement et de la connaissance de ce qui est disponible (fonctions fournies, clauses dont vous ignoriez l'existence ou améliorées depuis la dernière version) signifie Je passe beaucoup moins de temps à régler sql.

Ian Carpenter
la source
0

Je commencerais par comprendre comment la base de données fonctionne à un niveau fondamental. Comment les données sont-elles stockées sur le disque, à quoi sert la création d'un index, comment fonctionne l'optimisation du plan de requête, comment les plans sont-ils mis en cache, quand expirer les plans mis en cache?

Si vous pouvez enregistrer tout cela en mémoire, la plupart des conseils sur le réglage semblent évidents.

Voici un excellent livre pour MSSQL

Internes de SQL Server

rjdevereux
la source
0

Parfois, vous devez savoir comment résoudre le problème une fois qu'il est identifié. Cela montrera comment remplacer un curseur peu performant par une opération basée sur un ensemble: http://wiki.lessthandot.com/index.php/Cursors_and_How_to_Avoid_Them

Il était spécifique à SQL Server, mais de nombreuses techniques pouvaient également être transposées dans d'autres dbs.

HLGEM
la source
0

Pour Microsoft SQL, je recommanderais les livres de Kalen Delaney (et al) appelés "Inside SQL Server". Ils offrent un bon aperçu des composants internes de SQL Server, permettant ainsi aux lecteurs de se renseigner sur les raisons pour lesquelles des instructions particulières peuvent être plus rapides que d'autres.

Inside SQL Server 7.0
Inside SQL Server 2000
Inside Microsoft SQL Server 2005
Microsoft SQL Server 2008 Internals

Il existe également un livre dédié à l' optimisation des performances des requêtes SQL Server 2008: SQL Server Performance Tuning Distilled

J'aime aussi les blogs de Paul Randal et Kimberly Tripp sur SQLSkills.com. Ils regorgent de conseils SQL solides:

Le blog de Paul Le blog de
Kimberly

SchmitzIT
la source
0

Pour l'optimisation des performances de SQL Server, Itzik Ben-Gan est une légende.

Vous pouvez trouver ses nombreux livres détaillés ici, tous avec son style habituel de mesure empirique pour prouver son cas: http://tsql.solidq.com/books/index.htm

Si vous recherchez la solution la plus rapide à un problème t-sql, ajoutez le mot «itzik» à votre terme de recherche google.

Itzik Ben-Gan a été mentionné plus de 600 fois ici sur stackoverflow , mais je ne pouvais pas croire qu'il ne trouve pas une seule mention de lui ici sur cette question de réglage des performances.

En tant que ressource supplémentaire, vous pouvez également trouver des vidéos d' Itzik parlant de choses liées aux performances ici sur YouTube .

Dave Hilditch
la source
0

Sites Oracle

  1. Guide de réglage des performances sur 2 jours http://docs.oracle.com/cd/E11882_01/server.112/e10822/toc.htm
  2. Guide de réglage des performances http://docs.oracle.com/cd/E36909_01/server.1111/e16638/toc.htm

Livres Oracle

  1. Oracle Core: composants internes essentiels pour les administrateurs de bases de données et les développeurs par Jonathan Lewis
  2. Expert en architecture de base de données Oracle: techniques et solutions de programmation Oracle Database 9i, 10g et 11g par Thomas Kyte
  3. Réglage SQL par Dan Tow
  4. Oracle Database 11g Release 2 Conseils et techniques d'optimisation des performances (Oracle Press) par Richard Niemiec
Deven
la source