B-tree
Albero di ricerca bilanciato progettato per l'archiviazione a blocchi: ogni nodo corrisponde a una pagina del disco e contiene centinaia di chiavi, così una ricerca richiede solo 3–4 I/O su disco anche per tabelle da miliardi di righe.
Bayer e McCreight (1972). È il tipo di indice predefinito in quasi ogni database relazionale (Postgres, MySQL/InnoDB, SQL Server, SQLite). La variante B+-tree memorizza i dati solo nelle foglie e collega le foglie tra loro, così le scansioni di intervalli diventano sequenziali. Ottimo per l'OLTP con molte letture e scritture puntuali.
Perde contro gli LSM-tree nei carichi con molte scritture (le scritture si amplificano a causa dell'I/O casuale), ed è per questo che RocksDB, Cassandra e Scylla scelgono LSM.