Skip to content

๐Ÿ—ƒ๏ธ Lite Database System ๐Ÿ—ƒ๏ธ

Notifications You must be signed in to change notification settings

junrong09/SQL-Database-System

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CS3223

CS3223 Project

This project is a simple SPJ (Select-Project-Join) query engine, which consists of the following features:

  • Dynamic programming optimizer
  • Random optimizer
  • Distinct
  • Group by
  • Hash join
  • Block nested loop join
  • Page nested loop join

There are some implementation consideration to be noted:

  • The Hash Join algorithm will recursively hash the elements in the same partition, and if the number of recursive partition is more than 3 times and still need more hashing, to speed up the program, the program will think the plan with hash join is infeasible, and the plan will choose Block Nested Loop instead.

    • This is due to, first, the limitation of the hash function, given a huge number of values the possibility of collision is high, second the number of duplicated values.

To get started with this project as a user, please follow this link

To get started with this project as a developer, please follow this link

About

๐Ÿ—ƒ๏ธ Lite Database System ๐Ÿ—ƒ๏ธ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 92.3%
  • HTML 7.2%
  • Lex 0.3%
  • Makefile 0.2%
  • Batchfile 0.0%
  • Shell 0.0%