АИС_Конспект. Учебное пособие по предмету основы построения автоматизированных информационных систем для специальности
![]()
|
Глава 3. Особенности современных информационных систем3.1. Корпоративные информационные системы В организации корпоративная информационная система выполняет поддержку выполнения основных функций организации. Такая система разделятся на отдельные модули программного обеспечения, каждый такой модуль используется при автоматизации деятельности определенного подразделения, либо группы подразделений. Структурно корпоративная информационная система отвечает организационной иерархии предприятия. 3.2. Системы обработки транзакцийТранзакция представляет собой процесс, протекающей в информационной системе и направленный на изменение данных. Выполнение транзакции характеризуется двумя состояниями: открытие транзакции; фиксирование транзакции. В свою очередь фиксирование транзакции означает ее принятие, либо «откат». В случае принятия транзакции изменения фиксируются в базе данных системы. В противном случае «откат» приводит к отмене всех действий проведенных в базе данных и она должна быть возвращена в исходное состояние, каким она характеризовалась на момент открытия транзакции. Информационные системы прослеживания транзакций получили название OLTP (On Line Transaction Processing) систем. Такие системы выполняют проведение транзакции в реальном времени. Для успешного выполнения транзакций система должна обеспечить выполнение условий реализации транзакций. Ниже перечисляются основные свойства транзакции: атомарность. Транзакция выполняется как единая операция для обработки данных в базе. В общем виде транзакция может представлять собой пакет запросов или операторов направленных на изменение данных. Выполняется такой пакет как единое целое; согласованность. Выполнение транзакции не должно приводить к нарушению целостности данных. Например если таблица Т1 связана с таблицей Т2 отношением «один ко многим», то в таблицу Т2 нельзя добавить записи с внешним ключом, для которого нет соответствующей записи к вероятным ключом в таблице Т1; изолированность. Обеспечивает отсутствие конфликтов в процессе изменения данных в многопользовательских системах. В таких системах база данных и таблицы разделяют между собой несколько пользователей. При таком доступе большее значение приобретает согласованность данных. Когда одна транзакция получили доступ к записям определенной таблицы или таблиц, до тех пор, пока она не будет завершена другие транзакции не могут получить доступ к этим записям. долговечность. Данное свойство определяет, что в случае успешного завершения транзакции ее результаты не будут потеряны. Рассмотренные свойства транзакции имеют соответствующие английские названия: atomicity, consistency, isolation, durability. Поэтому транзакции, обладающие перечисленными выше свойствами, сокращенно называются ACID транзакциями. В многопользовательских системах применятся также технология сериализации транзакций. Сериализация транзакций реализуется на базе двух принципов: транзакция не может получить доступ к записям таблицы базы данных, для которых еще не была закрыта ранее начатая транзакция; если к записям таблиц базы данных обращаются параллельно две транзакции, то они выполняются последовательно. Реализация принципа сериализации выполняется с помощью механизма блокировок. Блокировка может выполняться следующими способами: блокировка на уровне базы данных; блокировка на уровне отдельных таблиц; блокировка на уровне «страниц»; блокировка на уровне записи. Блокировка номер 3 выполняется на физическом уровне, под страницей понимается участок жесткого диска, на котором записаны данные таблицы. Блокировки номер 1 и 2 могут существенно замедлять процесс обработки транзакций. Для ускорения обработки транзакций блокировка выполняется на уровне строк таблицы номер 4. Для ускорения доступа могут использоваться также жесткая и не жесткая блокировки. Жесткая блокировка выполняется, когда транзакция производит изменения данных в таблице, другим транзакциям доступ к изменяемым данным запрещен. Не жесткая блокировка используется при извлечении данных, при этом другие транзакции могут извлекать те же данные. Транзакция может использовать жесткую блокировку, если ни одна другая транзакция не блокирует данные. При взаимной блокировке транзакций, одна из них прерывается и выполняется ее «откат». Системы управления транзакция поддерживают два основных типа транзакций: локальные и распределенные. Распределенные транзакции реализуются на нескольких серверах сети, на которых фрагментирована удаленная база данных. Локальные транзакции выполняются на одном сервере сети, ли на рабочей станции. В современных организациях широкое распространение получают распределенные транзакции. Для оптимизации процесса их выполнения в состав OLTP информационных систем вводят специальную подсистему – монитор транзакций (TPM – transaction processing monitor). TPM выполняет следующие функции: выравнивает нагрузку на сервера сети, путем равномерного распределения обращений к ним; оптимизирует число выполняемых приложений на серверах. Для выполнения первой функции применяется технология маршрутизации клиентских запросов. Подсистема TPM обращается к динамической маршрутной таблице и отыскивает свободный сервер, который может обслужить клиентский запрос. Поиск свободного сервера происходит либо путем циклического их опроса, либо по определенному алгоритму. Для оптимизации скорости выполнения транзакций выполняется контроль за активными серверными приложениями. Чем больше серверных приложений обслуживают запросы, чем выше быстродействие OLTP системы. Для поиска оптимального числа активных серверных приложений используется специальный коэффициент, который вычисляется по формуле 3.1. [7]: где Q – число запросов в очереди; A – число работающих серверных приложений. Если M превышает некоторое максимальное пороговое значение, то запускается копия серверного приложения, при достижении порогового минимума копия выгружается из памяти сервера. |