Лекции по Базам данных. лекции. Развитие технологий обработки данных
Скачать 0.53 Mb.
|
Классификация банков данных по экономико-организационным признакам. В заключении рассмотрим группу признаков, которая непосредственно связана с банком данных в целом. По условиям предоставления услуг банки данных могут быть бесплатными и платными. Если рассмотреть платные банки данных, то их можно разделить на бесприбыльные и коммерческие. Бесприбыльные банки данных функционируют на принципе самоокупаемости и не ставят своей целью получение прибыли. Эти банки данных представляются какими-либо социально значимыми информационными системами, имеющими широкий круг пользователей, или научными, библиотечными информационными системами Целью создания коммерческих банков данных является получение прибыли от информационной деятельности. Банки данных по форме собственности могут делиться на государственные и негосударственные. По степени доступности различают общедоступные и с ограниченным кругом пользователей. В литературе встречаются и другие аспекты классификации банков данных, но приведенные выше являются наиболее значимыми. Требования к банкам данных. Функции системы управления базами данных Требования к банкам данных позволяют конкурировать между собой только достойным программным продуктам. Особенности банков данных, их организация позволяют сформулировать основные требования, предъявляемые к банкам данных: 1. Адекватность отображения предметной области (полнота, целостность и непротиворечивость данных, актуальность информации, т.е. ее соответствие состоянию объекта на данный момент). 2. Дружелюбность интерфейсов и малое время на освоение системы, особенно для конечных пользователей. 3. Возможность взаимодействия пользователей разных категорий и в разных режимах, обеспечение высокой эффективности доступа для разных приложений. 4. Обеспечение взаимной независимости программ и данных. 5. Обеспечение секретности и конфиденциальности для некоторой части данных; определение групп пользователей и их полномочий. 6. Обеспечение надежности функционирования банков данных; защита данных от случайного и преднамеренного разрушения; возможность быстрого и полного восстановления данных в случае их разрушения; технологичность обработки данных, приемлемые характеристики функционирования банков данных (стоимость обработки, время реакции системы на запросы, требуемые машинные ресурсы и др.). Приведем преимущества банка данных по сравнению с традиционным бумажным методом содержания записей и расставим их по порядку начиная с главного: Низкие трудозатраты при работе. Скорость работы. Применимость (нужная информация доступна в любой момент времени). Компактность. В многопользовательской среде - централизованное управление данными. Рассмотрев требования, предъявляемые к банкам данных и их преимущества теперь рассмотрим основные функции системы управления базой данных как особенно значимого компонента банка данных. Перечислим основные функции системы управления базами данных. Первая функция – определение структуры создаваемой базы данных, ее инициализация и проведение начальной загрузки. Создание структуры базы данных происходит в режиме диалога, причем запрос самой системой управления базой данных у пользователя необходимых данных происходит последовательно. В большей части современных СУБД база данных представляет из себя множество таблиц. Данная функция позволяет описать и создать в памяти структуру таблицы, провести начальную загрузку данных в таблицы. Примеры таких действий для системы управления базой данных MS Access представлены на рисунке 2.2. Рисунок 2.2 – Формирование структуры базы данных в СУБД Access Вторая функция – предоставление пользователям возможности манипулирования данными. К этой функции относится выборка необходимых данных, выполнение вычислений, разработка интерфейса ввода/вывода и визуализация. Возможности системы управления базой данных по предоставлению пользователю возможности манипулирования данными представляются либо на основе использования специального языка программирования, входящего в состав системы управления базой данных, либо с помощью графического интерфейса. В системе управления базой данных MS Access реализация этой функции может быть реализована путем созданием запросов и форм ввода с помощью графического интерфейса (Рис. 2.3). Рисунок 2.3. – Формирование запроса на выборку в системе управления базами данных MS Access Для клиент-серверных архитектур систем управления базами данных существуют специальные средства, позволяющие выполнять запросы, а так же программные средства, позволяющие создавать графический интерфейс пользователя. Третья функция – обеспечение независимости прикладных программ и данных. В данной функции имеется ввиду и логическая и физическая независимость. Система управления базой данных поддерживает два независимых взгляда на базу данных. Поддержание взгляда пользователя и взгляда системы является важнейшим свойством системы управления базой данных. Взгляд пользователя воплощается в логическом представлении данных, и его отражении в прикладных программах. Взгляд системы это физическое представление данных в памяти запоминающего устройства. Логическая независимость данных дает возможность изменять логическое представление базы данных без необходимого изменения физической структуры хранения данных. Изменение логического представления базы данных, относящееся к прикладным программам не требует изменение структуры хранения данных. Физическая независимость данных дает возможность изменять способы организации базы данных в запоминающем устройстве системы и не требовать изменения логического представления данных в прикладных программах. В этом случае изменяя способы организации данных не потребуется изменение прикладных программ. Четвертая функция – защита логической целостности базы данных. Цель данной функции это повышение достоверности данных в базе данных. Когда может быть нарушена достоверности данных в базе данных? При вводе данных в базу данных или при несанкционированных действиях различных процедур обработки данных, получающих и вносящие в базы данных ошибочные или неправильно корректированные данные. Повысить достоверность данных в системе можно путем объявления ограничения целостности. Ограничение целостности занимаются выявлением ошибочных или неправильно корректированных данных. Соответствие вводимых данных их типу, описанному при создании структуры проверяется во всех современных системах управления базами данных. Система не позволит ввести недопустимую дату, не существующее время, не даст возможность ввести символ в поле числового типа, и т.п. В развитых системах ограничения целостности описывает программист, исходя из смыслового содержания задачи, и их проверка осуществляется при каждом последующем обновлении данных. Более подробно разные аспекты логической целостности базы данных будем рассматривать в последующих разделах курса. Пятая функция – защита физической целостности. Во время работы информационной системы, частью которой является база данных, возможны различные сбои. Они могут происходить из-за отключения электропитания и приводить к повреждению носителей информации в системе. При этом дальнейшая работа становится под угрозу из-за нарушения связей между данными. В современных системах управления базами данных имеется целый комплекс мероприятий и средств, для восстановления базы данных. Основное понятие, используемое для восстановления данных, является транзакция. Транзакция – это единица действий, производимых с базой данных. Транзакция может включать в свой состав несколько операторов изменения базы данных. Но при этом есть основное правило транзакции – либо выполняются все операторы транзакции, либо не выполняется ни один. Система управления базой данных ведет журнал транзакций. Рассмотрим необходимость использования транзакций в базах данных на примере проведения банковских операций. Предположим, что база данных используется в некотором банке и один из клиентов желает перевести деньги на счет другого клиента банка. В базе данных хранится информация о количестве денег у каждого из клиентов. Нам необходимо сделать два изменения в базе данных – уменьшить сумму денег на счете одного из клиентов и, соответственно, увеличить сумму денег на другом счете. Надо заметить, что реальный перевод денег в банке представляет собой гораздо более сложный процесс, затрагивающий много таблиц, а возможно, и много баз данных. Однако суть остается та же – нужно либо совершить все действия (увеличить счет одного клиента и уменьшить счет другого), либо не выполнить ни одно из этих действий – основное правило транзакции. Нельзя уменьшить сумму денег на одном счете, но не увеличить сумму денег на другом. Предположим также, что после выполнения первого из действий (уменьшения суммы денег на счете первого клиента) произошел сбой. Например, могла прерваться связь клиентского компьютера с базой данных или на клиентском компьютере мог произойти системный сбой, что привело к перезагрузке операционной системы. Что в этом случае стало с базой данных? Команда на уменьшение денег на счете первого клиента была выполнена, а вторая команда – на увеличение денег на другом счете – нет, что привело бы к противоречивому, неактуальному состоянию базы данных. Использование механизма транзакций позволяет находить решение в этом и подобных случаях. Перед выполнением первого действия выдается команда начала транзакции. В транзакцию включается операция снятия денег на одном счете и увеличения суммы на другом счете наших клиентов. Оператор завершения транзакций обычно называется COMMIT. Поскольку после выполнения первого действия транзакция не была завершена, изменения не будут внесены в базу данных. Изменения вносятся (фиксируются) только после завершения транзакции. До выдачи данного оператора сохранения данных в базе не произойдет. В нашем примере, поскольку оператор фиксации транзакции не был выдан, база данных не изменяется а «откатывается» к первоначальному состоянию – иначе говоря, суммы на счетах клиентов останутся те же, что и были до начала транзакции. Администратор базы данных может отслеживать состояние транзакций и в необходимых случаях вручную «откатывать» транзакции. Кроме того, в очевидных случаях система управления базой данных самостоятельно принимает решение об «откате» транзакции. Бывают транзакции, которые длятся несколько часов или даже несколько дней, а бывают и короткие, как в рассмотренном примере. Увеличение количества разнообразных действий в рамках одной транзакции неминуемо приведет к увеличения занимаемых системных ресурсов. Соответственно желательно делать транзакции по возможности более короткими. В упомянутый выше журнал транзакций заносятся все транзакции – и зафиксированные, и не зафиксированные т.е. завершившиеся «откатом». Ведение журнала транзакций совместно с созданием резервных копий базы данных позволяет достичь высокой надежности, эффективности и восстанавливаемости базы данных. Если предположить, что база данных была испорчена в результате аппаратного сбоя компьютера, на котором был установлен сервер системы управления базой данных. Что в этом случае используется для восстановления базы данных? Для восстановления базы данных, в этом случае используется последняя сделанная резервная копия базы данных и журнал транзакций. Нужно отметить, в этом случае уже учитываются только те транзакции, которые были зафиксированы после создания резервной копии. Почти все современные системы управления базой данных дают возможность администратору восстановить базу данных с помощью резервной копии и журнала транзакций. В таких современных системах в определенный момент базы данных копируется на резервные носители, автоматически создаются резервные копии. Все обращения к базам данных фиксируются программно в журнал изменений. Если база данных повреждена, запускается процедура восстановления, в процессе которой в резервную копию из журнала изменений вносятся все произведенные изменения. Шестая функция – управление полномочиями пользователей на доступ к базе данных. Доступ к данным является самым сложным моментом, который регулируется кроме всего административно и уголовно. Пользователи могут иметь разные полномочия по работе с данными. Некоторые данные должны быть недоступны. Некоторые действия должны быть недоступны определенным пользователям. В системе управления базой данных имеется определенный механизм, задача которого разграничить полномочия пользователей. Это происходит либо с помощью паролей, либо с помощью процедуры описания полномочий. Седьмая функция – синхронизация работы нескольких пользователей. Может возникнуть такая ситуация, когда одновременно несколько пользователей выполняют одновременно операцию с одними и теми же данными. Эта ситуация может привести к нарушению логической целостности данных, поэтому система должна предусматривать меры, не допускающие обновление данных другим пользователям. Обновления не должны производится пока работающий с этими данными пользователь полностью не закончит с ними работать. В этой функции так же есть ключевое понятие и называется оно блокировка. Блокировки необходимы для того, чтобы запретить различным пользователям возможность одновременно работать с базой данных (вносить изменения в базу данных), поскольку это может привести к ошибкам. Этот запрет в системе управления базой данных реализуется установкой блокировки на объекты, которые использует транзакция. Блокировки по типам различают: табличные, страничные, строчные и другие, которые отличаются друг от друга количеством заблокированных записей. Чаще других используется строчная блокировка – при обращении транзакции к одной строке блокируется только эта строка, остальные строки остаются доступными для изменения. Рассмотрим как производится процесс внесения изменений в базу данных. Этот процесс включает следующую последовательность действий. В начале выдается оператор начала транзакции, затем выдается оператор изменения данных, далее система управления базой данных анализирует оператор и пытается установить блокировки, необходимые для его выполнения, в случае успешной блокировки оператор выполняется, затем процесс повторяется для следующего оператора транзакции. После того, как все операторы успешно выполнены внутри транзакции выполняется оператор фиксации транзакции. Система управления базой данных фиксирует изменения, сделанные транзакцией, и снимает блокировки. В случае неуспешного выполнения какого-либо из операторов транзакция «откатывается», данные получают прежние значения, блокировки снимаются. Восьмая функция – управление ресурсами среды хранения. База данных располагается во внешнем запоминающем устройстве. При работе в базе данных заносятся новые данные путем занимания памяти и удаляются данные, при этом память освобождается. Система управления базы данных выделяет ресурсы памяти для новых данных, перераспределяет освободившуюся память, организует ведение очереди запросов к внешней памяти и т.п. Девятая функция – поддержка деятельности системного персонала. Эксплуатация базы данных приводит к ситуации, когда может возникать необходимость изменения параметров системы управления базой данных, выбора новых методов доступа, изменения структуры хранимых данных, а также выполнения ряда других общесистемных действий. Изменения осуществляются в определенных пределах. Система управления базой данных дает возможность выполнения этих и других действий для поддержки деятельности базы данных обслуживающему системному персоналу, называемому администратором базы данных. Назначение и возможности системы управления базами данных MS ACCESS В начальном этапе представления и понимания о базе данных, о ее возможностях, работе системы управления базой данных и приобрести навыки по созданию баз данных, рекомендуется, прежде всего, освоить принципы работы в СУБД Мicrosoft Ассеss (MS Access). Для этого есть обоснование, которое построено преимуществах MS Access: Система управления базой данных Мicrosoft Ассеss является неотъемлемой частью прикладного программного обеспечения Microsoft Office (MS Office), которое имеется в арсенале практически каждого пользователя персонального компьютера. Система управления базой данных Мicrosoft Ассеss является полностью русифицированным программным средством, снабженным очень простой и понятной справочной системой и специальными сервисными средствами разработки баз данных и программных приложений к ним, что делает ее доступной даже в начальном уровне знакомства с процессом разработчики базы данных. Система управления базой данных Мicrosoft Ассеss обладает всеми возможностями, присущими программному обеспечению, позволяющему проектировать базы данных неограниченной сложности и объема. Система управления базой данных Access позволяет создавать базы данных различного объема, с которыми работают в монопольном режиме или режиме коллективного доступа. Определенное лидерство системы управления базой данных Access достигнуть в разработке интерфейса для серверных корпоративных БД под управлением мощных СУБД (типа Microsoft SQL Server, ORACLE и др.). Рассмотрев преимущества Мicrosoft Ассеss перейдем к функциями система управления базой данных Access: преобразование баз данных (файлов .mdb) в форматы предыдущих версий. автоматическое изменение имен объектов баз данных во всех приложениях. условное форматирование, проверка вводимых значений в таблицы базы данных. вложенные таблицы по типу главная – подчиненная в одном окне. изменение макета форм и отчетов (группирование элементов управления). создание статических копий отчетов для их распространения по электронной почте. управление сжатием базы данных при ее сохранении на магнитном диске и др. Система управления базой данных Ассеss содержит много функций для работы в сети Интернет, это: страницы доступа к данным, вывод таблиц, запросов, отчетов в формате НТМL, добавление полей-ссылок на объекты базы данных и Web-компоненты Microsoft Office, в том числе электронные таблицы, диаграммы, динамические сводные таблицы. В современных системах управления базой данных Access усовершенствована функция создания и перехода по гиперссылкам. Система управления базой данных Access поддерживает стандарт доступа к данным ОLЕ DВ, благодаря которому можно создавать полноценные клиент – серверные приложения. Клиентская часть приложений разрабатывается с использованием средств Access, серверная часть – с помощью Microsoft SQL Sеrver. Создан и совершенствуется формат хранимых данных – Мiсrоsоft Aссеss Рrоjеct (файлы с расширением .adp) для серверных баз данных различных система управления базами данных (Мicrosoft Dаta Еngine (МSDЕ), включенный в комплект Office). Ha сервере находятся данные (таблицы), интерфейс с ними поддерживает клиент на рабочей станции. При этом возможно преобразование данных и объектов базы данных (файл формата .MDB) в формат SQL Server либо в новый проект Мicrosoft Aссess (файл формата .АDР). |