![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Надежность
Сервер баз данных осуществляет модификацию данных на основе механизма транзакций, который придает любой совокупности операций, объявленных как транзакция, следующие свойства:
атомарность - при любых обстоятельствах будут либо выполнены все операции транзакции, либо не выполнена ни одна; целостность данных при завершении транзакции;
независимость - транзакции, инициированные разными пользователями, не вмешиваются в дела друг друга;
устойчивость к сбоям - после завершения транзакции, ее результаты уже не пропадут.
Механизм транзакций, поддерживаемый сервером баз данных, намного более эффективен, чем аналогичный механизм в настольных СУБД, так как сервер централизованно контролирует работу транзакций. Кроме того, в файл-серверной системе сбой на любой из рабочих станций может привести к потере данных и их недоступности для других рабочих станций, в то время, как в клиент-серверной системе сбой на клиенте, практически, никогда не сказывается на целостности данных и их доступности для других клиентов.
Безопасность
Сервер баз данных предоставляет мощные средства защиты данных от несанкционированного доступа, невозможные в настольных СУБД. При этом, права доступа администрируются очень гибко - до уровня полей таблиц. Кроме того, можно вообще запретить прямое обращение к таблицам, осуществляя взаимодействие пользователя с данными через промежуточные объекты - представления и хранимые процедуры. Так что администратор может быть уверен - никакой слишком умный пользователь не прочитает то, что ему читать не положено.
Восстановление базы данных — это функция СУБД, которая в случае логических и физических сбоев приводит базу данных в актуальное и консистентное состояние.
В случае логического отказа или сигнала отката одной транзакции журнал изменений сканируется в обратном направлении, и все записи отменяемой транзакции извлекаются из журнала вплоть до отметки начала транзакции. Согласно извлеченной информации выполняются действия, отменяющие действия транзакции. Этот процесс называется откат (rollback).
В случае физического отказа, если ни журнал изменений, ни сама база данных не повреждены, то выполняется процесс прогонки (rollforward). Журнал сканируется в прямом направлении, начиная от предыдущей контрольной точки. Все записи извлекаются из журнала вплоть до конца журнала. Извлеченная из журнала информация вносится в блоки данных внешней памяти, у которых отметка номера изменений меньше, чем записанная в журнале. Если в процессе прогонки снова возникает сбой, то сканирование журнала вновь начнется сначала, но восстановление фактически продолжится с той точки, где оно прервалось.
В случае физического отказа, если журнал изменений доступен, но сама база данных повреждена, то должен быть выполнен процесс восстановления базы из резервной копии. После восстановления база будет находиться в состоянии на момент выполнения резервной копии. Для восстановления базы данных на момент отказа необходимо выполнить прогонку всех изменений, используя журнал изменений.
В случае физического отказа, если журнал изменений недоступен, но сама база данных не повреждена, восстановление возможно только на момент предыдущей контрольной точки.
В случае физического отказа, если повреждены как журнал изменений, так и сама база данных, то восстановление возможно только на момент выполнения резервной копии
65. Базы данных коллективного пользования. Компоненты модели клиент/сервер. Взаимодействие баз данных и приложений-клиентов.
По характеру хранения данных и обращения к ним БД могут быть персонального и коллективного пользования.
База данных коллективного пользования - это БД с распределенной обработкой данных. Сопровождение крупных БД коллективного пользования осуществляет администратор базы данных. Если работать с базой данных со своих локальных компьютеров через сеть могут одновременно несколько пользователей, получающими доступ со своих компьютеров к ней через сеть, то такая база данных называется сетевой (коллективного пользования). Преимущество сетевой базы в том, что всем пользователям не нужно иметь ее копию в своем компьютере, периодически рассылая и обращаясь за изменениями. Сделанное в базе данных изменение сразу становиться видно всем ее пользователям. БД коллективного пользования делятся на централизованные и распределенные. Централизованная база хранится в одном компьютере, распределенная состоит из нескольких частей, хранимых в разных компьютерах. Централизованные базы по схеме обработки информации делятся на 2 типа - файл-сервер и клиент-сервер.
Архитектура файл-сервер предполагает выделение одной из машин в качестве центральной (сервер файлов) - в ней хранится совместно используемая централизованная база данных. Все другие машины сети выполняют роль рабочих станций. По запросу с рабочей станции файлы базы данных передаются с файл-сервера на рабочую станцию, где и производится обработка данных. При большой интенсивности доступа к одним и тем же данным производительность системы может быть невысокой. Пользователи могут создавать на рабочих станциях свои локальные БД, которые используются ими монопольно.
В концепции клиент-сервер подразумевается, что центральный компьютер не только хранит данные, но и производит основной объем операций по их обработке. Запрос с рабочей станции порождает поиск и извлечение данных на сервере. Извлеченные данные (а не файлы базы данных) транспортируются по сети от сервера к клиенту.
Компоненты архитектуры клиент-сервер
Существуют три основных программных компонента архитектуры клиент-сервер:
· Программное обеспечение конечного пользователя.
· Промежуточное обеспечение.
· Программное обеспечение сервера.
К ПО конечного пользователя относятся средства разработки программ и генераторы отчетов, в том числе электронные таблицы и текстовые процессоры. С помощью этого ПО пользователи устанавливают связь с серверами, отправляют на рассмотрение серверу запросы и получают ответную информацию.
Промежуточное обеспечение предоставляет общий интерфейс для ПО конечного пользователя и сервера, проникающий сквозь сквозь слои GUI (графический интерфейс пользователя), операционную систему, вычислительной сети и собственных драйверов базы данных с помощью общих вызовов. Для завершения операции сервер базы данных выполняет запрос и передает клиенту затребованные данные для обработки их программой клиента.
Под ПО сервера подразумевается операционная система и конкретный сервер базы данных, используемый для обработки запросов клиентской части информационной системы.
Серверы баз данных занимаются не только обслуживанием данных. В них предусмотрены также механизмы блокировок и элементы управления многопользовательским доступом, которые обеспечивают защиту данных от опасности параллельного доступа. Кроме этого, серверу баз данных приходится ограждать данные от несанкционированного доступа, оптимизировать запросы к базе данных, обеспечивать кэширование и предоставлять место для размещения словаря данных.
Взаимодействие клиентской и серверной частей приложения осуществляется через сеть - локальную или глобальную. При этом с точки зрения клиента и сервера взаимодействие осуществляется прозрачно, соответственно сетевой компонент здесь включает в себя совокупность необходимого сетевого оборудования, набор программных технологий, обеспечивающих передачу данных между узлами сети, а также собственно протокол или протоколы для обмена запросами и результатами их выполнения.
Компонент визуализации прикладной задачи осуществляет ввод информации пользователем с помощью тех или иных средств, а также вывод информации на экран и печать. Компонент визуализации для архитектуры клиент-сервер всегда исполняется на рабочем месте пользователя (поскольку должен же он наблюдать какие-либо результаты работы программы).
Компонент прикладной логики решает собственно ту или иную задачу, связанную с обработкой данных в той или иной предметной области. Этот компонент может быть распределен между клиентской и серверной частью различным образом в зависимости от применяемой модели.
Компонент хранения базы данных осуществляет физические операции, связанные с хранением данных, чтением информации из БД и записью в нее. В архитектуре клиент-сервер этот компонент всегда выполняется на сервере.
Дата публикования: 2015-02-03; Прочитано: 745 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!