Фрагмент для ознакомления
2
ВВЕДЕНИЕ
В современном обществе, характеризующемся переизбытком информации, возникает необходимость в эффективном её управлении. Для этого создаются многочисленные базы и банки данных, предназначенные для хранения и обработки разнообразных сведений. Практически любая задача в наши дни связана с манипуляцией информацией и данными.
1 Концептуальное и логическое проектирование базы данных
1.1 Теоретические основы проектирования БД
Концептуальная модель – это отражение предметной области, для которой разрабатывается база данных. Это некая диаграмма с принятыми обозначениями элементов. Так, все объекты, обозначающие вещи, обозначаются в виде прямоугольника. Атрибуты, характеризующие объект – в виде овала.
Концептуальная модель представляет собой важный инструмент для проектирования баз знаний и отвечает на множество потребностей в этой области. Она основана на ряде принципов, которые помогают организовать информацию и структурировать её в удобном для использования виде. В рамках концептуальной модели выделяются две основные области понятий, каждая из которых представлена в виде иерархического дерева.
Первая область — это дерево типов данных, которое служит основой для описания структуры данных, содержащихся во второй области — дереве данных. Дерево типов данных определяет, какие именно типы информации будут использоваться и как они будут связаны между собой. Это важно, потому что без четко определенного дерева типов невозможно обеспечить логическую целостность дерева данных. Например, если мы создаем базу данных для управления библиотекой, дерево типов данных может включать такие элементы, как книги, авторы, жанры и читатели.
Вторая область, дерево данных, представляет собой фактические записи и экземпляры данных, которые мы собираем и храним. Оно строится на основе типов данных и отражает реальное состояние объектов, с которыми мы работаем. Например, в дереве данных могут находиться конкретные книги с указанием их авторов, жанров, даты публикации и других характеристик.
1.1.1 Иерархическая модель данных
Иерархическая модель данных представляет собой способ организации информации в базе данных, который визуализируется в виде древовидной структуры. В этой модели данные структурированы по уровням, где каждый уровень может содержать объекты, относящиеся к более низким уровням иерархии. Это создаёт четкую иерархию, в которой объекты могут быть связаны между собой различными отношениями.
Важным аспектом иерархической модели является то, что каждый объект может иметь только одного родителя, но может включать в себя несколько дочерних объектов. Это означает, что в иерархии всегда существует четкая связь предка и потомка. Например, в контексте организации, директор может быть предком для нескольких менеджеров, которые, в свою очередь, могут иметь подчиненных сотрудников. Таким образом, структура позволяет легко отслеживать отношения между различными уровнями данных.
Кроме того, в этой модели объекты, имеющие общего предка, называются близнецами. Это может быть полезно для группировки данных, которые имеют схожие характеристики или функции. Например, в иерархической модели данных о сотрудниках два менеджера могут быть близнецами, если они подчиняются одному и тому же директору.
Иерархическая модель данных была одной из первых моделей, используемых для организации баз данных, и она имеет свои преимущества и недостатки. К преимуществам можно отнести простоту понимания и визуализации структуры данных, что позволяет легко управлять иерархиями. Однако, среди недостатков можно выделить ограниченность в гибкости: если необходимо изменить структуру, это может потребовать значительных усилий, так как все связанные объекты могут быть затронуты.
Современные базы данных чаще используют реляционные модели, которые обеспечивают большую гибкость и возможность работы с более сложными структурами данных. Однако иерархическая модель все еще находит применение в некоторых областях, таких как управление документами, где иерархическая структура файлов и папок может быть удобной для организации информации.
1.1.2 Сетевая модель данных
Сетевая модель данных – модель, состоящая из записей, элементов данных и связей типа “один ко многим” (1:М), установленных между записями.
В сетевой модели данные представлены в виде коллекций записей, а связи – в виде наборов. В отличие от реляционной модели, связи здесь явным образом моделируются наборами, которые реализуются с помощью указателей. Сетевую модель можно представить как граф с записями в виде узлов графа и наборами в виде его ребер. Наиболее полно концепция сетевых БД впервые изложена в предложения группы CODASYL.
Описание схемы сетевой базы данных осуществляется посредством двух групп типов: «запись» и «связь». Тип «связь» устанавливается для двух типов «запись»: предшествующей и последующей. Переменные типа «связь» представляют собой экземпляры связей.
Сетевая база данных формируется из совокупности записей и соответствующего набора связей между ними. Формат связи не ограничен какими-либо специальными требованиями. В отличие от иерархических структур, где запись-потомок могла иметь только одну запись-предка, в сетевой модели данных запись-потомок может иметь произвольное количество записей-предков (свободных родителей).
1.1.3 Реляционная модель данных
Реляционная модель данных – логическая модель данных.
Впервые была предложена британским учёным сотрудником компании IBM Эдгаром Франком Коддом (E. F. Codd) в 1970 году в статье "A Relational Model of Data for Large Shared Data Banks". В настоящее время эта модель является фактическим стандартом, на который ориентируются практически все современные коммерческие СУБД.
В реляционной модели достигается значительно более высокий уровень абстракции данных по сравнению с иерархическими или сетевыми моделями. Как подчеркивается в статье Е.Ф. Кодда, реляционная модель позволяет описывать данные исключительно на основе их естественной структуры, без необходимости введения дополнительных структур для машинного представления.
Другими словами, представление данных не зависит от способа их физического хранения. Это достигается благодаря использованию математической теории отношений, от которой и происходит название "реляционная" (от англ. relation - "отношение").
1.2 Описание предметной области
Cпециалистов в кинематографе можно подразделить на актеров, режиссеров, постановщиков, сценаристов, костюмеров, звукорежиссеров и тд. Каждая из перечисленных категорий имеет уникальные атрибуты-характеристики и может подразделяться (например, постановщики) на более мелкие категории.
Актеры могут иметь звания заслуженных и народных артистов. Каждый актер имеет свои вокальные и внешние данные (пол, возраст, голос, рост и т.п.), которые могут подходить для каких-то pолей, а для каких-то нет (не всегда женщина может сыграть мужчину и наоборот). Для съемки необходимо подобрать актеров на pоли. Естественно, что один и тот же актеp не может игpать более одной pоли в киноленте, но может играть несколько pолей в различных фильмах. У киноленты также имеется режиссёр-постановщик, художник-постановщик, дирижёр-постановщик, автор. Кинофильмы можно подразделить по жанрам: комедия, трагедия, мелодрама и пр.
1.2 Построение ER-диаграмм
Создавая базу данных, нужно упорядочить данные по определенным правилам (структурировать данные), чтобы с максимальным комфортом работать с базой данных. Для начала структурирования данных следует выбрать информационно-логическую (инфологическую) модель данных, которая является ядром любой базы данных. Инфологическая модель БД представляет собой описание объектов (сущности), с набором атрибутов и связей между ними. Информационно-логическая модель является фундаментом, на котором будет создана база данных. Для этого рассматриваются входные и выходные документы, относящиеся к предметной области заказчика, и учитываются поставленные задачи.
Для проектирования базы данных существуют различные средства, в том числе и компьютерные. Воспользуемся ЕR-диаграммой (ЕR - Entity-Relationship- Сущность - Связь).
Базовые понятия ER-диаграмм:
Сущность - это множество экземпляров объектов, обладающих общими атрибутами и характеристиками. Любой объект системы может быть представлен только одной сущностью, которая должна быть уникально идентифицирована. Каждая сущность может обладать любым количеством связей с другими сущностями модели.
Связь - ассоциация между двумя сущностями, при которой каждый экземпляр одной сущности ассоциирован с любым количеством экземпляров второй сущности, и наоборот.
2 Реализация базы данных средствами СУБД
2.1 Обоснование выбора конкретной СУБД
Для разработки программного продукта была выбрана СУБД Postgre SQL.
SQL это высокоуровневый язык запросов, предназначен для работы с базами данных. Она позволяет модифицировать данные, составлять и выполнять запросы, выводить результаты в виде отчетов.
PostgreSQL – является объектно-реляционной базой данных, которая использует язык SQL. Главными достоинствами PostgreSQL является то, что она имеет открытый исходный код и набор функций с помощью которых происходит масштабирование и безопасное хранение данных. Именно благодаря этому СУБД PostgreSQL получила большую популярность в среде программной разработки.
Данная СУБД является многофункциональной, поскольку с помощью неё разработчики могут реализовать множество функций, которые упрощают создание приложения, а также защищают целостность данных и создают отказоустойчивые среды.
2.2 Разработка базы данных
На основании логической модели проектируется физическая модель БД.
При рассмотрении предметной области было выбрано десять сущностей, атрибуты и типы данных этих атрибутов приведены в таблицах.
Таблицы — это объекты, предназначенные для хранения данных в виде записей (строк) и полей (столбцов). Каждая таблица содержит данные об определенном объекте.
Таблица «Sotrudnik» хранит информацию о сотрудниках кинематографа. Скриншот данной таблицы показан на Рисунке 2.1.
2.3 Запросы и представления
Процесс или команда получения данных из базы данных называется запросом. Запрос – это средство выбора необходимой информации из базы данных. Вопрос, сформированный по отношению к базе данных, и есть запрос. Применяются два типа запросов: по образцу (QBE – Query by example) и структурированный язык запросов (SQL – Structured Query Language).
QBE - запрос по образцу – средство для отыскания необходимой информации в базе данных. Он формируется не на специальном языке, а путем заполнения бланка запроса в окне Конструктора запросов.
SQL – запросы – это запросы, которые составляются программистами из последовательности SQL-инструкций. Эти инструкции определяют, что необходимо сделать с входным набором данных для генерации выходного набора.
Существует несколько типов запросов: на выборку, на обновление, на добавление, на удаление, перекрестный запрос, создание таблиц. Наиболее распространенным является запрос на выборку. Запросы на выборку используются для отбора нужной пользователю информации, содержащейся в таблицах.
Используя подзапрос, выведем фамилию, имя, адрес всех сотрудников из таблицы Sotrudnik и их должности из таблицы Doljnost (Рисунок 2.9).
ЗАКЛЮЧЕНИЕ
Разработка БД является одним из актуальных направлений информационных технологий. Это обусловлено ускорением интеграции информационных систем во все сферы жизни.
Фрагмент для ознакомления
3
СПИСОК ЛИТЕРАТУРЫ
1. Федорова Г.Н. Разработка, администрирование и защита баз данных: учебник М:. Академия , 2017
2. Агальцов,В.П.Базыданных. В2-хкн.Кн.1.Локальныебазыданных.-М.: ФОРУМ: Инфра-М, 2018.
3. Агальцов, В.П.Базы данных. В2-кн.Кн.2.Распределенныеиудаленныебазы данных :учебник .- М.: ФОРУМ: Инфра-М, 2018.
4. Баженова,И.Ю.Основы проектировании яприложений базданных. -М.:БИНОМ. Лаборатория знаний, Интернет-Университет Информационных Технологий (ИНТУИТ), 2018.
5. Мочалов, А. И. Базы и банки данных на транспорте Электронный ресурс / Мочалов А. И. : учебное пособие. - Санкт-Петербург : СПбГУ ГА, 2020. - 147 с. - ISBN 978-5-907354- 00-5, экземпляров неограниченно
6. Стоунз Р., Мэтью Н. PostgreSQL. Основы. – Пер. с англ. – СПб: Символ Плюс, 2002. – 640 с – Пер. с англ. – СПб: Символ Плюс, 2002. – 640 с.,
7. Наместников,, А. М. Базы данных. Практический курс. В 2 частях. Ч.1. Объектнореляционные базы данных на примере PostgreSQL 9.5 : учебное пособие / А. М. Наместников, А. А. Филиппов. - Базы данных. Практический курс. В 2 частях. Ч.1. Объектно-реляционные базы данных на примере PostgreSQL 9.5,2025-10-27. - Электрон. дан. (1 файл). - Ульяновск : Ульяновский государственный технический университет, 2017. - 113 с. - электронный. - Книга находится в премиум-версии ЭБС IPR BOOKS. - ISBN 978- 5-9795-1743-8, экземпляров неограничено
8. Web-технологии с базами данных [Электронный ресурс]/Астахова И.Ф., КурченковаТ.В., ДураковР.А., БитюцкихИ.С., КомаровД.В. - Воронеж: Изд-во ВГУ, 2018. - Режим доступа:http://window.edu.ru/resource/392/65392 5., свободный.
9. Metenit: сайт / URL: https://metanit.com/sql/postgresql/4.7.php
10. PostgreSQL: The world's most advanced open source database [Электронный ресурс] https://www.postgresql.org/