Skip to content

Repository files navigation

Простой движок исполнения SQL-SPJ запросов.

Проект реализовывался в рамках изучения:

  • Реляционной алгебры
  • Устройства движков исполнения SPJ запросов
  • Построения своей грамматики/правил языка

Некоторые детали реализации

В качестве планировщика запросов используется наивное построение дерева команд, без каких либо оптимизаций в построении. Данные между узлами дерева запроса передаются пакетами фиксированного макс объёма.

Для задания своей грамматики и парсинга использовалась готовая библиотека antlr, её выбор был обусловен тем, что это стандарт индустрии в этой сфере, и было с ним интересно ознакомиться.

Использование

Для осущиствления запроса, напишите запрос в файл input.txt и запустите файл main.py .

Запуск тестов

Для запуска тестов запустите данную команду из папки проекта:

__python -m unittest discover -s tests__

About

The simplest engine of SPJ requests for SQL.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages