Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект_лекций_Разработка_ИИ_и_Базы_данных_Ерофеев.pdf
Скачиваний:
11
Добавлен:
13.01.2026
Размер:
5 Мб
Скачать
☆

Вкладка 4

Базы данных 4 (08.10.2025)

​Кортеж это запись в таблице, которая определена с точностью до соотношения имя атрибута и значения и содержит одно вхождение каждого имени атрибута принадлежащего конкретной схеме отношения. Значение должно соответствовать типу данных или домену.

​Отношение это множество кортежей соответствующих одной схеме отношений.

​Ключ это атрибут или набор атрибутов, значения которого однозначно идентифицируют кортеж.

​

​Отношение может иметь несколько ключей, но всегда один из ключей объявляется первичным и его значения не могут обновляться. Все остальные ключи кроме первичного называются возможными. Атрибуты представляющие собой копии ключей других отношений являются внешними ключами.

Расширением реляционной модели является объектно-реляционная модель,

которая сочетает в себе реляционную модель данных с концепциями ООП. ООП - ?

Класс это множество объектов объединенных идентичными атрибутами и аналогичными методами. (буд спрашивать полиморфизм, инкапсуляция, наследования)

Объектно ориентированные и нереляционные базы данных

Базы данных в которых информация о сущностях представлена в виде объектов под уникальными идентификаторами, называется объектно ориентированными. Состояние объекта описывается атрибутами, а его применение описывается набором методов. Объект в ооп задаётся как отдельная сущность.

Нереляционная концепция это подход к проектированию к баз данных который предоставляет механизм хранения и извлечения данных отличный от традиционных реляционных баз данных. Такие базы данных разработаны для работы с конкретными

моделями данных и обладают гибкими и легко масштабируемыми схемами. Современные приложения часто работают с неструктурируемыми или полуструктурируемыми данными. Существуют 4 типа нереляционных баз данных:

Первый тип: ключ значения. Это наиболее простой вариант хранилища данных использующий ключ для доступа к значению в рамках большой хэш таблицы.

Как правило хэш таблица является ассоциативным контейнером типа ключ-значение. Пусть к - ключ, h(x) - хэш функция. Тогда h(k) является хэш образом ключа или просто хэшом, и этот хэш является индексом (порядковым номером) ячейки в которой будет храниться элемент связанный с k. Ассоциативный массив удобно рассматривать как обычный массив в котором в качестве индексов можно использовать не только целые числа, но и значения других типов(Например строчные). Ассоциативный массив не может хранить две пары с одинаковыми ключами. Примером ассоциативного массива является телефонный справочник: значением в данном случае является совокупность ФИО + уникальный ID если в нём есть необходимость, а ключом является номер телефона.

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

Второй тип: Документо-ориентированное хранилище - это контейнер данных

представленных парами ключ-значение и сжатых в виде полуструктурированных документов из тегированных (помеченных) элементов. Каждый документ в такой базе

это отдельный объект. Такие базы часто используются для организации каталогов

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

заранее продумывать строгую(формальную) схему данных и можно легко добавлять

новые поля.

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

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

информации в колоночные базы данных сложнее, так же намного сложнее выполняется копирование информации.