LectOS1po12 (1085769), страница 10
Текст из файла (страница 10)
Третий уровень предусматривает наличие двух серверов, выполняющих параллельно одни и те же задачи. Для этого оба сервера соединяются между собой скоростной линией связи с использованием специальных адаптеров. При выходе из строя основного сервера происходит автоматическое переключение на резервный сервер и при этом ЛВС продолжает выполнять ту задачу, при решении которой произошло переключение.
Первый и второй уровни системы отказоустойчивости реализованы в СОС NW, начиная с версий для МП 80286. Третий уровень реализован в специальных версиях для МП 80386.
Система слежения за транзакциями
Транзакцией называется выполнение элементарной целостной операции над данными (добавление, удаление или изменение записи), в течение которой база данных или файловая система находится в неустойчивом состоянии. Каждое изменение базы данных рассматривается как одна транзакция, которая должна либо завершиться успешно, либо совсем не выполняться. Если во время такой модификации произойдет сбой аппаратуры, участвующем в этом процессе, то изменяемые файлы могут быть разрушены. Для повышения надежности СОС NW, начиная с версий для МП 80386, содержит специальную систему отслеживания транзакций. Эта система в случае обнаружения соответствующего сбоя аппаратуры ликвидирует все действия, выполненные незавершенной транзакцией. В этом случае произойдет так называемый откат транзакции.
Обзор средств обеспечения
отказоустойчивости и безопасности работы ЛВС
Перечислим основные причины нарушения отказоустойчивости и безопасности работы ЛВС.
1. Сбои оборудования, вызванные:
1.1. нарушением работы сетевого кабеля,
1.2. отключением электропитания,
1.3. отказом жестких дисков,
1.4. нарушением работы сервера, РС и СА.
2. Некорректная работа ПО, приводящая к потере или порче данных:
2.1. из-за ошибок в сетевом или прикладном ПО,
2.2. из-за заражения сети компьютерными вирусами.
3. Несанкционированный доступ, копирование или изменение информации - случайное или умышленное, следствием чего являются:
3.1. искажение либо уничтожение данных,
3.2. ознакомление посторонних лиц с информацией, составляющей коммерческую или иную тайну.
Прежде всего необходимо отметить, что универсального способа решения перечисленных проблем не существует.
Для наблюдения за поведением сети и фиксации некоторых из перечисленных нарушений служат средства так называемого мониторинга. Программные пакеты этого назначения в реальном масштабе времени наблюдают за действиями прикладных программ и работой сервера, осуществляют защиту от вирусов.
Защита от нарушений, перечисленных в пунктах 1.1 и 1.2, обеспечивается использованием резервных источников питания, например, аккумуляторных батарей, и устройства автоматического переключения с одного источника на другой. Если резервный источник питания обеспечивает малое время работы сети, то при переключении по сигналу от соответствующего датчика должно происходить прерывание программы сервера и включаться соответствующая ветвь СОС для обработки этого прерывания; задачей этой ветви должно являться сохранение на жестком диске текущего состояния ОП для того, чтобы при последующем включении сети можно было продолжить работу с прерванного места, т.е. при этом фактически создается так называемая контрольная точка.
Защита от нарушений, указанных в пункте 1.3, достаточно подробно изложена в предыдущем разделе, но существуют и более тонкие средства, связанные с расщеплением защищаемых данных и записи одного пакета в расщепленном виде на различные диски.
Защита от нарушений, изложенных в пункте 1.4, для серверов также была рассмотрена в предыдущем разделе.
Защита от нарушений, указанных в пунктах 2.1 и 2.2, в определенной степени обеспечивается средствами мониторинга, кратко рассмотренными в этом разделе. Кроме того, для защиты от вирусов можно использовать такие меры как использование специальных пакетов программ для поиска, локализации и уничтожения вирусов, а также там, где это возможно, использование бездисковых РС, при этом загрузка ОС при включении сети в них производится из сервера.
Защита от нарушений, изложенных в пунктах 3.1 и 3.2, организуется с помощью различных тенических и организационных средств: использованием паролей, пластиковых карточек с встроенной микросхемой, криптографических методов защиты, контроля доступа, надежного хранения архивной информации и т.д.
Единого рецепта, гарантирующего 100%-ную сохранность данных и и надежную работу сети, не существует. Однако создание комплексной, продуманной концепции безопасности, учитывающей специфику конкретной организации, поможет свести риск потери ценнейшей информации к минимуму.
Лекция N 10
Базы и банки данных
Появление недорогих ЭВМ, имеющих в своем составе устройства внешней памяти большой емкости с достаточно малым временем доступа к хранимым в них данным, стимулировало значительный рост научно-исследовательских и опытно-конструкторских работ, связанных с базами и банками данных.
Банк данных состоит из следующих основных компонентов: базы данных (БД), системы управления БД (СУБД), администратора БД (АБД), словаря данных (СД), информационной вычислительной системы (ИВС), состоящей из технических средств (ТС) и операционной системы (ОС), и обслуживающего персонала (ОбП) (см. рис.1). В англоязычной литературе вместо термина "банк данных" используют термин "система баз данных", но большинство наших специалистов используют термин "банк данных", считая его более точным.
Рис.1. Основные компоненты банка данных
Поясним основные функции и суть компонентов БнД. БД является поименованной совокупностью взаимосвязанных данных, находящихся под централизованным управлением СУБД. В свою очередь, СУБД - это специальный пакет программ, посредством которого реализуется централизованное управление БД и обеспечивается доступ к данным. СД является системой, предназначенной для хранения единообразной и централизованной информации обо всех ресурсах данных конкретного БнД; в СД содержатся сведения о данных, хранимых в БД (их наименования, смысловое описание, структура), о возможных значениях и форматах представления данных, о кодах защиты и разграничениях доступа к данным со стороны пользователей и т.п. АБД - это лицо или группа лиц, осуществляющее управление БД; если БнД реализован на персональной ЭВМ, то сам пользователь и является АБД.
Преимущества использования БнД
Перечислим основные достоинства использования БнД:
уменьшение избыточности информации;
исключение несогласованности различных записей и файлов;
обеспечение разделения, или коллективного использования данных различными программами, в том числе и только что вновь появившимися;
обеспечение стандартизации, что становится возможным благодаря наличию централизованного управления и является особенно важным для работы вычислительных сетей;
лучшая сбалансированость противоречивых требований.
В традиционных системах, без использования БД, каждая отдельно взятая прикладная программа ведет свои собственные файлы, причем часто с избыточностью и с использованием различных физических форматов.
В БнД благодаря интеграции используемых файлов, во-первых, значительно уменьшается степень избыточности отдельных файлов, во-вторых, исключается несогласованность, присущая системам, в которых используются многие копии одних и тех же файлов.
Требования к БнД
1. Адекватность отображения предметной области реального мира на БнД (полнота, целостность, непротиворечивость и актуальность данных); для обеспечения полноты данных их хранение и обновление должны быть так организованы, чтобы ВС в случае возникновения сбоев по различным причинам (сбои аппаратуры, ошибки пользователей) могла восстановить данные без потерь;
2. Обеспечение секретности и конфиденциальности для некоторой части данных; чтобы успешно противостоять опасности несанкционированного доступа к данным, БнД должны разрабатываться с включением эффективных средств защиты от такого доступа.
3. Обеспечение надежности функционирования БнД;
4. Дружелюбность интерфейса пользователей с БД и малое время на освоение системы, особенно для конечных пользователей;
5. Приемлемое время ответа на запросы пользователей;
6. Обеспечение взаимной независимости программ и данных.
Языковые средства БнД
Языковые средства СУБД являются важнейшей компонентой БнД, так как в конечном счете они обеспечивают интерфейс пользователей разных категорий с БнД. Языковые средства большинства СУБД относятся к языкам 4-го поколения, т.е. их уровень существенно выше, чем у языков 3-го поколения (к последним относятся такие алгоритмические языки как Паскаль, Фортран, Си и т.д.).
Языки 4-го поколения создавались по принципу "люди стоят дороже, чем машины". Главнейшими принципами, реализованными при их проектировании, являются принцип минимума работы (язык должен обеспечить минимум усилий, чтобы "заставить" машину работать) и принцип минимума мастерства (работа пользователя должна быть так проста, как только это возможно; она не должна быть уделом избранных и быть понятной лишь посвященным).
Спектр языковых средств, применяемых в СУБД, весьма широк, в том числе используются языки описания данных, языки манипулирования данными, языки запросов и т.д. Например, примером языка запросов является широко используемый язык SQL.
Типы описания данных
Существуют следующие основные виды описания данных:
1. Подсхема - таблица, описывающая ту часть данных, которая ориентирована на нужды одной или нескольких прикладных программ (организация файлов программиста). Описание данных на этом уровне называют также внешней схемой.
2. Глобальное описание логической структуры БД, или концептуальная схема, - таблица, логически описывающая всю БД. Она отражает представление о БД администратора БД или тех системных аналитиков, которые работают со всей БД.
3. Описание физической организации БД, или внутренняя схема, - таблица физического расположения данных на носителях информации.
Это представление о данных нужно системному программисту или системному разработчику, которые занимаются вопросами эффективности работы ВС, расположения данных на носителях, их индексирования или поиска, а также вопросами использования методов сжатия данных.
Иногда используют и четвертый вид описания данных - для конечного пользователя. Описание данных, которое ВС передает пользователю терминала, должно быть как можно более близким к тому описанию данных, которое он использует в своей работе. Способ передачи описания данных на терминал зависит от возможностей, запроектированных для диалога человек-машина.
Последовательность действий в БнД при обработке запросов пользователей
На рис.2 изображены последовательность действий, производимых в БнД при обработке запроса прикладной программы на считывание некоторой записи из БД, и взаимодействие различных блоков программного обеспечения БнД в процессе выполнения указанных действий.
Рис.2. Последовательность действий, производимых в БнД при обработке запроса прикладной программы на считывание некоторой записи из БД
Далее в соответствии с цифрами, указанными на рис.2, приводится описание тех действий, которые являются наиболее важными для описываемого процесса.
1. Прикладная программа А выдает СУБД запрос на чтение записи, сообщая имя программиста и значение ключа сегмента.
2, 3, 4. Из СУБД в ОС выдаются последовательно запросы для поиска в подсхеме для прикладной программы А (эта подсхема является частью внешней схемы), концептуальной схеме и внутренней схеме соответственно описания данных и физической записи; заметим, что все три перечисленные схемы в совокупности образуют словарь данных. После нахождения по каждому из этих запросов соответствующих данных в СД они передаются из СД в СУБД с помощью ОС.
2', 3', 4'. Затребованная информация ищется в соответствующем разделе словаря данных и передается из СУБД в ОС.
5. Из СУБД в ОС передается запрос на чтение соответствующей записи из БД.