Типы баз данных

Что такое типы баз данных: определение, основные принципы, примеры и практические советы. Изучайте SQL для тестировщиков с подробными объяснениями для начинающих специалистов.

Типы баз данных.

Основные БД:

  • Реляционные базы данных.
  • Key-value базы данных.
  • Документоориентированные базы данных.

Реляционные БД.

Реляционными называются базы данных, в основе построения которых лежит реляционная модель. В такой базе данные структурированы в виде таблиц, которые содержат строки и столбцы.

Ключевое поле (первичный ключ) — это поле (или набор полей), значение которого однозначно определяет запись в таблице.

Внешний ключ — это поле (или набор полей) в одной таблице, которое ссылается на первичный ключ в другой таблице.

Автоинкремент — это функция в базах данных, которая автоматически генерирует уникальный номер для каждой новой строки, добавленной в таблицу. Этот номер обычно используется в качестве первичного ключа для уникальной идентификации каждой строки в таблице.

Правила первичного и внешнего ключа служат для одной цели.

Особенности реляционных БД.

  • Модель данных в реляционных БД определена заранее и является строго типизированной.
  • Данные хранятся в таблицах, состоящих из столбцов и строк.
  • На пересечении каждого столбца и строчки допускается только одно значение.
  • Каждый столбец проименован и имеет определенный тип, которому следуют значения со всех строк в данном столбце.
  • Столбцы располагаются в определённом порядке, который определяется при создании таблицы.
  • В таблице может не быть ни одной строчки, но обязательно должен быть хотя бы один столбец.
  • Запросы к базе данных возвращают результат в виде таблиц.

Реляционная и Нереляционная. Ключевые отличия.

Реляционные и нереляционные базы данных представляют различные модели хранения и организации данных.

Реляционные базы данных:

Структура.

  • Основаны на табличной структуре, где данные хранятся в таблицах, состоящих из строк (записей) и столбцов (полей).
  • Связи между таблицами устанавливаются с помощью ключей (Primary Key, Foreign Key).

Язык запросов.

  • Для работы с данными используется язык запросов SQL (Structured Query Language).
  • Запросы удобны для выполнения сложных операций соединения, фильтрации, группировки и сортировки данных.

Нереляционные базы данных:

Структура.

  • Основаны на различных моделях данных, таких как документы (MongoDB), ключ-значение (Redis), столбцы (Cassandra), графы (Neo4j).
  • Данные могут быть представлены в виде коллекций, документов, ключей и т.д.

Гибкость.

  • Позволяют хранить и обрабатывать разнородные и неструктурированные данные.
  • Лучше подходят для масштабируемых и распределенных систем.

Производительность.

  • Нереляционные базы данных могут обеспечить более высокую скорость обработки больших объемов данных.
  • Особенно эффективны при работе с неструктурированными данными или при необходимости горизонтального масштабирования.

Key-value БД.

Key-value базы данных — это тип баз данных, которые хранят данные как совокупность пар «ключ-значение», в которых ключ служит уникальным идентификатором.

Особенности Key-value БД.

  • Скорость работы.
  • Простота модели хранения данных.
  • Гибкость: значения могут быть любыми, включая JSON.

Недостатки

  • Плохо масштабируются по мере усложнения моделей данных.
  • Неэффективность при работе с группой записей.

Документоориентированные базы данных — это тип баз данных, направленный на хранение и запрос данных в виде документов, подобном JSON.

Документоориентированные БД

Особенности документоориентированных БД.

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

Второстепенные БД:

  • Распределенные БД. Такие БД состоят из двух и более частей, расположенных на разных серверах.
  • Хранилища данных. Представляет собой тип БД, специально предназначенный для быстрого выполнения запросов и анализа. Централизованный репозиторий для данных.
  • NoSQL. Нереляционная БД, хранит неструктурированные или слабоструктурированные данные.
  • Графовые БД. Разновидность БД с реализацией сетевой модели в виде графа и его обобщений.
  • OLTP. БД для бизнес-транзакций, выполняемых множеством пользователей.
  • С открытым исходным кодом. Имеют открытый ИК и могут управляться средствами как SQL, так и NoSQL.
  • Облачные БД. Набор структурированных или неструктурированных данных, размещенный на частной, публичной или гибридной платформе облачных вычислений.
  • Многомодельные БД. Объединяет разные типы моделей БД в единую интегрированную СУБД. Может содержать различные типы данных.
  • Автономные БД. Самоуправляемые БД. Используют машинное обучение для автоматизации настройки, защиты, бэкапа, обновления и тд, управляемые администраторами БД.