Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение




НазваниеБаталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение
страница14/18
Дата30.09.2012
Размер2.08 Mb.
ТипУчебное пособие
1   ...   10   11   12   13   14   15   16   17   18

3.1.2. Предметная область и ее сущности


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

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

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

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

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

Примером сущностей могут служить товары, производимые фирмой, оборудование, используемое для этого, специалисты, занятые в производстве и пр. Разумеется, при рассмотрении реальных сущностей в контексте каждой конкретной системы пользователь абстрагируется от их свойств, не представляющих интереса в данном случае. Например, для пользователя не представляет интерес такие свойства сущности «принтер CANON BLP 2900» как запах, цвет упаковки, разработчик дизайна и пр., зато интересуют такие свойства как цена, модель, реквизиты поставщика и др. Признание какого-либо свойства представляющим или не представляющим интерес носит относительный характер. Свойства сущности, которые представляют интерес в рамках одной системы, могут, естественно, остаться вне сферы внимания другой предметной области, которой данная сущность также принадлежит.

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

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

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

Первичный ключ – уникальный идентификатор сущности - атрибут, однозначно определяющий экземпляр сущности.

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

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

Связи между типами сущностей могут быть любой размерности (арности). На практике наряду с n-арными (n > 2) связями весьма часто используются бинарные, устанавливающие различные виды соответствия между сущностями «связанных» типов, - «одна к одной» (1:1), «одна ко многим» (1:N), «многие ко многим» (M:N).

Связь «одна к одной» (1:1) – это связь между сущностями предметной области, при которой в каждый момент времени одному экземпляру сущности А соответствует 1 или 0 экземпляров сущности В:




Например,




Комплектующие на предприятие поступают, каждый вид от своего поставщика.

Связь «одна ко многим» (1: N) - это связь между сущностями предметной области, при которой в каждый момент времени одному экземпляру сущности А соответствует 0, 1 или несколько сущности В.




Например,




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

Так как между двумя сущностями возможны связи в обоих направлениях, то существует еще два типа связи многие-к-одной (N:1) и многие-ко-многим (М:N), которые можно представить аналогично вышеописанному.

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

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

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

Ограничения целостности могут быть явными, т.е. сформулированными в виде некоторых утверждений, либо неявными, внутренне присущими предметной области и тем самым не требующими явного выражения. Явные ограничения обычно выражаются в неких правилах на значение данных, формат представления данных или необходимость наличия того или иного атрибута у сущности. Например, год реализации товара должен выражаться числом, состоящим из 4-х знаков, атрибут «Марка товара» сущности «Товары» должен быть всегда указан и т.д. Неявные ограничения обычно выражают какие-либо изначально существующие особенности предметной области. Например, если предприятие не производит комплектующих, а только выполняет сборку изделий, то в модель предметной области должна быть включена сущность «Поставщики» и сущность «Товары» обязана быть связана с сущностью «Поставщики».

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

3.1.2. Понятие базы данных


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

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

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

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

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

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

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

Пользователями системы базы данных являются, прежде всего, специалисты предметной области, выступающие в роли потребителей и/или источников данных, содержащихся в базе данных. Их называют конечными пользователями системы базы данных. Кроме того, в качестве пользователей могут рассматриваться различные прикладные программы или программные комплексы, оперирующие данными, содержащимися в базе данных. Такие программные средства называют приложениями системы базы данных. Конечные пользователи взаимодействуют с системой базы данных с помощью пользовательских интерфейсов СУБД. Что касается приложений, они получают доступ к базе данных, взаимодействуя с СУБД через ее интерфейсы прикладного программирования.

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

3.1.3. Классификация баз данных


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

По типу хранимой информации выделяют фактографические, документальные, лексикографические базы данных. Фактографические базы данных хранят факты, представленные данными фиксированной структуры, например экономические показатели. Для разработки таких баз данных, как правило, используются СУБД. Документальные базы данных хранят документы, т.е. данные неопределенной или переменной структуры и бывают полнотекстовыми или библиографическо-реферативные. Лексикографические базы данных – это классификаторы, кодификаторы, тезаурусы и т.д., которые обычно используются вместе с документальными и фактографическими базами данных.

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

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

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

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

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

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

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

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

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

3.1.4. Модели данных


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

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

Физически понятию структура соответствует запись данных. Запись - это упорядоченная в соответствии с характером взаимосвязей совокупность полей (элементов) данных, размещаемых в памяти в соответствии с их типом. Поле представляет собой минимальную адресуемую (идентифицируемую) часть памяти – единицу данных, на которую можно ссылаться при обращении к данным. Известны следующие структуры данных:

  • линейные структуры: массивы, последовательности и таблицы.

  • нелинейные структуры: списки, деревья и сети.

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

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

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


Графовые модели

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

Иерархическая модель данных использует представление предметной области базы данных в форме иерархического дерева, узлы которого связаны по вертикали отношением «предок - потомок». Узел – это совокупность атрибутов данных, описывающих некоторый объект.


Отдел


Отд_Номер

Отд_Штаты

Отд_Зарп

Нач_Номер

Нач_Имя

Нач_Телеф

Сотр_Номер

Сотр_Имя

Сотр_Зарп

Начальник

Сотрудник

Рис. 3.1. Пример схемы иерархической базы данных


Здесь "Отдел" является предком для "Начальник" и "Сотрудники", а "Начальник" и "Сотрудники" - потомки "Отдел". Между типами записи поддерживаются связи.


База данных с такой схемой могла бы выглядеть следующим образом:





Рис 3.2. Вид иерархической базы данных (в разрезе одного экземпляра дерева)


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

Преимущества иерархической модели заключаются в следующем:

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

  • быстродействие. В СУБД отношения «предок - потомок» реализованы в виде физических указателей из одной записи на другую, вследствие чего перемещение по базе данных происходило быстро. Поскольку структура данных отличалась простотой, СУБД могла размещать записи предков и потомков на диске друг рядом с другом, что позволяло свести к минимуму количество операций записи-чтения.

Одной из наиболее популярных иерархических СУБД была Information Management System (IMS) компании IBM, появившаяся в 1968 г. Однако работа с иерархическими базами данных создает существенные проблемы с переходом как на новую технологию баз данных, так и на новую технику.

Сетевая модель данных - модификация иерархической модели, в которой одна запись могла участвовать в нескольких отношениях «предок - потомок». В сетевой модели такие отношения называются множествами. В 70-е гг. сетевая модель была реализована в таких продуктах, как IDMS компании Cullinet, Total компании Cincom, которые приобрели большую популярность. Сетевые базы данных обладали рядом преимуществ:

  • гибкость. Множественные отношения «предок - потомок» позволяют сетевой базе данных хранить данные, структура которых сложнее обычной иерархии;

  • стандартизация;

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







Рис.3.3. Пример простой сетевой схемы базы данных


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

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

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

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

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



Отд_Номер

Рис. 3.4. Пример схемы реляционной базы данных


В отличие от иерархических и сетевых моделей данных в реляционной модели:

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

  • операции над объектами базы данных имеют теоретико-множественный характер. Каждая операция манипулирования данными в такой модели обрабатывает множество строк таблицы, дает возможность пользователям формулировать их запросы более компактно, в терминах более крупных конструкций данных.

Объектная модель

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

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




Рис. 3.5. Пример представления объекта в объектной базе данных


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

Популярность объектного подхода в области баз данных в значительной мере объясняется

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

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





Рис.3.6. Описание объекта «Сотрудник» с учетом наследования свойств

и методов объекта «Отдел»


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

Поскольку объектные СУБД отличаются высоким быстродействием, надежностью, представляют разнообразнейший программный интерфейс для разработчиков, они широко используются в телекоммуникациях, различных аспектах автоматизации предприятия, издательском деле, геоинформационных проектах. Немаловажное значение имеет также возможность интегрировать объектные технологии в Web-пространство. Очень хорошо объектные СУБД подходят для решения задач построения распределенных вычислительных систем, в том числе с обеспечением доступа как через локальную сеть, так и для удаленных пользователей в режиме реального времени. Примером объектных СУБД могут служить ONTOS, Jasmine, ORACLE, ODB-Jupiter.

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

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


Подавляющее количество современных баз данных построено на реляционной модели данных. Такие базы данных называются реляционными. Существует ряд версий реляционной модели данных. В отличие от других ее версий модель, предложенная в 1969 г. Эдгаром Коддом (Е. Codd), сотрудником исследовательского центра компании IBM в Сан-Хосе (Калифорния), получила название базовой реляционной модели. Именно эта модель стала основой коммерческих реляционных СУБД. Базовая реляционная модель данных основана на математическом понятии отношения (от англ. relation, откуда и происходит название модели).

Эдгар Кодд, американский математик, родился в 1923 году в Портленде (Англия). Посещал Оксфордский университет, где специализировался в области математики и химии, а затем во время Второй мировой войны служил в Королевских военно-воздушных силах. После войны работал в Нью-Йорке математиком-программистом в IBM. Первый проект Кодда состоял в том, чтобы помочь построить один из первых компьютеров - электронный калькулятор с селективной последовательностью, про который известно, что он занял два этажа в офисном здании в центре города.

После получения в середине 1960-х докторантуры по информатике в университете Мичигана перешёл в лабораторию IBM по разработкам в Сан-Хосе, штата Калифорния, где начал работать над реляционной моделью организации данных -  моделью, от которой очень сильно зависела математика.

Теория Кодда не была немедленно принята IBM. К этому времени компания вложила значительные средства в иерархическую систему баз данных, названную системой управления информацией (Information Management System, IMS), поэтому решать все вопросы о том, как далее разрабатывать идеи Кодда, пришлось другим компаниям и предпринимателям. Главным в их числе был Ларри Эллисон, который c партнерами в 1977 году произвел на свет первую в мире промышленно доступную систему управления реляционными базами данных и запустили новую компанию, которая со временем стала называться Oracle. 

Хотя Кодд оставался связанным с IBM до начала 1980-ых, помимо этого он также запустил в сотрудничестве со своим постоянным соавтором Крисом Дейтом консультационную компанию, и продолжил исследования и издание статей по тематике нормализации данных, аналитических исследований и моделирования данных вплоть до своей смерти, которая последовала в 2003 году.

Реляционная модель данных – модель данных, основанная на математическом понятии отношения и его представления в виде таблицы.

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

Э.Кодд предложил использовать для обработки данных аппарат теории множеств (объединение, пересечение, разность, декартово произведение), опирающийся на реляционную алгебру, и реляционное исчисление. Благодаря простоте и естественности используемых в ней структур данных и операций манипулирования данными, полной независимости от среды хранения данных, поддержке виртуальных, а не физических связей между данными (на основе значений данных, а не указателей), существованию ее строгого формального определения реляционная модель позволила сформировать развитую математическую теорию реляционных баз данных. СУБД, поддерживающие реляционную модель, заняли к концу 1980-х годов доминирующее положение среди инструментальных средств разработки систем баз данных. Примером реляционных СУБД могут служить DВase, Paradox, FoxPro, MS Access и т.д.

Основные понятия реляционной базы данных

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

Основными понятиями, с помощью которых определяется реляционная база данных, являются следующие: домен, отношение, кортеж, кардинальность, атрибуты, степень, первичный ключ. Эти понятия представляют специальную терминологию, введенную авторами теоретических основ, однако они имеют и более привычные аналоги (но не во всем эквиваленты!), соответствие которых приведено в табл. 3.1.

Таблица 3.1


Домен

Совокупность допустимых значений

Кортеж

Строка

Кардинальность (мощность)

Количество строк в таблице

Атрибут

Поле, столбец таблицы

Степень отношения

Количество полей

Первичный ключ

Уникальный идентификатор

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

Домен отношения – множество атомарных значений одного и того же типа.

Например, домен марок товаров, домен моделей устройств, домен фамилий сотрудников, домен номеров рейсов и т.д. (рис. 3.7).

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

Заголовок состоит из фиксированного множества данных (PK, FIO, ..., Chair), определяющих домены. Тело состоит из меняющегося во времени множества кортежей,, состоящих свою очередь из множества пар данное-значение.

Кортеж отношения – множество пар данное-значение, определяющих экземпляр сущности.

Степень отношения – это количество его данных, определяющих домены.

Отношение степени один называют унарным, степени два – бинарным, степени три – тренарным, степени n – n-арным. Степень приведенного выше отношения – 5.

Кардинальность отношения – это число его кортежей.

Кардинальность приведенного выше отношения равна 4.




Сотрудники



ФИО

Год рождения

Должность

Отдел


Кортежи


Кардинальность

1

Орлов В.В.

1976

Лаборант

1

2

Синицын П.С.

1974

Техник

1

3

Дроздов М.Д.

1959

Инженер

1

4

Львов А.Е.

1965

Инженер

2



Степень отношения



Рис. 3.7. Основные элементы структуры реляционной базы данных

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

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

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

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

Внешний ключ является ссылкой на первичный ключ другой таблицы, связанной с первой. Связи между двумя таблицами в реляционной базе данных - это связи вида 1:1 или 1:N между записями этих таблиц, которые поддерживаются в простейшем случае по критерию равенства значений в соответствующих их ключевых столбцах либо в ключевых столбцах первой таблицы и каких-либо неключевых столбцах второй таблицы.




N 1

Товар

Продажи, р.

Менеджер




Менеджер

Телефон

Отдел

Принтер Canon LBP 2900

124 509

Иванов




Иванов

99-55-34

1

Принтер Hewlett Packard LJ 1100

235 677

Синицын




Петров

45-67-98

2

Принтер Hewlett Packard DJ 400

34 556

Иванов




Синицын

99-56-45

1

Сканер Epson Perfection 2480

56 745

Петров













Сканер Epson Perfection 1200

138 534

Петров














Рис. 3.8. Связь 1:N между таблицами


Ограничения целостности данных

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

1   ...   10   11   12   13   14   15   16   17   18

Похожие:

Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconЛекция 4 Программное
Новые термины и понятия: программа, программное обеспечение, базовое программное обеспечение, системное программное обеспечение,...
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconЛабораторная работа №7 по дисциплине «Прикладное программное обеспечение»
«Прикладное программное обеспечение» для студентов, обучающихся по специальности «Информационные системы и технологии»
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconРабочая программа по дисциплине «Системное и прикладное программное обеспечение» для специальности "Прикладная математика и информатика"
«Системное и прикладное программное обеспечение» для специальности "Прикладная математика и информатика"
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconПрограмма по дисциплине: информатика и применение компьютеров в научных исследованиях (Прикладное программное обеспечение). Продвинутый курс
Информатика и применение компьютеров в научных исследованиях (Прикладное программное обеспечение). Продвинутый курс
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconПрограмма по дисциплине: информатика и применение компьютеров в научных исследованиях (Прикладное программное обеспечение). Продвинутый курс
Информатика и применение компьютеров в научных исследованиях (Прикладное программное обеспечение). Продвинутый курс
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconПрограмма учебной дисциплины «Прикладное программное обеспечение»
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления 040100. 62 «Социология»...
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconПрограмма учебной дисциплины «Прикладное программное обеспечение»
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления 040100. 62 «Социология»...
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconПрограмма дисциплины «Прикладное программное обеспечение» для направления 040100. 62 «Социология»
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления подготовки/специальности...
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconУчебное пособие Липецк 2001 ноу «Липецкий эколого-гуманитарный институт» А. К. Погодаев > В. В. Дозоров Программное обеспечение автоматизированных систем. Разработка приложений баз данных
Программное обеспечение автоматизированных систем. Разработка приложений баз данных: Учебное пособие Липецк: лэги, 2002. 71 с
Баталов С. А., Исхаков З. Ф., Абросимова М. А. Информатика учебное пособие Часть 3 прикладное программное обеспечение iconЛекция Прикладное программное обеспечение
Назначение, состав и классификация прикладного по. Прикладное по общего назначения. Офисные программы. Программы работы с текстовыми...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница