Skip to content

Database Management System including indices, Joins and Query Optimization, Concurrency, and Recovery

Notifications You must be signed in to change notification settings

JC01111/Database-Management-System

Repository files navigation

Database Management System

This repo contains a bare-bones database implementation, which supports executing simple transactions in series. It contains support for B+ tree indices, efficient join algorithms, query optimization, multigranularity locking to support concurrent execution of transactions, and database recovery.

Overview

This database management system project contains four major topics:

In this project, I implemented B+ tree indices.


In this project, I implemented some join algorithms: block nested loop join, sort merge, and grace hash join. Also, a piece of a relational query optimizer: Plan space search.


In this project, I implemented the bottom layer (LockManager) and lock types, the middle and top layer (LockContext and LockUtil) of multigranuarlarity locking.


In this project, I implemented write-ahead logging and support for savepoints, rollbacks, and ACID compliant restart recovery.

Configuration and files explanation

Look at here for configuration and files explanation.

About

Database Management System including indices, Joins and Query Optimization, Concurrency, and Recovery

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages