Equivalente puramente funzionale di B-Tree?


14

Sto esplorando l'idea di scrivere un DBMS in modo puramente funzionale. La struttura dati tradizionale utilizzata per l'indicizzazione è B-Tree. Mi piacerebbe conoscere un equivalente puramente funzionale di B-Tree che sarebbe ottimizzato per ridurre al minimo l'accesso al disco. Grazie.


Non so molto su di esso, ma questo sembra un posto ragionevole per iniziare.
— Ritwik Bose,

Mechko, penso che le strutture di dati ignari della cache non siano generalmente suscettibili di implementazioni puramente funzionali.
— jbapple il

Risposte:


10

So di più sulle strutture di dati puramente funzionali rispetto alle strutture di dati di memoria esterna, ma ci proverò.

O(logB⁡n)O(B)O(1)

O(lg⁡w)w

Potresti voler guardare questa presentazione su RethinkDB , che utilizza strutture di dati puramente funzionali a causa del costo delle scritture negli SSD.


4

Se sei interessato a scrivere un database puramente funzionale, probabilmente dovresti dare un'occhiata alla tesi di dottorato di Phil Trinder che era proprio su questo argomento. Ha un capitolo sull'uso di B-Trees.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.