Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

500_Goncharov_S._A._Informatsionnye_tekhnologii_v_mediaindustrii_Upravlenie_dannymi_

.pdf
Скачиваний:
9
Добавлен:
12.11.2022
Размер:
7.41 Mб
Скачать

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

Задавая отношение над элементами данных, разработчик должен интересоваться тем, какие из атрибутов объекта являются зависимыми.

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

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

– кандидатом. У файла могут быть несколько таких ключей. Рассмотрим пример файла (отношения).

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

№_служащего имя_служащего з/пл №_проекта Дата_окончания

Рисунок 6.9 – Функциональные зависимости файла служащий

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

Приведем простой пример файла, который иллюстрирует данное определение. Файл «Заказы» содержит поля:

№_заказа

 

Шифр товара

{шифр, присвоенный заказанному товару}

Описание

{описание товара}

Количество

{заказанное количество единиц товара}

Первичный ключ этого файла состоит из двух полей №_заказа и Шифр_товара. В одиночку каждое из указанных полей не может быть ключом, так как файл может содержать по несколько записей с одинаковыми

41

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

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

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

В частности, приведем пример, демонстрирующий, как две проекции файла Зоопарки_мира:

Зоопарк

Животное

Зона_обитания

Москва

Кенгуру

Австралия

Москва

Верблюд

Аравия

Стокгольм

Эму

Австралия

Стокгольм

Верблюд

Аравия

proj Зоопарк, Животное(Зоопарки_мира)

proj Животное, Зона_обитания (Зоопарки_мира)

соединяясь, образуют полную декомпозицию файла Зоопарки_мира. С другой стороны, соединение проекций

proj Зоопарк, Зона_обитания (Зоопарки_мира) proj Животное, Зона_обитания (Зоопарки_мира) даст следующий набор записей:

Зоопарк

Животное

Зона_обитания

Москва

Кенгуру

Австралия

Москва

Эму

Австралия

Москва

Верблюд

Аравия

Стокгольм

Кенгуру

Австралия

Стокгольм

Эму

Австралия

Стокгольм

Верблюд

Аравия

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

Москва

Эму

 

Австралия

Стокгольм

Кенгуру

 

Австралия

 

 

42

 

Поэтому соединение этих проекций нельзя получить полную декомпозицию файла Зоопарки_мира.

К основным задачам реляционной теории нормализации относятся:

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

2.Определение правил выбора одной из двух альтернативных возможностей:

хранить файл в его непосредственном виде;

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

Рассмотрим задачу 2.

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

Шифр_товара

Название

№_телефона

АС15

Вектор

3-15-22

ВК79

Флора

4-10-73

ВР28

Гарант

2-17-38

СР12

Вектор

3-15-22

ТА54

Вектор

3-15-22

ТС43

Гарант

2-17-38

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

Проекции proj Шифр_товара, Название (Поставщик) и proj Название, №_телефона (Поставщик), совместно образуют полную декомпозицию. Многократное повторение телефонных номеров в исходном файле – один из примеров дублирования данных.

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

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

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

43

существует такая полная декомпозиция файла, которая образована проекциями, не имеющими общего ключа, то замена исходного файла этой декомпозицией исключает возможность дублирования информации. Сравните, например полную декомпозицию: proj Шифр_товара, №_телефона (Поставщик) и proj Шифр_товара, Название (Постащик) с предложенной ранее.

Решая вопрос о том, что целесообразнее хранить – файл как таковой или его полную декомпозицию, следует принимать в расчет проблему «присоединенных записей». Сначала рассмотрим пример подобной записи, а затем дадим точное определение. Предположим, что в файл Поставщики понадобилось внести телефон новой фирмы Глория 4-47-25, от которой не поступило еще никаких товаров. Так как поле Шифр_товара является ключом, то его нельзя оставлять пустым, иначе эту запись невозможно будет идентифицировать. Поэтому номер телефона в файл поставщики внести не удастся. Однако его можно записать в проекцию proj Название, №_телефона (Поставщики).

Название

№_телефона

Записи,

подобные

последней,

Вектор

3-15-22

называют присоединенными.

 

Гарант

2-17-38

Сформулируем общее определение:

Флора

4-10-73

Пусть R и S – наборы полей файла

Глория

4-47-25

ИФ и выполняется условие ИФ = proj R

(ИФ) join proj S (ИФ). Запись является присоединенной, если она занесена в проекцию proj S (ИФ), но не входит в состав какой – либо записи proj R (ИФ) join proj S (ИФ), поскольку с ней невозможно образовать конкатенацию ни одной из записей проекции proj R (ИФ).

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

Теперь можно сформулировать теорему Хита, которая устанавливает связь между функциональной зависимостью и полной декомпозицией файла. Рассмотрим файл ИФ, в котором выделим три набора полей: H, J и K таких, что каждое поле ИФ принадлежит лишь какому – то одному из этих трех наборов. Теорема Хита: если K функционально зависит от J, то справедливо тождество ИФ = proj H, J (ИФ) join proj J, K (ИФ).

Это означает, что при наличии функциональной зависимости K от J проекции proj H, J (ИФ) и proj J, K (ИФ) образуют полную декомпозицию исходного файла.

Процесс нормализации состоит в переходе от одной нормальной формы к другой. В основе перехода лежит теорема Хита. Рассмотрим поочередно эти формы.

44

преобразуется в

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

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

Ненормализованная

форма

1. Переход от произвольной структуры данных (не являющейся двумерной) к двумерным отношениям или файлам.

1НФ

2. Устранение всех неполных зависимостей полей, не являющихся основными, от возможных ключей.

2НФ

3. Устранение всех транзитивных зависимостей полей, не являющихся

основными, от возможных ключей.

3НФ

Приведение к 2НФ (устранение неполной зависимости). A A

B B

C C D

Приведение к 3НФ (устранение неполной зависимости).

А

преобразуется в

А

В

В

С

 

 

A D

В

С

Рисунок 6.10 – Процесс нормализации

В ряде случаев 2НФ порождает неудобства, поэтому переходят к третьей нормальной форме (3НФ). На этом шаге ликвидируется транзитивная зависимость. Пусть А, В и С – три набора полей файла R. Если при этом обратное соответствие неоднозначно, то есть А не зависит от В, или В не зависит от С, то С транзитивно зависит от А. Транзитивная зависимость устраняется с помощью применения теоремы Хита. Файл представлен в 3НФ,

45

если он удовлетворяет определению 2НФ и ни одно из его неключевых полей не зависит от любого другого неключевого поля.

Например, файл Поставщики с наложенным ограничением на название фирм не находится в 3НФ, но находится во 2НФ.

Таким образом, процесс нормализации состоит их трех шагов, которые представлены на рисунке 6.10.

Это три основных, базовых нормальных формы. Существуют еще несколько видов НФ.

Файл находится в НФ Бойса – Кодда, если любая функциональная зависимость между его полями сводится к полной функциональной зависимости от ключа. Примером файла, который представлен в 3НФ, но не имеет НФБК, может служить файл Сторожа_зоопарков:

Зоопарк

Животное

Сторож

Москва

Кенгуру

Иванов

Москва

Верблюд

Кузнецов

Стокгольм

Эму

Шмидт

Стокгольм

Верблюд

Шмидт

Пара Зоопарк, Животное составляют ключ, от которого поле сторож находится в полной функциональной зависимости. Но из-за того, что поле Зоопарк, входящее в ключ, функционально зависит от поля Сторож, данный файл не находится в НФБК.

Файл представлен в 4НФ, если каждая его полная декомпозиция из двух проекций такова, что обе проекции не содержат общего ключа. Пример файла, который находится в НФБК, но не находится в 4НФ можно сконструировать из двух файлов: Набор_соч (Дата, Город, Страна, №_соч) и Набор_исп (Дата, Город, Страна, №_муз, №_соч). операция соединения выполняется по трем полям: Дата, Город, Страна. Ключевыми полями в новом файле являются Дата, Город, Страна, №_исп, №_соч, так, что он, очевидно, представлен в НФБК. Но он не находится в 4НФ, хотя его проекции образуют полную декомпозицию, они имеют общие поля Дата, Город, Страна, которые составляют часть ключа.

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

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

На практике, файл, приведенный к НФБК, как правило, находится в 5НФ, хотя этот факт всегда следует проверять.

46

Контрольные вопросы к разделу 6

1.Что такое отношение БД?

2.Что такое кортеж?

3.Каковы свойства ключа кортежа?

4.Опишите понятие операции проекции.

5.Опишите понятие операции соединения.

6.Опишите понятие операции выбора.

7.Опишите понятие операции объединения.

8.Опишите понятие операции пересечения.

9.Опишите понятие операции вычитания.

10.Опишите понятие операции деления.

11.Опишите понятие операции умножения.

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

13.Опишите основные принципы нормализации.

14.Что такое первая нормальная форма?

15.Что такое вторая нормальная форма?

16.Что такое третья нормальная форма?

17.Что такое нормальная форма Бойса-Клода?

18.Что такое четвертая нормальная форма?

19.Что такое пятая нормальная форма?

7.Безопасность банков данных

7.1. Основы информационной безопасности

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

Введем основные понятия термина безопасность банков данных. Безопасность - состояние защищенности жизненно важных интересов

личности, общества и государства от внутренних и внешних угроз [15].

 

Информационная безопасность Российской Федерации -

это

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

Также в ряде отечественных [17], [18] и зарубежных [19] стандартов дается описание состояния информационной безопасности.

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

Целостность - свойство ИБ организации сохранять неизменность или обнаруживать факт изменения в своих информационных активах.

47

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

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

Также Федеральным законом № 149-ФЗ от 27 июля 2006 года «Об информации, информационных технологиях и о защите информации» даны понятия о защите информации:

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

1)обеспечение защиты информации от неправомерного доступа, уничтожения, модифицирования, блокирования, копирования, предоставления, распространения, а также от иных неправомерных действий в отношении такой информации;

2)соблюдение конфиденциальности информации ограниченного доступа;

3)реализацию права на доступ к информации.

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

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

4.Обладатель информации, оператор информационной системы в случаях, установленных законодательством Российской Федерации, обязаны обеспечить:

1)предотвращение несанкционированного доступа к информации и (или) передачи ее лицам, не имеющим права на доступ к информации;

2)своевременное обнаружение фактов несанкционированного доступа к информации;

3)предупреждение возможности неблагоприятных последствий нарушения порядка доступа к информации;

4)недопущение воздействия на технические средства обработки информации, в результате которого нарушается их функционирование;

5)возможность незамедлительного восстановления информации, модифицированной или уничтоженной вследствие несанкционированного доступа к ней;

6)постоянный контроль за обеспечением уровня защищенности информации.

5.Информационные системы включают в себя:

48

1)государственные информационные системы - федеральные информационные системы и региональные информационные системы, созданные на основании соответственно федеральных законов, законов субъектов Российской Федерации, на основании правовых актов государственных органов;

2)муниципальные информационные системы, созданные на основании решения органа местного самоуправления;

3)иные информационные системы.

Рисунок 7.1 – Классификация информации в банках данных 5. Требования о защите информации, содержащейся в государственных

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

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

7.1).

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

Конфиденциальную информацию так же можно поделить на различные подклассы (таблица 7.1).

49

Таблица 7.1 – Виды конфиденциальной информации

Вид конфиденциальной Определение (содержание) информации

 

Персональные данные

Сведения

о

фактах,

 

событиях

и

 

 

 

 

обстоятельствах частой жизни гражданина,

 

 

позволяющие

идентифицировать

его

 

 

личность, за исключением сведений,

 

 

подлежащих распространению в средствах

 

 

массовой информации

в

установленном

 

 

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

 

 

 

 

 

Тайна следствия и

Сведения, составляющие тайну следствия и

 

 

судопроизводства

судопроизводства

 

 

 

 

 

 

 

 

Служебная тайна

Служебные сведения, доступ к которым

 

 

 

ограничен органами государственной власти

 

 

в соответствии с Гражданским кодексом

 

 

Российской

Федерации

и

федеральными

 

 

законами.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Профессиональная Сведения, связанные с профессиональной тайна деятельностью, доступ к которым ограничен в соответствии с Конституцией Российской Федерации и федеральными законами (врачебная, нотариальная, адвокатская тайна, тайна переписки, телефонных переговоров, почтовых отправлений, телеграфных и иных сообщений и так

далее).

 

Коммерческая тайна

Сведения,

связанные

с

коммерческой

 

 

 

деятельностью, доступ к которым ограничен

 

 

в соответствии с Гражданским кодексом

 

 

Российской

Федерации

и

федеральными

 

 

законами.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

информации о них.

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

50