rstm-sf / game_with_db

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Вольный отчет по заданию курса «Нереляционные базы данных»

Введение

По заданию необходимо было реализовать следующие варианты моделей БД:

  1. Реляционная модель данных.
  2. Объектно-реляционная модель данных.
  3. Документная модель данных.
  4. Модель «семейство столбцов».
  5. Модель «ключ-значение».
  6. Графовая модель данных.

Данные модели были реализованы в следующих БД, соответственно:

  1. PostgreSQL (да-да-да, это СУБД).
  2. PostgreSQL (произносится «Пост-Грэс-Кью-Эл»).
  3. MongoDB.
  4. MonetDB (тоже СУБД, пионерская в мире столбцов, по заверениям).
  5. Riak и Redis (бессмысленно и беспощадно).
  6. ArangoDB (этакий «комбайн»).

Основная часть

В качестве формирования базы использовались открытые данные и были взяты отсюда.

Серверная часть поднята на Ubuntu 16.04, клиентская часть написана на языке Python 3 (формирование базы расположено в src/<db>/), для наглядности примеры запросов написаны в jupyter-тетрадках (расположены в notebooks/). Поэтому базы данных выбирались из следующих предпочтений: Ubuntu, официальный или рекомендуемый клиент для языка Python, без JVM (не хотелось устанавливать еще что-то).

Реляционная модель данных

Наглядно посмотреть тетрадку можно по данной ссылке.

Объектно-реляционная модель данных

Наглядно посмотреть тетрадку можно по данной ссылке.

Документная модель данных

Наглядно посмотреть тетрадку можно по данной ссылке.

Модель «семейство столбцов»

Наглядно посмотреть тетрадку можно по данной ссылке.

Модель «ключ-значение»

Наглядно посмотреть тетрадку можно по данным ссылкам: раз, два.

Графовая модель данных

Наглядно посмотреть тетрадку можно по данной ссылке.

About


Languages

Language:Jupyter Notebook 87.6%Language:Python 12.4%