Je veux savoir le principe de la "Bitmap tas d'analyse" , je sais que cela arrive souvent lorsque j'exécute une requête avec "ou" dans la condition. Quelqu'un peut dire le principe de la "Bitmap tas de numérisation" ,merci!
Réponse
Trop de publicités?La meilleure explication que vient de Tom Lane, qui est l'algorithme de l'auteur si je ne me trompe. Voir aussi l' article de wikipedia.
En bref, c'est un peu comme un seq scan. La différence est que, plutôt que de se rendre chaque disque de la page, une image bitmap index scan ANDs et Rup applicable index ensemble, et que les visites les pages de disque qu'il doit.
C'est différent d'une analyse d'index, où l'indice est visité, ligne par ligne, dans l'ordre-à-dire une page disque peut obtenir visité plusieurs fois.
Re: la question dans votre commentaire... Oui, c'est exactement ça.
Une analyse d'index sera de passer à travers les lignes une par une, l'ouverture des pages de disque encore et encore, autant de fois que nécessaire (certains seront bien sûr de rester dans la mémoire, mais vous obtenez le point).
Une image bitmap d'index scan de manière séquentielle ouvrir une liste de pages de disque, et de saisir tous les de ligne applicable dans chacun d'eux (d'où le soi-disant revérifier cond que vous voyez dans les plans de requête).
Remarque, en passant, comment l'agrégation et la ligne de commande affecte les coûts associés avec la méthode. Si les lignes sont tous sur la place dans un ordre aléatoire, une image bitmap d'index sera moins cher. (Et, en fait, si ils sont vraiment tous sur la place, la seq scan sera moins cher, depuis un bitmap index scan n'est pas sans certains frais généraux.)