Qual'è la differenza tra Sequential Scan e Bitmap heap scan in postgres?
Come recita il titolo, vorrei capire la differenza tra 'Seq Scan' e 'Bitmap heap scan' in un query fatta in un database PostgreSQL.
Registrandoti e creando un nuovo account potrai usufruire di tutti i servizi messi a disposizione, fare domande, rispondere agli utenti, accumulare punti e diventare un utente riconosciuto come esperto; ricevere la nostra newsletter e molto altro ancora. Il tutto in modo semplice, veloce e soprattutto gratuito. Una volta effettuata la registrazione veloce, potrai completare l'inserimento dei tuoi dati accedendo al tuo profilo.
Crea un AccountHai perso la tua Password? Inserisci l'e-mail (username) con la quale ti sei registrato, e ti invieremo una email con una nuova password che potrai poi cambiare una volta entrato nel tuo profilo.
Come recita il titolo, vorrei capire la differenza tra 'Seq Scan' e 'Bitmap heap scan' in un query fatta in un database PostgreSQL.
Per poter rispondere a questa domanda, devi essere registrato e loggato sul sito, dopodichè compila il box sottostante cercando di essere il più chiaro ed esauriente possibile, la tua risposta potrebbe essere la soluzione che l'utente cerca ed essere contrassegnata come migliore, consentendoti così di ottenere punti ed autorevolezza.
Risposte ( 1 approvate )
Andiamo per ordine e diamo una breve definizione delle due scansioni, giusto per capirci.
Sequential Scan: comincia a leggere dal primo record e prosegue sino a quando la query non è soddisfatta; questo non vuol dire che legge tutti i records della tabella, dipende da eventuali clausole (WHERE ad es.) e/o dai LIMIT settati. Per intenderci è la classica query.
Bitmap heap scan: a differenza della precedente, legge solo un sotto insieme dei record di una tabella (ad es. da un indice), quindi può impiegare più tempo nella ricerca ma essere molto veloce nella 'lettura'.
A te le conclusioni su quando usare l'una e quando l'altra, che ovviamente dipendono dal caso e dai numeri di records coinvolti.