Модели компьютерных баз данных

Содержание

 

Введение 2

1. Теоретическая  часть 3 
2. Практическая часть  12 
2.1. Постановка задачи  12 
2.2 Компьютерная модель решения задачи  13 
2.2.1 Информационная модель решения задачи  13 
2.2.2 Аналитическая модель решения задачи  14 
2.2.3 Технология решения задачи  15 
2.3 Результаты компьютерного эксперимента и их анализ  18 
Заключение  19 
Список использованной литературы  20

 

Введение

Курсовая  работа состоит из двух частей: теоретической и практической.

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

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

 

Теоретическая часть.

Модели  компьютерных баз данных.

За последние  двадцать лет базы данных стали ядром  информационных систем и кардинально  изменили структуру работы практически  всех предприятий. В частности развитие данной технологии в последние годы привело к созданию весьма мощных и интуитивно понятных систем. Наверняка  сейчас осталось очень мало предприятий, которые бы не были автоматизированы программными средствами 1-С. Появились  бесплатные системы управления базами данных, такие как MySQL. Также нельзя не упомянуть об Access – очень простой в использовании и очень популярной СУБД, возможностей которой, хватает для создания приложений отвечающих потребностям малых и средних организаций.

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

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

Существует  несколько различных структур информационных моделей и соответственно различных типов баз данных: табличные, иерархические и сетевые. Тип базы данных выбирается в зависимости от данных, которые необходимо организовать и от задач, которые решает база данных. 

По форме  представляемой информацииможно выделить фактографические, документальные и мультимедийные БД.

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

Документальная  информация отличается неопределённостью  или переменной структурой данных (документов).

По типу хранимой информации (исключая мультимедийную) можно выделить фактографические, документальные, лексикографические БД.

Лексикографические  базы – это классификаторы, кодификаторы, словари основ слов, тезаурусы, рубрикаторы и т.д., обычно используемые в качестве справочных совместно с документальными или фактографическими БД.

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

Классификация моделей компьютерных баз данных.

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

- иерархическая,  
- сетевая,  
- реляционная,  
- объектно-ориентированная,  
- объектно-реляционная. 

Объекно-ориентированную и объектно-реляционную модели часто называют постреляционными моделями данных БД. Соответственно говорят о сетевых, иерархических, реляционных, объектно-ориентированных, объектно-реляционных и постреляционных БД.

На ПК самое широкое применение нашли  реляционные модели данных.

 

Иерархическая модель данных.

Иерархической модели данных соответствует дерево – связной ориентированный граф, который не содержит циклов. В дереве выделяется корень – вершина, в которую  не заходит ни одно ребро, а исходит  произвольное количество ребер. Ориентация ребер обычно определяется от корня. В иерархической модели данных между записями двух типов выполняется групповое отношение. Владелец группового отношения – родительская запись, а члены группового отношения – дочерние записи. Корневая запись каждого дерева обязательно должна содержать ключ с уникальным значением. Ключи некоторых записей должны иметь уникальное значение только в рамках группового отношения. Каждая запись идентифицируется полным ключом, под которым понимается совокупность ключей всех записей от корневой до искомой по иерархическому пути. 

Иерархическая модель данных позволяет непосредственно  реализовывать связи со степенями  один - ко - многим (1:N) и один - к - одному (1:1). Для реализации связи со степенью многие – ко – многим (M:N) необходимо производить дублирование деревьев. Над данными в иерархической модели определены следующие основные операции: 

- добавлять  в базу данных новую запись  с обязательным формированием  значения ключа для корневой  записи; 

- изменять  значения данных, причем ключевые  значения данных не должны  подвергаться изменениям; 

- удалять  некоторую запись и все подчиненные  ей записи; 

- извлекать  ключевую запись по ключевому  значению; 

- извлекать  следующую запись (следующая запись  извлекается в порядке левостороннего/правостороннего  обхода дерева). 

Иерархическая модель вообще реализовывалась средствами древовидных структур с корневыми сегментами, имеющими физический указатель на другие сегменты. Преимущество таких моделей БД заключалось в том, что они уменьшали избыточность данных. Одно из неудобств такой модели данных заключается в том, что реальный мир не может быть легко представлен в виде древовидной структуры с единственным корневым сегментом. Иерархические базы данных обеспечивали указатели между различными деревьями баз данных, но обработка данных с использованием таких связей иногда могла оказаться неудобной. Примером такой модели является файловая структура.

 

Сетевая модель данных

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

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

нахождение  конкретной записи в наборе; 

создание  новой записи; 

уничтожение записи; 

модифицирование записи. 

2 . операции навигации: 

переход от предка к потомку по некоторой  связи; 

переход к следующему потомку в некоторой  связи; 

переход от потомка к предку по некоторой  связи; 

включение в связь; 

исключение  из связи; 

перестановка  в другую связь и т.д. 

Сетевая модель данных включала язык определения данных (Data Definition Language, DDL) и язык манипулирования данными (Data Manipulation Language, DML) – формальные языки, предназначенные для определения и манипулирования содержимым базы данных. Предложенное разграничение функций между различными типами языков в системах управления базами данных привело к выделению языков управления транзакциями, языков манипулирования схемой и других групп языков. В сетевых БД, в отличие от иерархических, нет необходимости в корневой записи, поскольку между типами записей могут быть созданы наборы без искусственных ограничений, свойственных иерархии. Однако здесь, как и в иерархических БД, ассоциации поддерживаются с помощью физических указателей. Примером этой модели является Интернет.

 

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

Реляционная модель данных обеспечивает ряд важных возможностей, которые делают управление БД и их использование относительно легким, устойчивым по отношению к ошибкам и предсказуемым. Она описывает данные с их естественной структурой, не добавляя каких-либо дополнительных структур, необходимых для машинного представления или для целей реализации; обеспечивает математическую основу для интерпретации выводимости, избыточности и непротиворечивости отношений; обеспечивает независимость данных от их физического представления, от связей между данными и от соображений реализации, связанных с эффективностью и подобными заботами. Главным элементом в реляционной модели является отношение. Для большинства людей обычной визуализацией отношения служит "таблица". Таблица, как известно, имеет строки и столбцы. Столбцы отношения соответствуют "элементам данных" каждой записи, которая представляется строкой отношения. Важное различие между отношением и таблицей (в том виде, как она реализована в большинстве поставляемых реляционных СУБД) заключается в том, что отношение не может иметь дубликатов кортежей (т.е. записей в файле), в то время как для таблиц допускается возможность содержать дубликаты строк.

Реляционная модель данных (РМД) некоторой  предметной области представляет собой  набор отношений, изменяющихся во времени. При создании информационной системы  совокупность отношений позволяет  хранить данные об объектах предметной области и моделировать связи  между ними.

Разработчики приложений на основе иерархической или сетевой БД обладают контролем над тем, каким  образом были определены связи и  как осуществляется навигация по ним. При создании систем реляционных  БД большая часть этой обработки  заключается в саму реляционную  СУБД. Поэтому оптимизация запросов стала важной функцией (отсутствие которой первоначально ограничивало производительность) коммерческих реляционных  СУБД.

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

 

Постреляционные модели данных

Постреляционная модель данных представляет собой расширенную реляционную модель, снимающую ограничение неделимости данных, хранящихся в записях таблиц. Она допускает многозначные поля – поля, значения которых состоят из подзначений. Набор значений многозначных полей считается самостоятельной таблицей, встроенной в основную таблицу.

Первые публикации, связанные с  объектно-ориентированными базами данных (ООБД) появились в середине 1980-х  годов.  В общей классической постановке объектно-ориентированный подход базируется на концепциях: 

• объекта и идентификатора объекта;  
• атрибутов и методов;  
• классов;  
• иерархии и наследования классов.

Сегодня постреляционные модели данных представлены двумя основными моделями данных: объектно–ориентированной и объектно–реляционной. 

Объектно-ориентированная  модель изначально строилась с учетом ее эволюции и расширения. Эта модель базируется на основных понятиях и методах, разработанных в объектно-ориентированном програмировании (ОПП) и представленных в широко используемых языках объектно-ориентированного программирования, таких как С++, Java и др.

ООСУБД появились  в начале 90-ых и довольно скоро зарекомендовали себя в ряде важных областей, таких как САПР (система автоматизированного проектирования), промышленность программного обеспечения, финансовая сфера, медицина, телекоммуникации, мультимедиа, управляющие информационные системы. Именно в тех областях требовалось найти адекватные средства хранения больших объемов разнообразных данных. ООСУБД широко используются в Internet, где текст изображения, видео, звук – основные составляющие Web-страниц – хранятся в ООСУБД как набор объектов, подготовленный к передаче пользователю.

Принципиальное  отличие реляционных и объектно-ориентированных  БД заключается в следующем: 

- объектно-ориентированная  модель данных оказывается более  адекватной моделью предметной  области реального мира; 

- объекты  вторых можно хранить и использовать  непосредственно, не раскладывая  их по таблицам; 

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

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

В объектно-реляционных  СУБД (ОРСУБД) используется базовая  реляционная модель данных. ОРСУБД являются постепенным развитием  предшествующих им реляционным СУБД. В отличие от ООСУБД переход к  ОРСУБД не требует массового перепрограммирования. Основной язык объектно-ориентированных  БД SQL3. 

Основная  идея объектно-реляционного подхода - это допущение использовать в  качестве атрибутов не только простые, атомарные типы данных, но и составные, абстрактные типы данных, что противоречит классической концепции реляционных  СУБД. 

Объектно-реляционные  системы управления базами данных сочетают в себе преимущества современных  объектно-ориентированных языков программирования с функциями реляционных баз  данных, такими как множественные  виды данных и высокоуровневый, непроцедурный  язык запросов (SQL). 

Сегодня практически  все известные фирмы используют объектные технологии. IBM и Oracle доработали свои СУБД (DB2 и ORACLE8, соответственно, добавив объектную надстройку над реляционным ядром системы, т.е. преобразовали их в объектно-реляционные СУБД. Informix приобрела объектно-реляционную СУБД Illustra и встроила ее в свою СУБД, изменив ее название на универсальный сервер.

 

2 Практическая часть. Вариант №  13.

2.1 Постановка задачи.

Негосударственное образовательное учреждение НОУ  «Креатив» организует творческие курсы для населения города. Проведение теоретических и практических занятий включает почасовую оплату преподавателя и накладные расходы. Дополнительно слушатели также оплачивают стоимость раздаточного материала для проведения практических занятий. Данные для выполнения расчетов представлены в табл. 2.1 и 2.2.

Для решения  задачи необходимо следующее.

1. Построить таблицы по данным, приведенным в табл. 2.1 и 2.2.

2. Рассчитать общую стоимость  каждого вида творческих курсов  без учета раздаточного материала  (табл. 2.1).

3. Рассчитать стоимость раздаточного  материала для проведения практических  занятий по каждому курсу на  одного человека (табл. 2.2).

4. Организовать межтабличные связи  с использованием функций ВПР  или ПРОСМОТР для автоматического  формирования дохода от проведенных  курсов.

5. Сформировать и заполнить таблицу  с данными по расчету дохода  от проведенных курсов с учетом  количества слушателей, стоимости  курсов и стоимости раздаточного  материала по каждому виду  курсов и по всем курсам  в целом (табл. 2.3).

6. Результаты расчетов доходов  по каждому виду проведенных  курсов представить в графическом  виде.

Табл. 2.1. Стоимость курсов на одного человека без учета раздат. материала

№ п/п

Название курса

Теоретический курс, руб.

Практические занятия, руб.

Стоимость курса, руб.

1

«Авторские куклы»

567

3564

 

2

«Роспись текстиля»

438

3328

 

3

«Мыловарение»

522

1145

 

4

«Гончарное дело»

865

3657

 

5

«Ткачество»

741

2987

 

6

«Мозаика, витраж»

659

2564

 

Табл. 2.2. Стоимость раздаточного материала для проведения практических занятий по каждому курсу на одного человека.

№ п/п

Название курса

Количество практических занятий, ч

Стоимость раздаточного материала  
на 1 чел., руб.

Стоимость раздаточного материала  на все практические занятия по курсу  на 1 чел., руб.

1

«Авторские куклы»

16

74

 

2

«Роспись текстиля»

12

66

 

3

«Мыловарение»

8

85

 

4

«Гончарное дело»

16

54

 

5

«Ткачество»

10

65

 

6

«Мозаика, витраж»

12

61

 

 

Табл. 2.3. Доход НОУ «Креатив» от проведенных курсов в текущем месяце.

№ п/п

Название курса

Количество слушателей, чел.

Стоимость курса, на  
1 чел., руб.

Стоимость раздаточного материала  на  
1 чел., руб.

Доход от проведённых курсов, руб.

1

«Авторские куклы»

59

4131

90

 

2

«Роспись текстиля»

48

3766

78

 

3

«Мыловарение»

97

1667

93

 

4

«Гончарное дело»

54

4522

70

 

5

«Ткачество»

49

3728

75

 

6

«Мозаика, витраж»

58

3223

73

 

Итого общий доход от курсов, руб.  

 

 

 

2.2 Компьютерная модель решения  задачи.

2.2.1 Информационная модель решения  задачи.

 

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

1 - Справочник  «Стоимость курсов на одного человека»; 2 - Справочник «Стоимость раздаточного материала»; 3 – Таблица «Табличные данные количество слушателей»; 4 - стоимость курса; 5 – стоимость раздаточного материала; 6 – диаграмма.


2.2.2 Аналитическая модель решения  задачи.

 

Для получения ведомости о доходах  по каждому виду проведенных курсов необходимо рассчитать следующие показатели:

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

Расчеты выполняются по формулам:

Стоимость курса = Теоретическая часть + Практическая часть.

Стоимость раздат. материала на все практические занятия = Количество занятий * Стоимость раздаточного материала на одно занятие.

Доходы по каждому виду проведенных  курсов = (Стоимость курса - Стоимость раздат. материала) * количество слушателей.

 

2.2.3 Технология решения задачи.

 

  1. Запустить табличный процессор MS Excel.
  2. Лист 1 переименовать в лист с названием «Стоимость курсов».
  3. На рабочем листе «Стоимость курсов» создать таблицу «Стоимость курсов на одного человека без учета раздат. материала».
  4. Заполнить таблицу исходными данными. 
  5. Заполнить графу «Стоимость курса» следующим образом:
    • занести в ячейку Е2 формулу = СУММ(C2:D2).
    • размножить введенную в ячейку формулу для остальных ячеек данной графы.
  6. Лист 2 переименовать в лист с названием «Стоимость раздаточного материала».
  7. На рабочем листе «Стоимость раздаточного материала» создать таблицу «Стоимость раздаточного материала для проведения практических занятий по каждому курсу на одного человека».
  8. Заполнить таблицу исходными данными. 
  9. Заполнить графу «Стоимость раздат. материала на все практические занятия» следующим образом:
    • занести в ячейку Е2 формулу =C2*D2.
    • размножить введенную в ячейку формулу для остальных ячеек данной графы.
  10. Лист 3 переименовать в лист с названием «Доход НОУ «Креатив» от проведенных курсов в текущем месяце
  11. Организуем межтабличные связи с использованием функций ПРОСМОТР для автоматического формирования дохода от проведенных курсов:
    • занести в ячейку D2 формулу =ПРОСМОТР(A2;'Стоимость курсов'!$A$2:$A$7;'Стоимость курсов'!$E$2:$E$7).
    • размножить введенную в ячейку формулу для остальных ячеек данной графы.
    • занести в ячейку E2 формулу =ПРОСМОТР(A2;'Стоимость раздат материала'!$A$2:$A$7;'Стоимость раздат материала'!$E$2:$E$7).
    • размножить введенную в ячейку формулу для остальных ячеек данной графы.
  12. Рассчитаем доход от проведенных курсов с учетом количества слушателей:
    • занести в ячейку F2 формулу =(D2-E2)*C2.
    • размножить введенную в ячейку формулу для остальных ячеек
  13. Рассчитаем общий доход от курсов. Для этого в ячейку F8 заносим формулу =СУММ(F2:F7).
  14. Результаты расчетов доходов по каждому виду проведенных курсов представим в графическом виде.

2.3. Результаты компьютерного эксперимента  и их анализ.

Для тестирования правильности решения задачи заполним входные документы и справочники, а затем рассчитаем результаты.

Стоимость курсов на одного человека без учета раздат. материала

№ п/п

Название курса

Теоретический курс, руб.

Практические занятия, руб.

Стоимость курса, руб.

1

«Авторские куклы»

567

3564

4131

2

«Роспись текстиля»

438

3328

3766

3

«Мыловарение»

522

1145

1667

4

«Гончарное дело»

865

3657

4522

5

«Ткачество»

741

2987

3728

6

«Мозаика, витраж»

659

2564

3223


 

Стоимость раздаточного материала  для проведения практических занятий  по каждому курсу на одного человека.

№ п/п

Название курса

Количество практических занятий, ч

Стоимость раздаточного материала  
на 1 чел., руб.

Стоимость раздаточного материала  на все практические занятия по курсу  на 1 чел., руб.

1

«Авторские куклы»

16

74

1184

2

«Роспись текстиля»

12

66

792

3

«Мыловарение»

8

85

680

4

«Гончарное дело»

16

54

864

5

«Ткачество»

10

65

650

6

«Мозаика, витраж»

12

61

732


 

Доход НОУ «Креатив» от проведенных курсов в текущем месяце.

№ п/п

Название курса

Количество слушателей, чел.

Стоимость курса, на  
1 чел., руб.

Стоимость раздаточного материала  на  
1 чел., руб.

Доход от проведённых курсов, руб.

1

«Авторские куклы»

59

4131

1184

173873

2

«Роспись текстиля»

48

3766

792

142752

3

«Мыловарение»

97

1667

680

95739

4

«Гончарное дело»

54

4522

864

197532

5

«Ткачество»

49

3728

650

150822

6

«Мозаика, витраж»

58

3223

732

144478

Итого общий доход от курсов, руб.  

905196


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

Заключение

 

В процессе выполнения данного курсового проекта  были изучены модели компьютерных баз  данных. Построены информационная и  аналитическая модели решения задачи. В среде Microsoft office excel были реализованы таблицы с данными по расчету дохода от проведенных курсов с учетом количества слушателей, стоимости курсов и стоимости раздаточного материала по каждому виду курсов и по всем курсам в целом. Были проведены исследования работы программы.

 

 

Список  литературы:

 

1. Базы данных: проектирование, реализация  и сопровождение / Томас Конолли, Каролин Бегг, Анна Страчан. - М.: Издательский Дом «Вильямс», 2000.

2. Microsoft Excel 2010. Библия пользователя / Джон Уокенбах. - М.: Диалектика, 2011.

3. Базы данных. Модели и языки  / С. Д. Кузнецов. - М.: Бином-Пресс, 2008.

Модели компьютерных баз данных