La soluzione B-tree

Gli indici B-tree sono strutture dati ad albero bilanciate in cui i singoli nodi rappresentano delle pagine dati, il bilanciamento e mantenuto dalle operazioni di inserimento e update.

Il numero di entries di un nodo e un valore nell’intervallo dove e detto ordine dell’albero

il numero di nodi figli e e oscilla nell’intervallo

Algoritmo di ricerca di un b-tree

L’algoritmo di ricerca, dato un valore della chiave percorre l’albero prendendo in considerazione il figlio -esimo con tale per cui

Costo di una ricerca in un b-tree

In una ricerca in un b-tree il costo e dato dall’altezza dell’albero + l’accesso al data file

la root si presume già essere in memoria centrale

Di conseguenza e necessario poter computare l’altezza di un b-tree

Si ha che il numero massimo di nodi di un b-tree e dato quando tutti i nodi hanno entry di conseguenza si ha che

Di conseguenza il massimo numero di entry e dato da

Viceversa il numero minimo di nodi si ha quando tutti escluso la root sono pieni a meta ovvero hanno entry

Di conseguenza il minimo numero di entry e dato da

L’altezza dell’albero e di conseguenza inclusa nel range:

Limitazioni di un b-tree

Un B-tree risulta inefficente nelle ricerche a range in quanto le entry sono contenute anche nei nodi intermedi, per risolvere questo problema si introducono i B+tree

PREVIOUS NEXT