ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 17.03.2024
Просмотров: 99
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Классификация банков данных по экономико-организационным признакам.
В заключении рассмотрим группу признаков, которая непосредственно связана с банком данных в целом. По условиям предоставления услуг банки данных могут быть бесплатными и платными. Если рассмотреть платные банки данных, то их можно разделить на бесприбыльные и коммерческие. Бесприбыльные банки данных функционируют на принципе самоокупаемости и не ставят своей целью получение прибыли. Эти банки данных представляются какими-либо социально значимыми информационными системами, имеющими широкий круг пользователей, или научными, библиотечными информационными системами Целью создания коммерческих банков данных является получение прибыли от информационной деятельности.
Банки данных по форме собственности могут делиться на государственные и негосударственные.
По степени доступности различают общедоступные и с ограниченным кругом пользователей.
В литературе встречаются и другие аспекты классификации банков данных, но приведенные выше являются наиболее значимыми.
Требования к банкам данных. Функции системы управления базами данных
Требования к банкам данных позволяют конкурировать между собой только достойным программным продуктам. Особенности банков данных, их организация позволяют сформулировать основные требования, предъявляемые к банкам данных:
1. Адекватность отображения предметной области (полнота, целостность и непротиворечивость данных, актуальность информации, т.е. ее соответствие состоянию объекта на данный момент).
2. Дружелюбность интерфейсов и малое время на освоение системы, особенно для конечных пользователей.
3. Возможность взаимодействия пользователей разных категорий и в разных режимах, обеспечение высокой эффективности доступа для разных приложений.
4. Обеспечение взаимной независимости программ и данных.
5. Обеспечение секретности и конфиденциальности для некоторой части данных; определение групп пользователей и их полномочий.
6. Обеспечение надежности функционирования банков данных; защита данных от случайного и преднамеренного разрушения; возможность быстрого и полного восстановления данных в случае их разрушения; технологичность обработки данных, приемлемые характеристики функционирования банков данных (стоимость обработки, время реакции системы на запросы, требуемые машинные ресурсы и др.).
Приведем преимущества банка данных по сравнению с традиционным бумажным методом содержания записей и расставим их по порядку начиная с главного:
Низкие трудозатраты при работе.
Скорость работы.
Применимость (нужная информация доступна в любой момент времени).
Компактность.
В многопользовательской среде - централизованное управление данными.
Рассмотрев требования, предъявляемые к банкам данных и их преимущества теперь рассмотрим основные функции системы управления базой данных как особенно значимого компонента банка данных.
Перечислим основные функции системы управления базами данных.
Первая функция – определение структуры создаваемой базы данных, ее инициализация и проведение начальной загрузки.
Создание структуры базы данных происходит в режиме диалога, причем запрос самой системой управления базой данных у пользователя необходимых данных происходит последовательно. В большей части современных СУБД база данных представляет из себя множество таблиц. Данная функция позволяет описать и создать в памяти структуру таблицы, провести начальную загрузку данных в таблицы. Примеры таких действий для системы управления базой данных MS Access представлены на рисунке 2.2.
Рисунок 2.2 – Формирование структуры базы данных в СУБД Access
Вторая функция – предоставление пользователям возможности манипулирования данными. К этой функции относится выборка необходимых данных, выполнение вычислений, разработка интерфейса ввода/вывода и визуализация.
Возможности системы управления базой данных по предоставлению пользователю возможности манипулирования данными представляются либо на основе использования специального языка программирования, входящего в состав системы управления базой данных, либо с помощью графического интерфейса.
В системе управления базой данных MS Access реализация этой функции может быть реализована путем созданием запросов и форм ввода с помощью графического интерфейса (Рис. 2.3).
Рисунок 2.3. – Формирование запроса на выборку в системе управления базами данных MS Access
Для клиент-серверных архитектур систем управления базами данных существуют специальные средства, позволяющие выполнять запросы, а так же программные средства, позволяющие создавать графический интерфейс пользователя.
Третья функция – обеспечение независимости прикладных программ и данных. В данной функции имеется ввиду и логическая и физическая независимость.
Система управления базой данных поддерживает два независимых взгляда на базу данных. Поддержание взгляда пользователя и взгляда системы является важнейшим свойством системы управления базой данных. Взгляд пользователя воплощается в логическом представлении данных, и его отражении в прикладных программах. Взгляд системы это физическое представление данных в памяти запоминающего устройства. Логическая независимость данных дает возможность изменять логическое представление базы данных без необходимого изменения физической структуры хранения данных. Изменение логического представления базы данных, относящееся к прикладным программам не требует изменение структуры хранения данных. Физическая независимость данных дает возможность изменять способы организации базы данных в запоминающем устройстве системы и не требовать изменения логического представления данных в прикладных программах. В этом случае изменяя способы организации данных не потребуется изменение прикладных программ.
Четвертая функция – защита логической целостности базы данных.
Цель данной функции это повышение достоверности данных в базе данных. Когда может быть нарушена достоверности данных в базе данных? При вводе данных в базу данных или при несанкционированных действиях различных процедур обработки данных, получающих и вносящие в базы данных ошибочные или неправильно корректированные данные. Повысить достоверность данных в системе можно путем объявления ограничения целостности. Ограничение целостности занимаются выявлением ошибочных или неправильно корректированных данных. Соответствие вводимых данных их типу, описанному при создании структуры проверяется во всех современных системах управления базами данных. Система не позволит ввести недопустимую дату, не существующее время, не даст возможность ввести символ в поле числового типа, и т.п. В развитых системах ограничения целостности описывает программист, исходя из смыслового содержания задачи, и их проверка осуществляется при каждом последующем обновлении данных. Более подробно разные аспекты логической целостности базы данных будем рассматривать в последующих разделах курса.
Пятая функция – защита физической целостности.
Во время работы информационной системы, частью которой является база данных, возможны различные сбои. Они могут происходить из-за отключения электропитания и приводить к повреждению носителей информации в системе. При этом дальнейшая работа становится под угрозу из-за нарушения связей между данными. В современных системах управления базами данных имеется целый комплекс мероприятий и средств, для восстановления базы данных. Основное понятие, используемое для восстановления данных, является транзакция. Транзакция – это единица действий, производимых с базой данных. Транзакция может включать в свой состав несколько операторов изменения базы данных. Но при этом есть основное правило транзакции – либо выполняются все операторы транзакции, либо не выполняется ни один. Система управления базой данных ведет журнал транзакций.
Рассмотрим необходимость использования транзакций в базах данных на примере проведения банковских операций. Предположим, что база данных используется в некотором банке и один из клиентов желает перевести деньги на счет другого клиента банка. В базе данных хранится информация о количестве денег у каждого из клиентов. Нам необходимо сделать два изменения в базе данных – уменьшить сумму денег на счете одного из клиентов и, соответственно, увеличить сумму денег на другом счете. Надо заметить, что реальный перевод денег в банке представляет собой гораздо более сложный процесс, затрагивающий много таблиц, а возможно, и много баз данных. Однако суть остается та же – нужно либо совершить все действия (увеличить счет одного клиента и уменьшить счет другого), либо не выполнить ни одно из этих действий – основное правило транзакции. Нельзя уменьшить сумму денег на одном счете, но не увеличить сумму денег на другом. Предположим также, что после выполнения первого из действий (уменьшения суммы денег на счете первого клиента) произошел сбой. Например, могла прерваться связь клиентского компьютера с базой данных или на клиентском компьютере мог произойти системный сбой, что привело к перезагрузке операционной системы. Что в этом случае стало с базой данных? Команда на уменьшение денег на счете первого клиента была выполнена, а вторая команда – на увеличение денег на другом счете – нет, что привело бы к противоречивому, неактуальному состоянию базы данных.
Использование механизма транзакций позволяет находить решение в этом и подобных случаях. Перед выполнением первого действия выдается команда начала транзакции. В транзакцию включается операция снятия денег на одном счете и увеличения суммы на другом счете наших клиентов. Оператор завершения транзакций обычно называется COMMIT. Поскольку после выполнения первого действия транзакция не была завершена, изменения не будут внесены в базу данных. Изменения вносятся (фиксируются) только после завершения транзакции. До выдачи данного оператора сохранения данных в базе не произойдет.
В нашем примере, поскольку оператор фиксации транзакции не был выдан, база данных не изменяется а «откатывается» к первоначальному состоянию – иначе говоря, суммы на счетах клиентов останутся те же, что и были до начала транзакции. Администратор базы данных может отслеживать состояние транзакций и в необходимых случаях вручную «откатывать» транзакции. Кроме того, в очевидных случаях система управления базой данных самостоятельно принимает решение об «откате» транзакции.
Бывают транзакции, которые длятся несколько часов или даже несколько дней, а бывают и короткие, как в рассмотренном примере. Увеличение количества разнообразных действий в рамках одной транзакции неминуемо приведет к увеличения занимаемых системных ресурсов. Соответственно желательно делать транзакции по возможности более короткими. В упомянутый выше журнал транзакций заносятся все транзакции – и зафиксированные, и не зафиксированные т.е. завершившиеся «откатом». Ведение журнала транзакций совместно с созданием резервных копий базы данных позволяет достичь высокой надежности, эффективности и восстанавливаемости базы данных.
Если предположить, что база данных была испорчена в результате аппаратного сбоя компьютера, на котором был установлен сервер системы управления базой данных. Что в этом случае используется для восстановления базы данных? Для восстановления базы данных, в этом случае используется последняя сделанная резервная копия базы данных и журнал транзакций. Нужно отметить, в этом случае уже учитываются только те транзакции, которые были зафиксированы после создания резервной копии. Почти все современные системы управления базой данных дают возможность администратору восстановить базу данных с помощью резервной копии и журнала транзакций. В таких современных системах в определенный момент базы данных копируется на резервные носители, автоматически создаются резервные копии. Все обращения к базам данных фиксируются программно в журнал изменений. Если база данных повреждена, запускается процедура восстановления, в процессе которой в резервную копию из журнала изменений вносятся все произведенные изменения.
Шестая функция – управление полномочиями пользователей на доступ к базе данных.
Доступ к данным является самым сложным моментом, который регулируется кроме всего административно и уголовно. Пользователи могут иметь разные полномочия по работе с данными. Некоторые данные должны быть недоступны. Некоторые действия должны быть недоступны определенным пользователям. В системе управления базой данных имеется определенный механизм, задача которого разграничить полномочия пользователей. Это происходит либо с помощью паролей, либо с помощью процедуры описания полномочий.
Седьмая функция – синхронизация работы нескольких пользователей.