THE ARCHITECTURE OF THE DALI MAIN-MEMORY STORAGE MANAGER

Citation
P. Bohannon et al., THE ARCHITECTURE OF THE DALI MAIN-MEMORY STORAGE MANAGER, MULTIMEDIA TOOLS AND APPLICATIONS, 4(2), 1997, pp. 115-151
Citations number
45
Categorie Soggetti
Computer Sciences","Computer Science Theory & Methods","Computer Science Information Systems","Computer Science Software Graphycs Programming","Engineering, Eletrical & Electronic
ISSN journal
13807501
Volume
4
Issue
2
Year of publication
1997
Pages
115 - 151
Database
ISI
SICI code
1380-7501(1997)4:2<115:TAOTDM>2.0.ZU;2-Z
Abstract
Performance needs of many database applications dictate that the entir e database be stored in main memory. The Dali system is a main memory storage manager designed to provide the persistence, availability and safety guarantees one typically expects from a disk-resident database, while at the same time providing very high performance by virtue of b eing tuned to support in-memory data. User processes map the entire da tabase into their address space and access data directly, thus avoidin g expensive remote procedure calls and buffer manager interactions typ ical of accesses in disk-resident commercial systems available today. Dali recovers the database to a consistent state in the case of system as well as process failures. It also provides unique concurrency cont rol and memory protection features, as well as ordered and unordered i ndex structures. Both object-oriented and relational database manageme nt systems have been implemented on top of Dali. Dali provides access to multiple layers of application programming interface, including its low-level recovery, concurrency control and indexing components as we ll as its high-level relational component. Finally, various features o f Dali can be tailored to the needs of an application to achieve high performance-for example, concurrency control and logging can be turned off if not desired, enabling Dali to efficiently support applications that require non-persistent memory-resident data to be shared by mult iple processes.