Le facteur de filtrage d'un prédicat est un nombre entre 0 et 1 qui estime la proportion de lignes d'une table pour laquelle le prédicat est vrai. Ainsi, supposez que DB2 puisse déterminer que la colonne C1 de la table T ne contient que cinq valeurs distinctes : A, D, Q, W et X. En l'absence d'autres informations, DB2 estime qu'un cinquième des lignes comportent la valeur D dans la colonne C1. Donc, le prédicat C1="D" a un facteur de filtrage de 0,2 pour la table T.
L'optimiseur DB2 n'est pas toujours en mesure de déterminer des facteurs de filtre précis pour un prédicat ou un ensemble de prédicats figurant dans une instruction SQL, même quand les tables référencées sont à jour. Le résultat est que l'optimiseur génère des plans d'accès qui sont loin d'être optimaux.
Ainsi, le prédicat WHERE T1.C1 > ? ne permet pas à l'optimiseur d'estimer le facteur de filtrage exact durant les phases PREPARE ou BIND ; même si les statistiques d'histogramme ont été collectées en C1, l'optimiseur ne peut pas savoir quelles valeurs sont possibles.
Avec la fonction Remplacer la sélection, vous obtenez des recommandations pour remplacer les valeurs estimées par l'optimiseur pour les facteurs de filtrage par des valeurs plus justes. Vous pouvez même définir vous même un ensemble de facteurs de filtrage.
Un ensemble de facteurs de filtrage pour une instruction SQL constitue un profil de sélection. La fonction Remplacer la sélection vous permet de valider les profils de sélection et de les déployer, s'ils ne comportent pas d'erreurs.
Une fois que vous avez remplacé les facteurs de filtrage, en acceptant les recommandations ou en les définissant vous-même, vous pouvez vérifier l'ensemble de facteurs de filtrage pour rechercher les erreurs potentielles. Vous analysez ensuite le nouveau plan d'accès pour l'instruction SQL actuelle et le comparez même au plan d'accès d'origine, sans déployer d'abord le nouveau profil de sélectivité. Vous pouvez aussi exécuter l'assistant Index sur l'instruction ; l'assistant utilisera le nouveau plan d'accès. Vous comparez ensuite les recommandations de l'assistant aux recommandations qu'il a données à partir du plan d'accès d'origine.
Si vous voulez modifier encore plus les facteurs de filtrage, vous pouvez le faire, puis vous les validez et les testez à nouveau et les redéployez.