|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Développeur informatique Inscription : octobre 2006 Messages : 181 ![]() |
Qui peut parler du SARG appliqué aux optimisation de requettes sous Sybase en particulier, ou peut indiquer un lien qui en parle clairement ?
D'avance merci. |
|
|
00
|
|
|
#2 |
![]() ![]() |
Un premier lien - un document ecrit par Eric Miner (ingénieur Sybase en charge de l'optimiseur pendant de nombreuses années) en 1997:
http://www.sybase.com/detail?id=2602 Je pense que ce document explique aussi d'où viennent les "magic numbers"... Le manuel P&T actuel a pas mal d'explication sur les SARGs, et comment l'optimiseur se comporte. Par example: http://manuals.sybase.com/onlinebook...58945;pt=58855 Voila pour un début... Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
|
|
00
|
|
|
#3 |
![]() ![]() |
je suis Michael sur le P&T de Sybase : c'est sans doute le bouquin le plus complet sur la matière.
Pour les SARGs, bien que le nom diffère, l'utilisation des diverses conditions et jointures par l'optimiseur répondent à certaines règles similaires, quelle que soit la base. On peut déplorer chez Sybase par exemple le fait que les indexes sur fonction n'existent pas, mais on peut se réjouir par contre que l'optimiseur, dans son calcul de poids pour le choix optimum du bon SARG, est en mesure de différencier les pages en caches des pages en disque et de leur attribuer un poid différent, contrairement à l'optimiseur d'Oracle par exemple. Pour essayer de faire simple:
Le magic number est un poids arbitraire (et souvent mauvais) que l'optimiseur donne pour une condition donnée lorsqu'une valeur meilleure n'est pas disponible via la table des statistiques ou qu'il n'est pas en mesure de déterminer la colonne au moment de la compilation (d'où éviter les derivative tables, les sql dynamiques, ...) pour la sélectivité d'un index. Il n'y a pas que 30%... il y a plusieurs poids selon le type de condition. En teme de statistique toujours, Sybase est à mon avis bien meilleur qu'Oracle, car ses statistiques sont généralement mises à jour au fil de l'eau.
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql Administrateur SAP Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com