Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Второе направление связано с использованием вычислительной техники для создания, хранения и обработки больших массивов данных. Такие задачи решают информационные системы (ИС). К ним относятся поисковые, справочные, банковские системы, автоматизированные системы управления предприятием.
Для задач первого типа характерны большие объемы вычислительной работы при относительно небольших потребностях в памяти. Задачи второго типа, наоборот, требуют больших объемов внешней памяти при относительно небольших расчетах. Вторая область применения возникла несколько позже первой. Это связано с тем, что на первых этапах внешняя память вычислительных систем была несовершенной, т. е. надежное хранение больших объемов данных не представлялось возможным.
Информационная система представляет собой аппаратно-программный комплекс, обеспечивающий выполнение следующих функций:
• ввод данных об объектах некоторой предметной области;
• хранение и защита данных во внешней памяти вычислительной системы;
• дополнение, удаление, изменение, сортировка и выборка введенных данных;
• и обобщение данных и составление нужных отчетов с предоставлением пользователю удобного интерфейса.
Одной из особенностей информационных систем является то, что объем данных может измеряться миллиардами байт. Поэтому в такой системе данные обязательно должны быть структурированы, чтобы из всего многообразия данных удобно было выбирать только некоторые из них, отвечающие определенным критериям.
Совокупность взаимосвязанных данных называется структурой данных. Если эта структурированная совокупность данных относится к одной предметной области, то говорят о базе данных (БД).
Исторически понятие база данных сложилось как альтернатива файловой организации данных при хранении их на ЭВМ. Понятие базы данных возникло в результате стандартизации и унификации данных, хранящихся на ЭВМ с целью использования для других приложений. При этом описание данных уже не скрыто в обслуживающих их программах, а явным образом декларируется и хранится в самой базе.
Итак, база данных — это реализованная с помощью компьютера информационная структура (модель), отражающая состояние данных и их отношения между собой. Опыт использования баз данных позволяет выделить общий набор их рабочих характеристик:
• полнота — чем полнее база данных, тем вероятнее, что она содержит нужную информацию;
• правильная организация — чем лучше структурирована база данных, тем легче в ней найти необходимые сведения;
• актуальность — база должна постоянно обновляться, т. е. в каждый момент соответствовать состоянию отражаемого ею объекта;
• удобство для использования — база данных должна быть проста и удобна и иметь развитые методы доступа к любой части информации.
Как любой программный продукт, БД обладает собственным жизненным циклом, который в свою очередь определяет жизненный цикл всей информационной системы. Жизненный цикл включает в себя следующие основные этапы:
• планирование разработки БД;
• определение требований к системе;
• сбор и анализ требований пользователей;
• проектирование базы данных:
§ концептуальное проектирование БД;
§ логическое проектирование БД;
• физическое проектирование БД;
• разработка приложений;
• реализация;
• загрузка данных и тестирование;
• эксплуатация и сопровождение.
10.2. СУБД и основные требования к ним
В современной технологии баз данных предполагается, что создание баз данных, их поддержка и обеспечение доступа пользователей к базам осуществляется централизованно с помощью специального программного инструментария — систем управления базами данных (СУБД).
СУБД — это комплекс программных и языковых средств, необходимых для создания баз данных, поддержания их в актуальном состоянии и организации поиска в них необходимой информации.
Основные требования к СУБД.
1. Непротиворечивость данных. Не должно быть такой ситуации, когда заказывается отсутствующий на складе товар или в результате ошибки ввода информация о покупателе в заказе не соответствуем данным картотеки покупателей. Такое требование называется требованием целостности. Целостность базы данных подразумеваем поддержание полной, непротиворечивой и адекватно отражающей предметную область информации.
С требованием целостности данных связано понятие транзакции.
Транзакция — это последовательность операций над БД, рассматриваемых как единое целое (то есть или все, или ничего). На пример, при оформлении заказа на определенный товар в системе нужно выполнить такие операции: регистрацию заказа и резервирование определенного количества товара, а также уменьшение данного товара на складе. Если на любом этапе изменения данных произойдет сбой, то целостность БД будет нарушена. Для предотвращения подобных нарушений вводится транзакция «Оформление заказа», в которой над БД либо должны произвестись все необходимые операции (товар продан, уменьшен его запас на складе), либо должен произойти возврат к исходному состоянию (товар не продан, его количество на складе не изменилось).
2. Актуальность хранимых данных. В любой момент времени информация, содержащаяся в БД, должна быть современной.
3. Многоаспектное использование данных — поступление информации из различных источников в единую БД и возможность ее использования любым отделом предприятия в соответствии с правами доступа и функциями.
4. Возможность модификации системы — возможность ее расширения и модификации данных, а также дополнение новыми функциями без ущерба для системы в целом.
5. Надежность — целостность БД не должна нарушаться при технических сбоях.
6. Скорость доступа — обеспечение быстрого доступа к требуемой информации.
СУБД осуществляют взаимодействие между БД и пользователями системы, а также между БД и прикладными программами, реализующими определенные функции обработки данных.
СУБД обеспечивают надежное хранение больших объемов данных сложной структуры во внешней памяти компьютера и эффективный доступ к ним.
К основным функциям СУБД относятся:
• непосредственное управление данными во внешней и оперативной памяти и обеспечение эффективного доступа к ним в процессе решения задач;
• поддержание целостности данных и управление транзакциями;
• ведение системного журнала изменений в БД для обеспечения восстановления БД после технического или программного сбоя;
• реализация поддержки языка описания данных и языка запросов;
• обеспечение безопасности данных;
• обеспечение параллельного доступа к данным нескольких пользователей.
10.3. Классификация баз данных
По технологии обработки данных БД подразделяются на централизованные и распределенные.
Централизованная БД хранится целиком в памяти одной вычислительной системы. Если система входит в состав сети, то возможен доступ к этой БД других систем.
Распределенная БД состоит из нескольких, возможно пересекающихся или дублирующих друг друга БД, хранимых в памяти разных вычислительных систем, объединенных в сеть.
По способу доступа к данным БД распределяются на локальный и удаленный (сетевой) доступ.
Локальный доступ предполагает, что СУБД обрабатывает БД, которая хранится на той же вычислительной системе.
Удаленный доступ – это обращение к БД, которая хранится на одной из систем, входящих в компьютерную сеть. Удаленный доступ может быть выполнен по принципу файл-сервер или клиент-сервер.
Архитектура файл-сервер предполагает выделение одного из компьютеров сети (сервер) для хранения централизованной БД. Все остальные компьютеры сети (клиенты) исполняют роль рабочих станций, которые копируют требуемую часть централизованной БД в свою память, где и происходит обработка. Однако при большой интенсивности запросов к централизованной БД увеличивается нагрузка на каналы сети, что приводит к снижению производительности ИС в целом.
Архитектура клиент-сервер предполагает, что сервер, выделенный для хранения централизованной БД, дополнительно производит обработку клиентских запросов. Клиенты получают по сети уже обработанные данные. Учитывая широкое распространение БД в самых различных областях, в последнее время архитектура клиент-сервер применяется и на одиночных вычислительных системах. В этом случае клиент-программа, которой понадобились данные из БД, посылает запрос серверу-программе, управляющей ведением БД, на специальном универсальном языке запросов. Сервер пересылает программе данные, являющиеся результатом поиска в БД по ее запросу. Этот способ удобен тем, что программа-клиент не обязана содержать все функции поддержания и ведения БД, этим занимается сервер. В результате упрощается написание программ-клиентов. Кроме того, к серверу может обращаться любое количество клиентов.
10.4. Предметная область и структурные элементы баз данных
При разработке БД на этапе концептуального проектирования подробно рассматривается предметная область, данные, их свойства и связи между ними. При этом применяются две методологии моделирования: семантическая и объектно-ориентированная. При семантическом моделировании главное внимание уделяется структуре данных, объектно-ориентированный подход нацелен на описание поведения объектов данных и способах манипулирования с ними. Сближение этих двух подходов привело к понятию объектно-ориентированных баз данных. Большинство существующих БД используют понятия и идеи объектно-ориентированных БД.
Предметная область баз данных рассматривается как объектная система и имеет следующие составляющие:
• объект;
• средство;
• время;
• связь.
Объект – это то, о чем накапливается информация в БД и что может быть однозначно идентифицировано. Объекты могут быть атомарными и составными. Для составного объекта определяется его внутренняя структура. Каждый объект в текущий момент времени взаимодействует с другими объектами определенным набором средств и связей.
Атрибут – это поименованная характеристика объекта, с помощью которой моделируется какое-то свойство объекта. Каждый объект имеет свои атрибуты, которые могут быть простыми и составными. Простые атрибуты не могут быть разделены на более мелкие компоненты, а остальные могут.
Атрибуты, с помощью которых можно идентифицировать экземпляр объекта, называются ключами. В качестве ключей иногда можно использовать несколько атрибутов, один из которых выбирается в качестве первичного ключа. Идентификацию некоторых объектов приходится осуществлять с помощью составных ключей, которые включают несколько атрибутов.
Объекты могут быть связаны между собой. Существует несколько типов связей, для характеристик которых, так же как и для объектов, можно использовать атрибуты.
Структурными элементами наиболее распространенных баз данных являются поля, записи и файлы. Полем называется элементарная единица логической организации данных, которая имеет имя, тип, длину, точность и соответствует неделимой единице информации – реквизиту. Запись – совокупность логически связанных полей. Файлом называется совокупность экземпляров записей одной структуры (рис. 10.1). Другими словами, файл – это чаще всего таблица, поле – столбец, а запись – строка этой таблицы.


Рис. 4.1. Основные структурные единицы базы данных
10.5. Модели представления данных
Для реализации основных функций в ИС используются различные принципы описания данных. Ядром любой БД является модель представления данных, т. е. их информационная структура. Модель базы данных – это множество структур данных и операций манипулирования с этими структурами. Если БД не содержит никаких внешних данных, в ней все равно имеется информация. Эта информация – структура самой базы. Структура определяет методы занесения данных и хранения их в базе.
Итак, модель данных – это некоторая абстракция, в которой отражаются самые важные аспекты функционирования выделенной предметной области. Описано много разнообразных моделей, используемых в базах данных. Все их можно разделить на три категории:
• объектные модели данных;
• модели данных на основе записей;
• физические модели данных.
Наибольшее распространение получили модели данных на основе записей. В них БД состоит из нескольких записей фиксированного формата и разных типов. Информационные модели данных на основе записей подразделяются на:
1) теоретико-графовые (ТГ):
• иерархические модели;
• сетевые модели;
2) теоретико-множественные (ТМ):
• реляционные модели.
В теоретико-графовых моделях предусматривается одновременная обработка только одиночных объектов данных из БД. Доступ к БД поддерживается созданием соответствующих прикладных программ с собственным интерфейсом. Механизмы доступа к данным и навигации по структуре данных в таких моделях достаточно сложны, особенно в сетевой модели.
Теоретико-множественные модели используют математический аппарат реляционной алгебры (знаковой обработки множеств). Данные в таких БД представлены в виде совокупностей таблиц, над которыми могут выполняться операции, сформулированные в терминах реляционной алгебры.
В иерархической БД существует упорядоченность элементов в записи. Объекты, связанные иерархическими отношениями, образуют ориентированный граф – дерево. Для этой структуры характерна подчиненность объектов нижнего уровня объектам верхнего уровня (рис. 10.2). Иерархическую базу данных образует, например, каталог файлов, хранимых на диске, а дерево каталогов – наглядная демонстрация ее структуры.
Первые системы управления базами данных использовали иерархическую модель данных. Самой известной СУБД, использующей модель данных этого типа, является система фирмы IBM – Information Management System (IMS), первая версия которой появилась в 1968 году.
Основными информационными единицами в иерархической системе данных являются сегмент и поле. Поле данных определяется как наименьшая неделимая единица данных, доступная пользователю. Сегмент образуется из значений полей данных. В иерархической модели вершине графа-дерева соответствует сегмент, а дугам – типы связей «предок-потомок». Каждый сегмент-потомок должен иметь в точности одного предка.


Рис. 10.2. Иерархическая БД
В целом иерархическая БД состоит из упорядоченного набора нескольких экземпляров одного типа дерева. При этом граф-дерево обладает следующими свойствами:
а) имеется только одна вершина графа – корень, в которую не заходит ни одно ребро;
б) в вершины n - го уровня заходит одно ребро (n - 1) - го уровня, исходят из этих вершин ноль, один или несколько порожденных вершин, называемых потомками;
в) единственный проход к порожденной вершине лежит через ее исходную вершину;
г) каждый потомок имеет только одного предка;
д) нет замкнутых петель и циклов;
е) сегмент, у которого нет потомков, называется листовым сегментом.
При работе с древовидной структурой используются два метода доступа ко всем вершинам внутри дерева: прямой порядок обхода дерева (от корне с нисходящим обходом поддеревьев до нужного уровня) и обратный порядок обхода дерева (от n-го уровня с восходящим обходом поддеревьев до корня).
Сетевая БД отличается большей гибкостью, т. к. в ней существует возможность дополнительно к вертикальным иерархическим связям добавить горизонтальные связи. Сетевая структура представляет собой произвольный граф, здесь каждый элемент может быть связан с любым другим элементом (рис. 10.3).


Рис. 10.3. Сетевая БД
Произвольный граф состоит из вершин (узлов), соединенных ребрами. В сетевой модели узлы представляют собой объекты в виде типов записей данных, а ребра – связи между объектами. Основное отличие графовых форм представления данных в сетевой структуре от данных в иерархической структуре состоит в том, что потомок в графе может иметь любое число предков.
Типичным представителем СУБД, использующих сетевую модель данных, является Integrated Database Management System (IDMS) компании Cullinet Software, Inc., предназначенная для использования на машинах фирмы IBM.
Основными типами структур данных в сетевых моделях являются элементы данных, агрегаты данных, записи и наборы (рис. 10.4).


Рис. 10.4. Основные структуры сетевой модели данных
Элемент данных – это наименьшая поименованная информационная единица данных, доступная пользователю.
Агрегат данных – поименованная совокупность элементов данных внутри записи или другого агрегата.
Запись – конечный уровень композиции элементов данных. Каждая запись представляет собой именованную структуру, содержащую один или более элементов данных.
Тип записи – это совокупность логически связанных экземпляров записей. Тип записей моделирует некоторый класс объектов реального мира.
Набор – это поименованная двухуровневая иерархическая структура, содержащая запись владельца и записи членов. Наборы выражают связи между типами записей.
Сетевой граф БД устроен значительно сложнее иерархического и имеет следующие свойства:
• БД может содержать любое количество наборов и записей;
• между двумя типами записей может быть любое количество наборов;
• тип записи может быть владельцем в одних типах наборов и членом в других типах наборов, а может и не быть членом какого-то типа набора;
• только один тип записи может быть владельцем в каждом наборе;
• типы наборов могут образовывать циклическую структуру;
• один и тот же тип записи может быть владельцем нескольких типов наборов и одновременно может быть членом нескольких типов наборов.
Недостатком сетевой модели является сложность ее реализации.
Реляционными (от англ. relation – отношение) являются БД, содержащие информацию, организованную в виде прямоугольных таблиц. Реляционные БД характеризуются простотой структуры данных, удобным для пользователя табличным представлением и возможностью использования формального аппарата алгебры отношений.
Создатель реляционной модели – сотрудник фирмы IBM, английский математик (1923 – 2003 гг.). Одним из основных преимуществ реляционной модели является ее однородность. Все данные рассматриваются как хранимые в таблицах и только в таблицах. Каждая строка такой таблицы имеет один и тот же формат.
Важным понятием реляционных моделей данных является сущность. Сущность – это объект любой природы, данные о котором хранятся в БД.
В настоящее время реляционный подход к построению баз данных наиболее распространен. Этот подход имеет следующие достоинства:
• использование сравнительно небольшого набора абстракций, позволяющих моделировать большинство предметных областей;
• наличие простого математического аппарата, опирающегося на теорию множеств и математическую логику и обеспечивающего теоретический базис реляционного подхода;
• возможность навигации по БД без знания конкретной физической организации данных на внешних носителях.
Основные теоретические результаты реляционного подхода были получены в 70-е годы XX столетия. Большой вклад в развитие реляционной алгебры и нормализации отношений внес . В частности в статье, опубликованной в журнале «Computer Word», он сформулировал двенадцать правил, которым должна соответствовать настоящая реляционная база данных.
Реляционные системы не сразу получили широкое распространение. Даже сейчас не существует такой реляционной БД, в которой поддерживались бы все до единой возможности реляционной технологии. К настоящему времени основными недостатками реляционной технологии являются:
• ограниченность реляционных БД при использовании, например, в системах автоматического проектирования (САПР), в которых используются очень сложные структуры;
• ограниченные возможности адекватного отражения семантики предметной области.
Итак, реляционная БД – это конечный набор отношений. Отношения используются для представления объектов и для представления связей между объектами. Каждое отношение – это двумерная таблица, состоящая из строк и столбцов, причем строки соответствуют записям, а столбцы атрибутам.
Атрибут – это поименованный столбец отношения. Свойства объекта, его характеристики определяются значениями атрибутов.
Хотя понятия «отношение» и «таблица» иногда рассматриваются как синонимы, их следует различать: отношением является не любая таблица, а лишь таблица, обладающая определенными свойствами. Будем в последующем изложении употреблять термин «таблица» с учетом этого замечания.
Каждая реляционная таблица, представляя двумерный массив (см. рис. 10.1), обладает следующими свойствами:
• каждый элемент таблицы – один элемент данных;
• все столбцы однородны, т. е. все элементы в столбце имеют одинаковый тип и длину;
• каждый столбец имеет уникальное имя;
• одинаковые строки в таблице отсутствуют;
• порядок следования строк и столбцов произвольный.
Рассмотрим основные свойства полей БД и используемые типы данных на примере реляционной СУБД Microsoft Access. В ней все поля имеют следующие основные свойства:
• имя поля – определяет обращение к данным этого поля, используется в качестве заголовков столбцов таблиц;
• тип поля – определяет тип данных, содержащихся в данном поле;
• размер поля – задает предельную длину поля (в символах);
• формат поля – определяет способ форматирования данных в адресах памяти, принадлежащих полю;
• значение по умолчанию – это значение вводится в адреса поля автоматически и является средством автоматизации вода данных;
• условие на значение – ограничение, используемое для проверки правильности ввода данных;
• сообщение об ошибке – текстовое сообщение, выдаваемое при попытке ввода в поле ошибочных данных;
• обязательное поле – свойство, определяющее обязательность заполнения данных этого поля;
• индексированное поле – свойство, ускоряющее операции по поиску и сортировке записей и проверяющее записи на наличие дублирования данных.
Так как в разных полях могут храниться данные разного типа, то свойства полей зависят от типа хранимых данных. Таблицы баз данных допускают работу с большим количеством разных типов данных по сравнению с другими программами стандартных Windows-приложений.
Во всех базах данных реализован особый способ сохранения данных, отличный от способа сохранения данных в файловых системах. В части операций, как обычно, участвует операционная система компьютера, но некоторые операции сохранения происходят в обход операционной системы.
Операции изменения структуры базы данных, создание новых таблиц или иных объектов происходят при сохранении файла базы данных, т. е. об этих операциях СУБД предупреждает пользователя. С другой стороны, операции по изменению содержания данных, не затрагивающие структуру базы, выполняются автоматически и без предупреждения. Все изменения, вносимые в таблицы базы, сохраняются на диске без нашего ведома, т. е. происходит работа с жестким диском напрямую, вне операционной системы.
10.6. Нормализация отношений в реляционных базах данных
Отношения в реляционной базе данных представлены в виде таблиц, строки которых соответствуют записям, а столбцы – атрибутам отношений – полям. Поле, каждое значение которого однозначно определяет соответствующую запись, называется простым ключом (ключевым полем). Если записи однозначно определяются значениями нескольких полей, то такая таблица базы данных имеет составной ключ. Чтобы связать две реляционные таблицы, необходимо ключ первой ввести в состав ключа второй таблицы.
Например, рассмотрим БД, состоящую из трех связанных таблиц:
СТУДЕНТ(номер зачетной книжки, Ф., И., О., дата рождения, группа), СЕССИЯ (номер зачётной книжки, оценка1, оценка2,..., оценка п, результаты сдачи сессии), СТИПЕНДИЯ(результаты сдачи сессии, размер стипендии).
Отношения студент и сессия имеют совпадающие ключи (номер зачетной книжки).


Рис. 4.5. Связывание таблиц через ключи
Таблица СЕССИЯ имеет первичный КЛЮЧ (номер зачетной книжки) и содержит внешний ключ (результаты сдачи сессии), который обеспечивает ее связь с таблицей стипендия (рис. 10.5).
В реляционных базах данных определены три типа связей:
• один к одному (1:1) – любая запись в первой таблице может быть связана только с одной записью второй таблицы и наоборот;
• один ко многим (1:М) – любая запись первой таблицы связана с несколькими записями второй, но любая запись во второй таблице связана только с одной записью первой таблицы;
• многие ко многим (М:М) – каждой записи первой таблицы соответствуют несколько записей второй и наоборот. В явном виде эта связь в реляционных БД не поддерживается, но имеются способы ее косвенной организации путем создания дополнительных таблиц.
Одни и те же данные могут группироваться в таблицы различными способами, т. е. возможна организация различных наборов отношений взаимосвязанных информационных объектов. Группировка атрибутов (столбцов) в отношениях (таблицах) должна быть рациональной, их дублирование минимизировано.
В реляционных базах данных отношения (таблицы) содержат как структурную, так и семантическую информацию. Структурная информация связана с объявлением отношений. Семантическая информация выражается множеством известных функциональных зависимостей между атрибутами отношений, имеющимися в схеме.
Таким образом, в отношениях (таблицах) практически всегда присутствуют функциональные зависимости. Для устранения нежелательных функциональных зависимостей между атрибутами (столбцами) Э. Kодд предложил использовать разработанный им процесс нормализации отношений. Это процедура декомпозиции (разложения), при которой данное множество отношений заменяется другим множеством отношений (при этом число их возрастает), являющихся проекциями первых. Другими словами, нормализация – это пошаговый обратимый процесс замены данной схемы отношений другой схемой, в которой отношения имеют более простую и регулярную структуру.
Итак, нормализация отношений – формальный аппарат ограничений на формирование таблиц, который позволяет устранить дублирование, обеспечивает непротиворечивость хранимых в базе данных, уменьшает трудозатраты на ведение БД.
Различают шесть нормальных форм:
1) 1НФ — первую нормальную форму;
2) 2НФ — вторую нормальную форму;
3) 3НФ — третью нормальную форму;
4) НФБК — нормальную форму Бойса –Кодда;
5) 4НФ — четвертую нормальную форму;
6) 5НФ — пятую нормальную форму.
Каждая нормальная форма определяет ограничения на данные:
• 1НФ, 2НФ, 3НФ – ограничивают зависимость не первичных атрибутов от ключей;
• НФБК – ограничивает зависимость первичных атрибутов;
• 4НФ – формирует ограничения на виды многозначных зависимостей;
• 5НФ – вводит другие типы зависимостей: зависимости соединения.
Каждая нормальная форма более высокого уровня предполагает, что анализируемое отношение уже находится в нормальной форме на уровне ниже рассматриваемого. Для реляционных баз данных необходимо, чтобы все отношения базы данных обязательно находились в НФ, однако практически всегда стремятся довести уровень нормализации базы данных хотя бы до 3НФ.
Отношение называется нормализованным или приведенным к первой нормальной форме, если все его атрибуты простые, т. е. неделимы. В противном случае отношение считается ненормализованным и ему соответствует многоуровневая таблица (иерархия) в отличие от однородной табличной структуры нормализованного отношения.
Преобразование отношений к первой нормальной форме может привести к увеличению количества реквизитов (полей) отношения и изменению ключа. Например, отношение СТУДЕНТ (номер зачетной книжки, Ф., И., О., дата рождения, группа) находится в первой нормальной форме. Если бы поля Ф., И., О. были бы объединены в одно, то нормализация отношений состояла бы в фрагментации данного поля. Разработчики БД изначально строят так исходные отношения, чтобы они были в первой нормальной форме.
Один из распространенных подходов приведения к НФ заключается в том, что в процессе преобразований, которое называется выравниванием таблицы, повторяющиеся группы устраняются путем организации дополнительных записей по одной на каждый элемент повторяющейся группы.
Вторая нормальная форма применяется к отношениям с составным ключом, т. е. к таким отношениям, первичный ключ которых состоит из двух или более атрибутов. Отношение, у которого первичный ключ включает только один атрибут, всегда находится во 2НФ.
Для описания второй и третьей нормальных форм требуется ввести понятие о функциональной зависимости полей (атрибутов). Функциональная зависимость полей – это зависимость, при которой в экземпляре информационного объекта определенному значению ключевого поля соответствует только одно значение не ключевого поля. Таким образом, это логическая связь не ключевых полей с общим для них ключом.
В случае составного ключа вводится понятие функционально полной зависимости. Функционально полная зависимость не ключевых полей заключается в том, что каждое не ключевое поле функционально зависит от ключа, но не зависит ни от какой части составного ключа. Отношение будет находиться во второй нормальной форме, если оно находится в первой нормальной форме, и каждое не ключевое поле функционально полно зависит от составного ключа. Так отношение студент находится во второй нормальной форме, т. к. его не ключевые поля функционально зависят от ключа номер зачетной книжки. Отношение сессия, имеющее составной ключ номер зачетной книжки + результаты сдачи сессии находится в первой нормальной форме, но не находится во второй, т. к. поля оценка1, оценка2,..., оценка n не находятся в полной функциональной зависимости от составного ключа, а лишь от его составной части. Для перевода этого отношения во вторую нормальную форму необходимо исключить из него поля оценка1, оценка2,..., оценка n, т. е. исходное отношение надо разбить на два связанных отношения РЕЗУЛЬТАТЫ (номер зачетной книжки, оценка1., оценка2,..., оценка п) И СЕССИЯ(номер зачетной книжки, результаты сдачи сессии). Связь между ними будет осуществляться по полю номер зачетной книжки (рис. 10.6)


Рис. 10.6. Вторая нормальная форма отношений
Понятие третьей нормальной формы связано с понятием транзитивной зависимости. Транзитивная зависимость наблюдается в том случае, если одно из двух описательных полей зависит от ключа, а другое описательное поле зависит от первого поля.
Отношение будет находиться в третьей нормальной форме, если оно находится во второй нормальной форме, и каждое не ключевое поле не транзитивно (т. е. напрямую) зависит от первичного ключа. Отношение студент находится в третьей нормальной форме. Если в состав описательных полей этого информационного объекта добавить фамилию старосты группы – староста, то появится транзитивная зависимость не ключевого поля староста от ключа через не ключевое поле группа.
Для устранения транзитивной зависимости описательных полей необходимо произвести «расщепление» исходного информационного объекта. В результате такого расщепления часть полей удаляется из исходного объекта и включается в состав других, новых информационных объектов: СТУДЕНТ(номер зачетной книжки, Ф., И., О., дата рождения, группа), ГРУППА {группа, староста) (рис. 10.7).


Рис. 10.7. Исключение транзитивной зависимости
Модуль 4. Локальные и глобальные сети ЭВМ
Модульная единица 1. ЛОКАЛЬНЫЕ СЕТИ ЭВМ
11.1. Компьютерная сеть
Компьютерная сеть – совокупность нескольких компьютеров и сетевого оборудования, связанных между собой каналами связи в единую систему для обмена данными и совместного использования ресурсов.
Компьютерные сети предназначены, прежде всего, для решения следующих основных задач:
1) Распределенная обработка данных. Для решения большого класса задач (например, моделирование физических процессов, биологических процессов) вычислительной мощности одного единственного компьютера может быть недостаточно (т. е. процесс решения таких задач будет занимать неприемлемо большое время). В этом случае происходит разбиение одной большой задачи на подзадачи, которые могут выполняться практически независимо друг от друга. Такие подзадачи могут решаться параллельно на различных компьютерах, которые обмениваются между собой результатами решения подзадач, которые, в свою очередь, объединяются для окончательного решения всей исходной задачи. Вопросами распределенной обработки данных занимается, в частности, параллельное программирование.
2) Удаленная обработка данных. Является частным случаем распределенной обработки данных, но предполагает более простое решение. В этом случае решение задачи с компьютера (рабочей станции) обработки данных целиком возлагается на некоторый специально выделенный для этой цели компьютер (сервер приложений). Это позволяет уменьшить стоимость рабочей станции, сосредоточив всю вычислительную мощь только в одном месте – сервере приложений.
3) Распределенное хранение данных. Очень часто хранение информации в одном месте является неприемлемым из-за величины накопленного объема данных или по каким-то иным причинам. В этом случае данные разбиваются и распределяются по вычислительным комплексам сети. Например, в мире накоплен гигантский объем генетических данных. Хранение такого объема данных в одном месте нецелесообразно, потому что затраты на такую систему хранения очень высоки. В качестве другого примера можно привести базу данных всех доменных имен Интернета – она распределена по всему миру. Сосредоточение этой базы в одном месте невозможно, так как не удастся обеспечить приемлемое время обращения к этой базе со стороны пользователей.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |


