The Architecture of the Dalí Main-Memory Storage Manager

  • Authors:
  • Philip Bohannon;Daniel Lieuwen;Rajeev Rastogi;Avi Silberschatz;S. Seshadri;S. Sudarshan

  • Affiliations:
  • Bell Laboratories, 700 Mountain Ave., Murray Hill, NJ 07974/ Email: bohannon@research.bell-labs.com, lieuwen@research.bell-labs.com, rastogi@research.bell-labs.com, avi@research.bell-labs.com;Bell Laboratories, 700 Mountain Ave., Murray Hill, NJ 07974/ Email: bohannon@research.bell-labs.com, lieuwen@research.bell-labs.com, rastogi@research.bell-labs.com, avi@research.bell-labs.com;Bell Laboratories, 700 Mountain Ave., Murray Hill, NJ 07974/ Email: bohannon@research.bell-labs.com, lieuwen@research.bell-labs.com, rastogi@research.bell-labs.com, avi@research.bell-labs.com;Bell Laboratories, 700 Mountain Ave., Murray Hill, NJ 07974/ Email: bohannon@research.bell-labs.com, lieuwen@research.bell-labs.com, rastogi@research.bell-labs.com, avi@research.bell-labs.com;Indian Institute of Technology, Bombay, India/ Email: seshad@cse.iitb.ernet.edu, sudarsha@cse.iitb.ernet.edu;Indian Institute of Technology, Bombay, India/ Email: seshad@cse.iitb.ernet.edu, sudarsha@cse.iitb.ernet.edu

  • Venue:
  • Multimedia Tools and Applications
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Performance needs of many database applicationsdictate that the entire database be stored in main memory.The dali system is a main memory storage manager designed toprovide 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 being tuned to support in-memory data.User processes map the entire database into their address space andaccess data directly, thus avoiding expensive remote procedure calls andbuffer manager interactionstypical 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 alsoprovides unique concurrency control and memory protection features, aswell as ordered and unordered index structures. Both object-oriented and relational database management systems have beenimplemented on top of dali. dali provides access to multiple layers ofapplication programming interface, including its low-level recovery,concurrency control and indexing components as well as its high-levelrelational component. Finally, various features of dali can be tailored tothe needs of an application to achieve high performance–for example,concurrency control and logging can be turned off if not desired, enablingdali to efficiently support applications that requirenon-persistent memory-resident data to be shared by multiple processes.