Диплом (1207222), страница 5
Текст из файла (страница 5)
Как результат предыдущих этапов появляется сама база данных. База данных реализована на конкретной программно-аппаратной основе, и выбор этой основы позволяет существенно по24высить скорость работы с базой данных. Например, можно выбирать различныетипы компьютеров, менять количество процессоров, объем оперативной памяти, дисковые подсистемы и т.п. Очень большое значение имеет также настройка СУБД в пределах выбранной программно-аппаратной платформы.Но опять решения, принятые на предыдущем уровне – уровне физического проектирования, определяют границы, в пределах которых можно принимать решения по выбору программно-аппаратной платформы и настройкиСУБД.Таким образом ясно, что решения, принятые на каждом этапе моделирования и разработки базы данных, будут сказываться на дальнейших этапах.
Поэтому особую роль играет принятие правильных решений на ранних этапах моделирования.Атрибут – свойство некоторой сущности. Часто называется полем таблицы.Домен атрибута – множество допустимых значений, которые можетпринимать атрибут.Кортеж – конечное множество взаимосвязанных допустимых значенийатрибутов, которые вместе описывают некоторую сущность (строка таблицы).Отношение – конечное множество кортежей (таблица).Схема отношения – конечное множество атрибутов, определяющих некоторую сущность.
Иными словами, это структура таблицы, состоящей из конкретного набора полей.Проекция – отношение, полученное из заданного путём удаления и (или)перестановки некоторых атрибутов.Функциональная зависимость между атрибутами (множествами атрибутов) X и Y означает, что для любого допустимого набора кортежей в данномотношении: если два кортежа совпадают по значению X, то они совпадают позначению Y. Например, если значение атрибута «Название компании» –Canonical Ltd, то значением атрибута «Штаб-квартира» в таком кортеже всегдабудет Millbank Tower, London, United Kingdom. Обозначение: {X} → {Y}.25Нормальная форма – требование, предъявляемое к структуре таблиц втеории реляционных баз данных для устранения из базы избыточных функциональных зависимостей между атрибутами (полями таблиц).Метод нормальных форм (НФ) состоит в сборе информации о объектахрешения задачи в рамках одного отношения и последующей декомпозиции этого отношения на несколько взаимосвязанных отношений на основе процедурнормализации отношений.Цель нормализации: исключить избыточное дублирование данных, которое является причиной аномалий, возникших при добавлении, редактировании и удалении кортежей (строк таблицы).Аномалией называется такая ситуация в таблице БД, которая приводит кпротиворечию в БД либо существенно усложняет обработку БД.
Причиной является излишнее дублирование данных в таблице, которое вызывается наличием функциональных зависимостей от не ключевых атрибутов.Аномалии модификации проявляются в том, что изменение одних данных может повлечь просмотр всей таблицы и соответствующее изменение некоторых записей таблицы.Аномалии удаления – при удалении какого-либо кортежа из таблицыможет пропасть информация, которая не связана напрямую с удаляемой записью.Аномалии добавления возникают, когда информацию в таблицу нельзяпоместить, пока она не полная, либо вставка записи требует дополнительногопросмотра таблицы.Первая Нормальная Форма (1НФ). Отношение находится в 1НФ, есливсе его атрибуты являются простыми, все используемые домены должны содержать только скалярные значения.
Не должно быть повторений строк в таблице. Согласно определению отношений, любое отношение автоматически уженаходится в 1НФ. Свойства отношений это и будут свойства 1НФ:– в отношении нет одинаковых кортежей;– кортежи не упорядочены;26– атрибуты не упорядочены и различаются по наименованию;– все значения атрибутов атомарны.Вторая нормальная форма (2НФ). Отношение находится во 2НФ, еслионо находится в 1НФ и каждый не ключевой атрибут неприводимо зависит отПервичного Ключа (ПК).Неприводимость означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, от которого можно также вывестиданную функциональную зависимость.Третья нормальная форма (3НФ).
Отношение находится в 3НФ, когданаходится во 2НФ и каждый не ключевой атрибут нетранзитивно зависит отпервичного ключа. Проще говоря, второе правило требует выносить все неключевые поля, содержимое которых может относиться к нескольким записямтаблицы в отдельные таблицы.Нормальная форма Бойса-Кодда (НФБК) (частная форма третьей нормальной формы). Определение 3НФ не совсем подходит для следующих отношений:– отношение имеет две или более потенциальных ключа;– два и более потенциальных ключа являются составными;– они пересекаются, т.е. имеют хотя бы один атрибут.Для отношений, имеющих один потенциальный ключ (первичный),НФБК является 3НФ.Отношение находится в НФБК, когда каждая нетривиальная и неприводимая слева функциональная зависимость обладает потенциальным ключом вкачестве детерминанта.Четвертая нормальная форма (4НФ).
Отношение находится в 4НФ, еслионо находится в НФБК и все нетривиальные многозначные зависимости фактически являются функциональными зависимостями от ее потенциальных ключей.27В отношении R (A, B, C) существует многозначная зависимость R.A →R.B в том и только в том случае, если множество значений B, соответствующеепаре значений A и C, зависит только от A и не зависит от С.Пятая нормальная форма (5НФ). Отношения находятся в 5НФ, если ононаходится в 4НФ и отсутствуют сложные зависимые соединения между атрибутами.Если «Атрибут зависит от «Атрибута_2», а «Атрибут_2» в свою очередьзависит от «Атрибута_3», а «Атрибут_3» зависит от «Атрибута_1», то все триатрибута обязательно входят в один кортеж.Это очень жесткое требование, которое можно выполнить лишь при дополнительных условиях.
На практике трудно найти пример реализации этоготребования в чистом виде.Доменно-ключевая нормальная форма. Переменная отношения находится в ДКНФ тогда и только тогда, когда каждое наложенное на неё ограничениеявляется логическим следствием ограничений доменов и ограничений ключей,наложенных на данную переменную отношения.Ограничение домена – ограничение, предписывающее использовать дляопределённого атрибута значения только из некоторого заданного домена.Ограничение по своей сути является заданием перечня (или логического эквивалента перечня) допустимых значений типа и объявлением о том, что указанный атрибут имеет данный тип.Ограничение ключа – ограничение, утверждающее, что некоторый атрибут или комбинация атрибутов является потенциальным ключом.Любая переменная отношения, находящаяся в ДКНФ, обязательно находится в 5НФ.
Однако не любую переменную отношения можно привести кДКНФ.Шестая нормальная форма (6НФ). Переменная отношения находится вшестой нормальной форме тогда и только тогда, когда она удовлетворяет всемнетривиальным зависимостям соединения. Из определения следует, что переменная находится в 6НФ тогда и только тогда, когда она неприводима, то есть28не может быть подвергнута дальнейшей декомпозиции без потерь. Каждая переменная отношения, которая находится в 6НФ, также находится и в 5НФ.Идея «декомпозиции до конца» выдвигалась до начала исследований вобласти хронологических данных, но не нашла поддержки. Однако для хронологических баз данных максимально возможная декомпозиция позволяет бороться с избыточностью и упрощает поддержание целостности базы данных.Для хронологических баз данных определены U_операторы, которыераспаковывают отношения по указанным атрибутам, выполняют соответствующую операцию и упаковывают полученный результат.
В данном примере соединение проекций отношения должно производится при помощи оператораU_JOIN.Рассматривая структуру данных пекарни «Русский каравай» можно выделить следующие важные наименования атрибутов, необходимых для создания базы данных сайта и соответственно мобильного приложения представленных в таблице 4.Таблица 4 – Структура данныхНаименование атрибутовТип полейIDCounterNameVarchar (30)PriceCurrency – денежный типWeightFloatImageAttachmentКаждому хлебобулочному изделию будет присвоен ID – идентификаторс типом поля counter. Данный тип поля автоматически формирует для каждойновой записи уникальные, последовательно-возрастающие (на 1) целые числаили случайные числа.Помимо идентификатора продукция будет иметь наименование Name стипом поля varchar.
Данный тип поля хранит в себе строки переменной длины.29Следующий атрибут это цена Price с типом поля данных integer. Этоттип поля размещает числовые данные, размер которых определяется, числом,указанным в свойствах полей.Все изделия будут иметь свой вес Weight с типом поля Float и описаниев виде картинки Image с типом поля Attachment.2.2 Потоки данныхДля того чтобы определиться как будут направлены потоки данных вмобильном приложении, необходимо выбрать способ интеграции базы данныхсайта с мобильным приложением. Это позволит конечному пользователю иметьдоступ к ресурсам этого сайта в более удобном виде на мобильном устройстве.Существует два способа соединения базы данных сайта с мобильнымприложением на платформе Android.Первый способ – использование стандартных классов Java.Преимуществом этого способа является производительность и экономичность, поскольку не требуется работа с объектами в формате xml и json, атак же прямая работа с базой данных, это придает гибкость приложению и позволяет вносить изменения гораздо проще, чем во втором способе с использованием xml-страниц, но это также является и недостатком, так как необходимостьменять одну таблицу, приводит к тому, что нужно будет обновлять программына всех использующихся устройствах.Недостатками использования стандартных классов java являются:– вся логика расположена внутри мобильного приложения (это нагружает приложение);– невозможность переноса данного кода и алгоритмов на другую платформу, так как код мобильное приложение жестко привязано к классам java;– нужно уделять большее внимание безопасности передачи данных ит.д.30Второй способ – использование клиент-серверных технологий с помощью создания обработчиков запросов на стороне сервера и обращения к этимфункциям из мобильного приложения.