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

ЛИЧНЫЙ КАБИНЕТ 

 

Здравствуйте гость!

 

Логин:

Пароль:

 

Запомнить

 

 

Забыли пароль? Регистрация

Повышение уникальности

Предлагаем нашим посетителям воспользоваться бесплатным программным обеспечением «StudentHelp», которое позволит вам всего за несколько минут, выполнить повышение уникальности любого файла в формате MS Word. После такого повышения уникальности, ваша работа легко пройдете проверку в системах антиплагиат вуз, antiplagiat.ru, etxt.ru или advego.ru. Программа «StudentHelp» работает по уникальной технологии и при повышении уникальности не вставляет в текст скрытых символов, и даже если препод скопирует текст в блокнот – не увидит ни каких отличий от текста в Word файле.

Результат поиска


Наименование:


курсовая работа Иерархические модели данных

Информация:

Тип работы: курсовая работа. Добавлен: 29.04.2012. Сдан: 2011. Страниц: 9. Уникальность по antiplagiat.ru: < 30%

Описание (план):


     Содержание

     Введение

     Исторически сложившееся  развитие вычислительных систем обусловило необходимость хранения в электронном (машиночитаемом) виде все большего количества информации. Одновременно с совершенствованием и дальнейшим развитием вычислительных систем росли  объемы информации, подлежащей обработке и хранению. Сложности, возникшие при решении на практике задач структурированного хранения и эффективной обработки возрастающих объемов информации, стимулировали исследования в соответствующих областях. Задачи хранения и обработки данных были формализованы. Была создана теоретическая база для решения задач такого класса, результатом реализации на практике, которой стали системы, предназначенные для организации обработки, хранения и предоставления доступа к информации. Позже такие системы стали называть системами баз данных.
     Одновременно  с развитием систем баз данных, происходило интенсивное развитие средств вычислительной техники, используемой для работы с большими объемами информации. Вычислительная мощность и, особенно, объемы запоминающих устройств первых вычислительных систем были недостаточны для хранения и обработки информации в объемах, необходимых на практике.
     По  мере развития систем баз данных, менялись принципы организации данных в них: первоначально данные представлялись на основе иерархической, а в последствие сетевой модели. В конце 1970-х – начале 1980-х годов начали появляться первые реляционные продукты.
     Различия  между этими классами моделей  постепенно стираются, причем, видимо, будут появляться другие классы, что вызывается, прежде всего, интенсивными работами в области баз знаний (БЗ) и объектно-ориентированной инфотехнологией. Каждая из указанных моделей обладает характеристиками, делающими ее наиболее удобной для конкретных приложений.
     Целью данной курсовой работы является описание иерархической модели данных.
     Передо  мной были поставлены следующие задачи:
     –дать обзор современному состоянию теории баз данных, основным моделям СУБД, применяемым в ПК;
     –изучить  принципы функционирования и основные возможности иерархической модели данных;
     –рассмотреть  язык описания и манипулирования  данными в иерархической модели данных.
     При написании курсовой работы был произведен комплексный анализ. Основными методами в работе явились методы описания, историко-функциональный и сравнительно-сопоставительный метод.

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

     1. База данных и  модели данных 

     1.1. Задание

     Задание на курсовую работу по дисциплине «Базы данных».
     Студент: Козориз Александр Николаевич.
     Направление: Информатика и вычислительная техника.
     № контракта: 05400100601004
     Тема: Иерархические модели данных. 

     Задание выдано:    
           (число) (подпись)

     1.2. Определение данных и моделей данных

     Похоже, всякая попытка дать четкое определение  термина «данные» не лишена тавтологичности. Рассмотрим несколько таких определений:
     Данные  – это факты, характеризующие  свойства объектов и явлений из некоторой  предметной области. Но что такое факты, как не разнообразные данные?
     Данные  – это информация, предназначенная  к обработке. А информация, в свою очередь – это знания о фактических данных. Данные – это сведения, полученные путем измерения, наблюдения и т.п.
     Данные, хранящиеся в памяти ЭВМ, представляют собой совокупность нулей и единиц (битов). Биты объединяются в последовательности: байты, слова и т.д. Каждому участку  оперативной памяти, который может вместить один байт или слово, присваивается порядковый номер (адрес).
     Какой смысл заключен в данных, какими символами они выражены - буквенными или цифровыми, что означает то или  иное число - все это определяется программой обработки. Все данные необходимые для решения практических задач подразделяются на несколько типов, причем понятие тип связывается не только с представлением данных в адресном пространстве, но и со способом их обработки.
     Любые данные могут быть отнесены к одному из двух типов: основному (простому), форма представления которого определяется архитектурой ЭВМ, или сложному, конструируемому пользователем для решения конкретных задач.
     Данные  простого типа это - символы, числа и  т.п. элементы, дальнейшее дробление  которых не имеет смысла. Из элементарных данных формируются структуры (сложные типы) данных.
     Некоторые структуры:
     Массив (функция с конечной областью определения) - простая совокупность элементов  данных одного типа, средство оперирования группой данных одного типа. Отдельный элемент массива задается индексом. Массив может быть одномерным, двумерным и т.д. Разновидностями одномерных массивов переменной длины являются структуры типа кольцо, стек, очередь и двухсторонняя очередь.
     Запись (декартово произведение) - совокупность элементов данных разного типа. В простейшем случае запись содержит постоянное количество элементов, которые называют полями. Совокупность записей одинаковой структуры называется файлом. (Файлом называют также набор данных во внешней памяти, например, на магнитном диске). Для того, чтобы иметь возможность извлекать из файла отдельные записи, каждой записи присваивают уникальное имя или номер, которое служит ее идентификатором и располагается в отдельном поле. Этот идентификатор называют ключом. 

     
     Рисунок 1.1 Классификация типов данных. 

     Выше  мы рассмотрели несколько типов  структур, являющихся совокупностями элементов данных: массив, дерево, запись. Более сложный тип данных может включать эти структуры в качестве элементов. Например, элементами записи может быть массив, стек, дерево и т.д.
     Существует  большое разнообразие сложных типов  данных, но исследования, проведенные  на большом практическом материале, показали, что среди них можно выделить несколько наиболее общих. Обобщенные структуры называют также моделями данных, т.к. они отражают представление пользователя о данных реального мира.
     Любая модель данных должна содержать три  компоненты:
     -структура данных - описывает точку зрения пользователя на представление данных.
     -набор  допустимых операций, выполняемых  на структуре данных. Модель данных  предполагает, как минимум, наличие  языка определения данных (ЯОД), описывающего  структуру их хранения, и языка манипулирования данными (ЯМД), включающего операции извлечения и модификации данных.
     -ограничения  целостности - механизм поддержания  соответствия данных предметной  области на основе формально  описанных правил. 

     1.2 Понятие БД и  СУБД
     Современные информационные системы характеризуются большими объемами хранимых данных, сложной организацией, необходимостью удовлетворять разнообразные требования многочисленных пользователей. Цель любой информационной системы - обработка данных о реальных объектах, подлежащих изучению для организации и автоматизации управления, например, данных о предприятиях, вузах и т.п. Это возможно, если выполнено структурирование данных - введение соглашений о способах представления данных. Простейший пример структурирования - преобразование данных, записанных в виде текста, в таблицу. Таким образом, при создании хранилищ (баз) данных информация упорядочивается по различным признакам.
     В целом, базу данных можно определить как поименованную совокупность структурированных данных, относящихся к некоторой практической области (предметной области).
     В современных технологиях создание базы данных, ее поддержка и обеспечение  доступа пользователей к ней  осуществляются централизованно с  помощью специального программного обеспечения – системы управления базами данных (СУБД). СУБД – это комплекс программных и языковых средств, необходимых для разработки баз данных, поддержания их в актуальном состоянии и организации поиска в них необходимой информации.
     Понятия база данных - БД (database — DB) и СУБД (Database Management System — DBMS) появились в компьютерном мире в середине 60-х годов, когда ЭВМ начали активно использоваться в управлении и программисты стали переходить от решения отдельных задач к комплексной автоматизации управления, увязывая все задачи в единое целое общей целью. Раньше приходилось вводить и выводить одни и те же данные по многу раз. Например, при управлении предприятием персональные сведения используются в задачах кадрового учета, начисления зарплаты, оперативного планирования и т. д. Естественно ввести эти данные один раз, создав базу данных, и предоставив всем прикладным программам право черпать необходимые сведения из этой базы.
     Преимущества  нового подхода:
     -однократный  ввод данных, что приводит к  резкому сокращению затрат труда;
     -независимость программ от данных, что дает возможность независимо менять те и другие. Допустим, в базе персональных данных появилось поле «гражданство» и исчезла графа «национальность». Раньше пришлось бы переписывать все прикладные программы под новую структуру данных, при наличии СУБД этого делать не нужно, изменятся только программы, непосредственно работающие с этими полями;
     -сокращение  затрат на программирование. Поскольку  многие операции с данными  являются стандартными (ввод, контроль, поиск, защита и т. д.), то вместо того, чтобы программировать их каждый раз, всю работу с данными выносят в одну большую и сложную программу — СУБД. 

     
     Рисунок 1.2 – Создание СУБД. 

     Хорошая СУБД должна обеспечить выполнение ряда базовых функций.
     -Описание  логической структуры базы данных. Для описания данных в любой СУБД имеется специальный язык описания данных — ЯОД (Data Description Language — DDL). При этом описание данных возможно с двух точек зрения:
     • с точки зрения администратора базы данных, владеющего всей информацией обо всех данных, хранящихся в системе. Это описание называется схемой БД;
     • с точки зрения некоторой конкретной задачи, решаемой над СУБД, и нуждающейся  только в части данных. Такое описание называется подсхемой.
     -Манипулирование  данными, то есть выполнение всех операций с данными — ввод, проверка правильности, выборка, составление отчетов. Для описания операций с данными в СУБД имеется язык манипулирования данными — ЯМД (Data Manipulating Language — DML). Этот язык может быть реализован в двух вариантах:
     -в  виде расширения базового языка  программирования (Кобола, Паскаля,  Си) набором библиотечных функций;
     -в  виде самостоятельного ЯМД, который  в этом случае называется языком  запросов.
     Обеспечение целостности БД (database integrity). Целостность (непротиворечивость) данных — это способность данных правильно отражать объект. Нарушения целостности могут быть из-за ошибок человека (например, где-то сменили название объекта, а где-то забыли) или из-за машинных сбоев. Обеспечение целостности данных дается дорогой ценой. В частности, для защиты от машинных сбоев в хороших СУБД ведутся журналы учета всех обращений, по которым можно восстановить данные при авариях.
     Обеспечение многопользовательского доступа (multiuser access). Иногда с одной БД одновременно работают сотни и тысячи пользователей, например, в системах резервирования билетов, крупных банках. СУБД должна навести порядок в многочисленных обращениях, обеспечить в тяжелых этих условиях сохранение целостности БД.
     Защита  данных от несанкционированного доступа. Могут защищаться отдельные поля, записи, блоки данных, для чего используются разнообразные ключи, пароли, шифры и т. п. 

     1.3 Концепция моделей  данных
     Ядром любой базы данных является модель данных, которая представляет собой  структуру данных, соглашения о способах их представления и операций манипулирования ими. Модель данных представляет собой формализованное описание объектов предметной области и взаимосвязей между ними.
     Очевидные требования к модели:
     -Модель должна быть достаточно универсальной, позволяя работать с данными различной структуры и сложности.
     -Модель  должна допускать автоматическую  обработку данных, т.е. должна  быть реализуема программными  средствами.
     -Модель  должна быть наглядной, «прозрачной». Поскольку задача описания структуры  данных средствами выбранной модели возлагается на разработчика (человека), чем сложнее модель – тем труднее избежать ошибок при проектировании.
     Различают три основных типа моделей данных:
     -иерархическая,
     -сетевая,
     -реляционная.
     Иерархическая структура представляет собой совокупность элементов, в которой данные одного уровня подчинены данным другого уровня, а связи между элементами образуют древовидную структуру. В такой структуре исходные элементы порождают другие элементы, причем эти элементы в свою очередь порождают следующие элементы и т.д. Существенно то, что каждый порожденный элемент имеет только одного «родителя». В качестве примера иерархической структуры (рис.1.3) приведена организация хранения информации о музыкальных альбомах группы «Ace of Base». Группа «Ace of Base» может быть подчиненной для объектов более высокого уровня иерархии, например страны, стиля или носителя. 

     
     Рисунок 1.3- Пример иерархической организации  данных 

     Примером  иерархической базы данных может  служить генеалогическое древо  вашей семьи.
     Несмотря  на то, что в атрибутах, описывающих  песню, нет названия альбома, глядя  на дерево, по линиям связи можно  определить принадлежность альбома  группе. Из данной иерархической структуры  можно узнать:
     -в  каком альбоме больше песен;
     -число  альбомов, выпущенных группой;
     -есть  ли в альбомах одинаковые песни  и т.д.
     Существуют  и более сложные – сетевые  – структуры, в которых каждый порожденный элемент может иметь  более одного порождающего элемента. Сетевая модель данных состоит из набора соответствующих связей. На формирование связи особых ограничений не накладывается.
     Пример  схемы простейшей сетевой БД показан  на рис. 1.4. Типы связей здесь обозначены надписями на соединяющих линиях. 

     
     Рисунок 1.4 - Пример сетевой организации данных 

     И сетевые и иерархические структуры можно свести к простым двумерным таблицам.
     Наиболее  удобным и для пользователя, и  для компьютера является представление  данных в виде двумерной таблицы  – подавляющее большинство современных  информационных систем работает именно с такими таблицами. Базы данных, которые состоят из двумерных таблиц, называются реляционными (по-английски «relation» – отношение). Основная идея реляционного подхода состоит в том, чтобы представить произвольную структуру данных в виде простой двумерной таблицы. 

     1.4 Объекты базы данных
      Microsoft Access (MS Access) - одна из наиболее популярных  СУБД. Данная СУБД входит в  широко распространенный интегрированный  пакет фирмы Microsoft - MS Office Pro. MS Access применяется для разработки относительно  небольших информационных систем, содержащих, как правило, не более 50000 записей и функционирующих в локальных вычислительных сетях, объединяющих 1 - 15 компьютеров. MS Access работает в операционной системе Windows. Имеются версии данной СУБД: 2.0 - для Windows 3.1; 7.0 (95), 97, 2000 - для Windows 95, 98, 2000 и Windows NT. Большим преимуществом MS Access является наличие средств разработки информационных систем для пользователей различной квалификации: от начинающих до профессионалов.
     В приложении А показана структура и взаимосвязи основных элементов СУБД MS Access.
     Кратко  охарактеризуем основные структурные  элементы, приведенные на схеме.
     Таблица является основным элементом всякой реляционной базы данных, в том числе и СУБД MS Access. Эти объекты предназначены для хранения данных.
     Запросы служат источниками для построения других запросов, форм и отчетов. Запросы позволяют изменять и анализировать данные. Наиболее распространенный тип запроса - запрос на выборку - представляет собой набор правил, по которым отбираются данные из одной или нескольких связанных таблиц. Результаты выполнения запроса на выборку представляются в виде таблицы.
     Формы - основное средство обработки, анализа  и преобразования данных. Формы используются для:
     -ввода  данных в таблицу;
     -отображения  отобранных данных в заданном виде на экране и при выводе на печать;
     -в  качестве панели управления для  открытия других форм, отчетов,  таблиц, запросов;
     -в  качестве окна диалога.
     Источниками данных для форм служат: таблицы; запросы; данные, заложенные в макете формы. По внешнему виду формы делятся на табличные, ленточные, простые. В простой форме видны поля, относящиеся только к одной записи. Табличная и ленточная формы выводят сразу несколько записей. Ленточная форма обладает более разнообразными возможностями отображения данных по сравнению с табличной.
     Отчеты - это средство для организации  вывода данных на печать. С помощью  отчета имеется возможность вывести  необходимые сведения в нужном виде. Возможен предварительный просмотр отчета перед выводом на печать. Источниками данных для отчетов служат таблицы, запросы, данные, заложенные в макет. Основные элементы управления отчетом такие же, что и у формы.
     Макросы - это набор стандартных инструкций (макрокоманд), позволяющих управлять  элементами базы данных. Примеры макрокоманд: открыть/закрыть таблицу; открыть/закрыть форму; открыть/закрыть запрос; печать; предварительный просмотр; выход и т.д.
     Макросы имеют имена и вызываются к  выполнению при наступлении событий. Например, макрос Autoexec - это набор  инструкций, обрабатываемый при открытии базы данных.
     Макросы являются простым и эффективным  способом автоматизации приложения.
     Модули - это объекты, содержащие программы, написанные на языке Visual Basic for Applications (VBA). Модули позволяют разбить некоторый  процесс на несколько небольших процедур и найти ошибки, которые нельзя было бы найти при использовании макросов.
     В MS Access встречаются два вида модулей: 1) независимые объекты, содержащие функции, вызываемые из любого места  приложения; 2) непосредственно “привязанные” к отдельным формам или объектам для реакции на те или иные происходящие в них изменения (события).
     Модули, в отличие от макросов, применяются  при разработке более сложных  приложений. 
 
 
 
 
 

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

                                                        А               Уровень 1 
 

                       В1                          В2         В3          В4 Уровень 2 

              С1    С2           С3     С4         С5     С6    С7    С8 Уровень 3
     Рисунок 2.1 -Иерархическая структура 

     К основным понятиям иерархической структуры  относятся: уровень, элемент (узел), связь.
     Узел  – это совокупность атрибутов  данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа. Каждый узел на более низком уровне связан только с одним узлом, находящимся на более высоком уровне. Иерархическое дерево имеет только одну вершину (корень дерева), не подчинённую никакой другой вершине и находящуюся на самом верхнем (первом) уровне. Зависимые (подчинённые) узлы находятся на втором, третьем и т.д. уровнях. Количество деревьев в базах данных определяется числом корневых записей.
     Для записи базы данных существует только 1 иерархический путь от корневой записи. Например, как видно на рисунке 2.1 для записи С4 путь проходит через записи А и В3.
     Пример, представленный на рисунке 2.2, иллюстрирует использование иерархической модели базы данных. Для рассматриваемого примера иерархическая структура правомерна, т.к. каждый студент учится в определённой (только одной) группе, которая относится к определённому (только одному) институту. 

                Институт (специальность, название, ректор)
       

     
                                  Группа (номер, староста)
       
 

      Студент (номер  зачётной книжки, фамилия, имя, отчество)
       
 
 

     Рисунок 2.2 - Пример иерархической структуры  бах данных 

     Типичным  представителем СУБД, поддерживаемых данный вид моделей (наиболее известным и распространенным), является Information Management System (IMS) фирмы IBM. Первая версия появилась в 1968 г. и была создана для поддержки лунного проекта «Аполлон» (управление огромного количества деталей, иерархически связанных между собой).
     Рассмотрим  следующую модель данных предприятия (см. рис. 2.3): предприятие состоит  из отделов, в которых работают сотрудники. В каждом отделе может работать несколько  сотрудников, но сотрудник не может  работать более чем в одном  отделе.
     Поэтому, для информационной системы управления персоналом необходимо создать групповое отношение, состоящее из родительской записи ОТДЕЛ (НАИМЕНОВАНИЕ_ОТДЕЛА, ЧИСЛО_РАБОТНИКОВ) и дочерней записи СОТРУДНИК (ФАМИЛИЯ, ДОЛЖНОСТЬ, ОКЛАД). Это отношение показано на рис. (а) (Для простоты полагается, что имеются только две дочерние записи).
     Для автоматизации учета контрактов с заказчиками необходимо создание еще одной иерархической структуры: заказчик - контракты с ним - сотрудники, задействованные в работе над контрактом. Это дерево будет включать записи ЗАКАЗЧИК(НАИМЕНОВАНИЕ_ЗАКАЗЧИКА, АДРЕС), КОНТРАКТ(НОМЕР, ДАТА,СУММА), ИСПОЛНИТЕЛЬ (ФАМИЛИЯ, ДОЛЖНОСТЬ, НАИМЕНОВАНИЕ_ОТДЕЛА) (рис. (b)). 

     
     Рисунок 2.3 - Пример иерархической структуры  бах данных 

     Из  этого примера видны недостатки иерархических БД:
     Частично  дублируется информация между записями СОТРУДНИК и ИСПОЛНИТЕЛЬ (такие  записи называют парными), причем в  иерархической модели данных не предусмотрена поддержка соответствия между парными записями.
     Иерархическая модель реализует отношение между  исходной и дочерней записью по схеме 1:N, то есть одной родительской записи может соответствовать любое  число дочерних. Допустим теперь, что  исполнитель может принимать участие более чем в одном контракте, т.е. возникает связь типа M:N. В этом случае в базу данных необходимо ввести еще одно групповое отношение, в котором ИСПОЛНИТЕЛЬ будет являться исходной записью, а КОНТРАКТ - дочерней (рис. (c)). Таким образом, мы опять вынуждены дублировать информацию. 

     2.2 Сегмент иерархической  модели
     Основными информационными единицами являются сегмент, поле, дерево.
     Поле  данных – наименьшая неделимая поименованная  информационная единица, сегмент (запись) образуется из конкретных значений полей данных, тип записи – набор взаимосвязанных сегментов одного уровня, дерево – набор записей данного типа (таблица).
     Структурные связи определяются подчиненностью, в силу чего сегмент более низкого  уровня называют порожденным, а более высокого уровня - исходным. Сегмент самого верхнего уровня носит название «корневой». Именно через него осуществляется доступ к иерархической БД (точка входа). Экземпляр порожденного сегмента не может существовать в отсутствие экземпляра исходного сегмента. В силу этого положения при удалении экземпляра исходного сегмента удаляются и все экземпляры порожденных сегментов.
     Сегмент (DBTS) -называется записью.
     Тип сегмента – поименованная совокупность типов элементов данных. Экземпляр  сегмента образуется из конкретных значений полей или элементов данных. Каждый тип сегмента в рамках иерархической модели образует некоторый набор однородных записей. Каждый тип сегмента может иметь ключ.
     Древовидная структура (дерево) - это связный неориентированный граф, который не содержит циклов (петель) из замкнутых путей. Обычно при работе с деревом выделяют конкретную вершину, которую определяют как корень дерева, и рассматривают ее особо: в нее не заходит ни одно ребро. В этом случае дерево становится ориентированным. Корневое дерево можно определить следующим образом:
     1) имеется единственная особая  вершина, называемая корнем, в  которую не заходит ни одно  ребро;
     2) во все остальные вершины заходит  только одно ребро, а исходит  произвольное (0, 1, 2, ..., n) количество ребер;
и т.д.................


Перейти к полному тексту работы


Скачать работу с онлайн повышением уникальности до 90% по antiplagiat.ru, etxt.ru или advego.ru


Смотреть полный текст работы бесплатно


Смотреть похожие работы


* Примечание. Уникальность работы указана на дату публикации, текущее значение может отличаться от указанного.