English

Lightweight Data Indexing and Compression in External Memory

Data Structures and Algorithms 2009-09-25 v1

Abstract

In this paper we describe algorithms for computing the BWT and for building (compressed) indexes in external memory. The innovative feature of our algorithms is that they are lightweight in the sense that, for an input of size nn, they use only n{n} bits of disk working space while all previous approaches use \Thnlogn\Th{n \log n} bits of disk working space. Moreover, our algorithms access disk data only via sequential scans, thus they take full advantage of modern disk features that make sequential disk accesses much faster than random accesses. We also present a scan-based algorithm for inverting the BWT that uses \Thn\Th{n} bits of working space, and a lightweight {\em internal-memory} algorithm for computing the BWT which is the fastest in the literature when the available working space is \osn\os{n} bits. Finally, we prove {\em lower} bounds on the complexity of computing and inverting the BWT via sequential scans in terms of the classic product: internal-memory space ×\times number of passes over the disk data.

Keywords

Cite

@article{arxiv.0909.4341,
  title  = {Lightweight Data Indexing and Compression in External Memory},
  author = {Paolo Ferragina and Travis Gagie and Giovanni Manzini},
  journal= {arXiv preprint arXiv:0909.4341},
  year   = {2009}
}
R2 v1 2026-06-21T13:49:49.110Z