SimpleDBM - A Database Manager

Introduction

The goal of SimpleDBM project is to build a Relational Database Manager in Java. The planned features include support for:

  1. Transactions
  2. Write Ahead Log
  3. Multiple Isolation Levels
  4. BTree Indexes
  5. Entry Level SQL-92
  6. System Catalogs

A distinguishing feature of the project is that the DBMS is being built in a modular fashion. The aim is ensure that each module is usable on its own ; for example, the Lock Manager or the Log Manager modules can be used on their own even if the rest of the system is not of interest.

There will be two major sub-systems in the dbms backend. The Data Manager subsystem is named RSS, and is responsible for implementing transactions, locking, tuple management, and index management. This sub-system is currently under development.

The second major sub-system will be called SQL Manager. Its job will be to parse SQL statements, produce optimum execution plans, and execute the SQL statements. Development of this sub-system is expected to start sometime in 2006.

SimpleDBM is being built in Java 5.0 and will use new features such as java.util.concurrent package and Generics available in this version of Java. SimpleDBM will not be compatible with previous versions of Java.

History

SimpleDBM is descended from a previous project in C++ called DM1. The existing DM1 C++ codebase has been ported to SimpleDBM.

News

Topics


Copyright © 2005 by Dibyendu Majumdar

Code Coverage by Clover