Predictive B+ tree: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Recupero di 0 fonte/i e segnalazione di 1 link interrotto/i.) #IABot (v2.0.8.2 |
|||
(18 versioni intermedie di 11 utenti non mostrate) | |||
Riga 1:
Il '''
Il
|titolo=IEEE transaction on knowledge and data engineering, vol.26, N°10, OCT 2014 |lingua=en |sito=IEEE}}</ref>. Gli autori principali di questo albero binario sono Weiwei Hu, Dalie Sun, Guoliang Li, Kian-Lee Tan e Jiacai Ni. La prima presentazione del progetto è stata fatta presso l'
== Posizione delle PCM nella gerarchia della memoria ==
In fase di progettazione del BP
* Rimpiazzare direttamente la [[DRAM]] con una PCM in modo da avere una maggiore capacità di memoria principale
* Utilizzare una grande PCM insieme ad una piccola DRAM (
Il modello utilizzato nel BP
== Vantaggi e problematiche per sistemi operanti con PCM ==
Le memorie a cambiamento di fase promettono feature interessanti. Innanzitutto offrono uno storage non volatile ad accesso casuale con indirizzamento a byte e velocità di lettura e scrittura molto elevate. Hanno inoltre una densità molto superiore alle attuali DRAM ed un consumo energetico decisamente inferiore alle memorie NAND FLASH. In seguito è possibile vedere una semplice tabella prestazionale che confronta le performance degli attuali tipi di memorie analizzando principalmente la densità, la velocità, il consumo energetico e
{| class="wikitable"
Riga 19:
!
! [[DRAM]]
! [[
! [[
! [[
|-
! Densità
Riga 60:
Come si evince dalla tabella, le PCM sono più lente delle attuali DRAM, soprattutto nelle operazioni di scrittura; inoltre tali operazioni hanno un consumo energetico nettamente superiore. Infine è importante evidenziare che il numero di scritture su singolo blocco non ha importanza per le DRAM, ma è un elemento critico sul lungo periodo per le PCM.
== Obiettivo del BP
Date le prestazioni della tabella precedente,
A tal scopo sono state adottate diverse tecniche.
=== Modello predittivo ===
Per ridurre le scritture è stato adottato un modello predittivo per calcolare il valore futuro (o la distribuzione futura) di un valore casuale. Questo modello combina
=== Strategia a foglie non ordinate ===
=== Minimizzazione delle operazioni di
Soverchiando alcune delle regole principali del B+
== Architettura del BP
=== DRAM Buffer ===
Al suo interno viene memorizzato un piccolo B+
=== PCM ===
Come anticipato, sulla PCM viene memorizzato il vero e proprio BP
* La struttura ed i nodi possono essere pre-allocati.
* Dato il branching factor 2M del BP
▲* Dato il branching factor 2M del BP Tree, il numero di nodi figlio di un nodo interno può essere minore di M (comunque compreso tra 0 e 2M).
▲* Differente gestione degli inserimenti e delle cancellazione rispetto ai B+ Tree.
== Fasi ==
=== Fase di
[[File:BPTree-WarmUp.png|thumb|Esempio di fase di ''warm-up''. Il B+ tree è pieno e viene trasferito nella PCM. Nell’istogramma la parte blu rappresenta l’effettiva distribuzione delle chiavi, la parte rossa la predizione ottenuta con il modello matematico. Il nodo C del B+ tree viene scisso nel BP tree nei nodi C e C’ a causa della predizione futura.]]
Con questo termine si identifica la prima fase di creazione di un BP
▲Con questo termine si identifica la prima fase di creazione di un BP Tree. Inizialmente il BP Tree è vuoto e utilizziamo il B+ Tree presente nella DRAM per la creazione del primo albero binario. Ad ogni nodo inserito aggiorniamo l’istogramma delle distribuzioni. Quando il buffer sarà pieno lo svuoteremo sulla PCM, creando così lo scheletro del BP Tree. Durante la fase di trascrittura del B+ Tree nella PCM sarà utilizzato il modello predittivo in funzione dei dati presenti nell’istogramma per scindere o concatenare i nodi che saranno parte del BP Tree.
In seguito alla fase di
▲=== Fase di Update ===
▲In seguito alla fase di Warm-Up nella PCM è presente la struttura del BP Tree. La fase succesiva, detta Update, comprende tutte le operazioni future:
==== Inserimento ====
Le nuove chavi vengono inserite nel B+
==== Ricerca ====
La chiave viene ricercata sia nel B+
==== Rimozione ====
La chiave viene ricercata e rimossa sia nel B+
==== Aggiornamento ====
Viene trattato come una rimozione seguita da un inserimento.
== Prestazioni ==
Il BP
== Note ==
== Voci correlate ==
* [[B-
* [[Memoria a cambiamento di fase]]
* [[DRAM]]
== Collegamenti esterni ==
*
*
{{Portale|informatica}}
[[Categoria:Alberi di ricerca]]
|