I work on SimpleDBM in my spare time. I also have to do some amount of research for each module. These two factors, combined with periods of "inactivity" mean that I cannot provide a well-defined schedule for completing the project. However, the design of SimpleDBM ensures that that individual modules are usable immediately. Therefore, I believe that the interim snapshots are useful as well, and I encourage you to download SimpleDBM and experiment with the various modules.
I am keen for other developers to participate in this project and will gladly provide assistance and answer queries. I think the project is of particular interest to database technology students and researchers.
The SimpleDBM development status is summarised by Module. Available status means that this module has been implemented and its code is available in the download area.
Module | Function | Status |
Storage Manager | Provides a low-level interface to the Operating System IO system. | Available. |
Latch Manager | Implements the latching sub-system. | Available. |
Lock Manager | Implements locking sub-system. | Available. |
Log Manager | Implements the Write Ahead Log mechanism. | Available. |
Object Registry | A facility to construct objects of various types dynamically using a numeric type code. | Available. |
Page Factory | Handles the mapping of pages to storage containers and responsible for instantiating different types of pages. | Available. |
Buffer Manager | Implements the Buffer Management sub-system | Available. |
Transaction Manager | Implements ARIES style Transaction Manager. | Available. |
Space Manager | Implements basic functions related to Page allocation. | Available. |
Slotted Page Manager | Implements common functions related to manipulating slots and items within pages. | Available. |
BTree Manager | Sub-system that handles BTree indexes. | Available (New!). |
Tuple Manager | Transactional module that implements low-level facilities for maintaining tuples, or records that span multiple pages. This module provides the basis for implementing higher level tables. | Available (New!). |
Data Type Manager | This module will handle implementation of different data type such as number, date, etc. | Planned. |
Scan Manager | Sub-system that implements ordered/unordered scans. Will work on top of Tuple Manager and B-Tree Manager. | Planned |
Copyright © 2002-2005 by Dibyendu Majumdar