Автор работы: Пользователь скрыл имя, 25 Ноября 2009 в 19:04, Не определен
Расчётная работа
Вся информация базы данных хранится в виде таблиц, такая БД носит название реляционной БД.
Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Однако пользователи могут воспринимать такую базу данных как совокупность таблиц.
2.
Строки имеют фиксированное
3.
Строки таблицы обязательно
4.
Столбцам таблицы однозначно
присваиваются имена, и в
5.
Полное информационное
6. При выполнении операций с таблицей ее строки и столбцы можно обрабатывать в любом порядке безотносительно к их информационному содержанию. Этому способствует наличие имен таблиц и их столбцов, а также возможность выделения любой их строки или любого набора строк с указанными признаками.
Логическая структура базы данных определяет:
• таблицы и их имена, также называемые сущностями (entities);
• имена полей, также называемые атрибутами (attributes) каждой таблицы;
• характеристики полей, например уникальность их значения и допустимость значений NULL, а также тип данных, хранимых в поле;
• первичный ключ каждой таблицы — поле (несколько полей) со значениями, уникально идентифицирующими каждую запись в таблице. В таблице также могут существовать другие уникальные поля, но только одно из них рассматривается как уникальный ключ доступа для поиска записей — первичный ключ. В таблице не обязательно должен существовать первичный ключ, однако рекомендуется определять его для каждой таблицы;
• связи между таблицами. Записи в таблице могут зависеть от одной или нескольких записей другой таблицы. Такие отношения между таблицами называются связями. Связь определяется следующим образом: поле или несколько полей одной таблицы, называемое внешним ключом, ссылается на первичный ключ другой таблицы.
Существует три типа связей между таблицами:
один к одному — каждая запись родительской таблицы связана только с одной записью дочерней. Такая связь реализуется путем определения уникального внешнего ключа;
один ко многим — каждая запись родительской таблицы связана с одной или несколькими записями дочерней. Например, один клиент может сделать несколько заказов, однако несколько клиентов не могут сделать один заказ.
многие ко многим — несколько записей одной таблицы связаны с несколькими записями другой. Например, один автор может написать несколько книг и несколько авторов — одну книгу. Подобная связь между двумя таблицами реализуется путем создания третьей таблицы и реализации связи типа «один ко многим» каждой из имеющихся таблиц с промежуточной таблицей.
Нормализация – это разбиение таблицы на две или более, обладающих лучшими свойствами при включении, изменении и удалении данных. Окончательная цель нормализации сводится к получению такого проекта базы данных, в котором каждый факт появляется лишь в одном месте, т.е. исключена избыточность информации. Это делается не столько с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных.
Как указывалось ранее, каждая таблица в реляционной БД удовлетворяет условию, в соответствии с которым в позиции на пересечении каждой строки и столбца таблицы всегда находится единственное атомарное значение, и никогда не может быть множества таких значений. Любая таблица, удовлетворяющая этому условию, называется нормализованной. Фактически, ненормализованные таблицы, т.е. таблицы, содержащие повторяющиеся группы, даже не допускаются в реляционной БД.
Всякая
нормализованная таблица
Таблица находится в первой нормальной форме (1НФ) тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и ни одно из ее ключевых полей не пусто
Таблица находится во второй нормальной форме (2НФ), если она удовлетворяет определению 1НФ и все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом.
Таблица находится в третьей нормальной форме (3НФ), если она удовлетворяет определению 2НФ и не одно из ее неключевых полей не зависит функционально от любого другого неключевого поля.
Таким образом, каждая нормальная форма является в некотором смысле более ограниченной, но и более желательной, чем предшествующая. Это связано с тем, что "(N+1)-я нормальная форма" не обладает некоторыми непривлекательными особенностями, свойственным "N-й нормальной форме". Общий смысл дополнительного условия, налагаемого на (N+1)-ю нормальную форму по отношению к N-й нормальной форме, состоит в исключении этих непривлекательных особенностей.
Теория нормализации основывается на наличии той или иной зависимости между полями таблицы. Определены два вида таких зависимостей: функциональные и многозначные.
Функциональная зависимость. Поле В таблицы функционально зависит от поля А той же таблицы в том и только в том случае, когда в любой заданный момент времени для каждого из различных значений поля А обязательно существует только одно из различных значений поля В. Отметим, что здесь допускается, что поля А и В могут быть составными.
Полная функциональная зависимость. Поле В находится в полной функциональной зависимости от составного поля А, если оно функционально зависит от А и не зависит функционально от любого подмножества поля А.
Многозначная зависимость. Поле А многозначно определяет поле В той же таблицы, если для каждого значения поля А существует хорошо определенное множество соответствующих значений В.
Вот основные преимущества нормализации:
облегчается сортировка и создание индекса, поскольку таблицы стали более компактными;
создается большее число кластерных индексов, поскольку таблиц стало больше;
индексы становятся более компактными;
меньшее число индексов в одной таблице позволяет быстрее выполнять обновления записей;
в таблицах содержится меньше значений NULL и избыточных данных, что повышает компактность базы данных;
уменьшается вероятность конфликтов блокировок таблиц, поскольку блокировать приходится ограниченные наборы данных.
Сложные реляционные соединения, обычно присутствующие в нормализованной базе данных, могут понизить производительность. В качестве примера рассмотрим получение отчета из базы данных регистрации студентов, в котором перечислены аудитории, где читается тот или иной курс. При создании отчета Вам потребуется извлекать имя студента из таблицы Students, коды посещаемых студентом курсов (CourseID) — из таблицы Registrations, код читающего курс лектора (LecturerID) — из таблицы Courses и номер аудитории (Room), где читается курс, — из таблицы Lecturers.
По правилам нормализации, номер аудитории не должен являться значением поля таблицы Courses. В противном случае возможна ситуация, когда данные не будут согласованными. Тем не менее здесь допустимо добавить поле Room в таблицу Courses, чтобы не обращаться к таблице Lecturers для поиска номера аудитории.
Этот случай — типичный пример денормализации — процесса намеренного создания ненормализованной таблицы для повышения производительности и упрощения запросов. Денормализация приемлема, когда при ее применении Вы получаете определенные преимущества. При этом, однако, для обеспечения целостности данных следует предпринять дополнительные меры. В дальнейшем мы рассмотрим использование триггеров для обеспечения целостности данных денормализованных таблиц.
№п/п | Статьи затрат | Затраты, руб. |
1 | Основная заработная плата разработчиков | З осн. |
2 | Дополнительная заработная плата | Здоп. = 0,25 * Зосн. |
3 | Отчисления на социальное страхование. Зсоц | (Зосн+Здоп)*40.5%. |
4 | Амортизационные отчисления Зам | Зам.=Сперв.*(На/100)*Т*фаб/Фд. На - норма амортизационных отчислений обычно 12,5% Т - количество используемых ЭВМ; фаб. - время работы ЭВМ в часах; Фд.о. - действительный годовой фонд времени работы ЭВМ. Примем: Фд.о. = Кол.раб.дн. * Кол.смен * Продолж.смены = 252 дня* 1 смена* 8 ч. = 2016 ч. |
5 | Расходы на электроэнергию | Зэл.эн.=Цэ.*Р*Т*фаб
,где: Р - мощность ЭВМ, используемой при
разработке программы;
Цэ. - цена 1 кВт* ч электроэнергии |
6 | Накладные расходы | Рнакл.=Кн * (Зосн.+Здоп)
где:
Кн - коэффициент накладных расходов. Примем Кн равным 1.1. |
7 | Итого: | Зосн+Здоп+Зсоц+Зам+Зэл.эн+ |
Определим экономическую
эффективность с помощью
На ручную обработку до внедрения ИС затрачивалось Т0чел./ч . При использовании ИС Т1чел./ч . Абсолютный показатель экономической эффективности Тэк составляет:
Тэк
= Т0- Т1
Относительный индекс производительности труда вычисляется по формуле:
J
п.т.= Т1 /Т0
И отражает экономия трудовых затрат.
Рассчитаем стоимостной показатель по формуле 2.3.
Сэк
= С0- С1
С0 – затраты до внедрения ИС. С1 Затраты после внедрения ИС.
Индес стоимости затрат определяется по формуле 2.4
J
ст.затр..= С1 /С0
Срок окупаемости затрат вычисляется по формуле 2.5
, где
З0 – затраты на техническое оборудование;
П0 – затраты на программное обеспечение; Кэф – коэффициент эффективности. Подставим имеющиеся данные в формулу 2.5, получим время окупаемости затрат.
З осн=12 000руб. З доп=0.25*12 000 = 3000
З соц=(12000+3000)*40.5%=6075
З
ам=(20000*(12,5%/100)*1*1000)/
З эл.=1,5*0,450*1*1000=675
Р накл=1,1*(12000+3000)=16500
Итого=12000+3000+6075+12,
Тэк=12-7=5 Jпт=7/12=0,58
Сэк=6000-3000=3000
Jзт.затр=3000/5000=0,6
Ток=((20000+5000)*0,6)/