
- •Базы данных. Принципы построения. Жизненный цикл бд.
- •Типология баз данных. Документальные бд. Фактографические бд.
- •Типология баз данных. Объектно-ориентированные бд. Распределенные бд.
- •Организация процессов обработки данных в бд. Ограничения целостности.
- •Технология оперативной обработки транзакции (oltp-технология).
- •Информационные хранилища. Olap-технология.
- •Проектирование информационной системы. Основные компоненты технологии проектирования ис. Методы и средства проектирования ис. Краткая характеристика применяемых технологий проектирования.
- •Состав, содержание и принципы организации информационного обеспечения ис.
- •Проектирование фактографических бд: методы проектирования; концептуальное, логическое и физическое проектирование.
- •Типовое проектирование ис. Понятие типового элемента. Технологии параметрически-ориентированного и модельно-ориентированного проектирования.
- •Автоматизированное проектирование ис с использованием case-технологии. Функционально-ориентированный и объектно-ориентированный подходы.
- •Признаки и особенности антикризисного управления. Антикризисное управление: требования к системе, механизму и процессу управления.
- •Современные модели организационного управления предприятиями.
- •Реорганизация ит-служб организации в период антикризисного управления.
- •Системы аналитической обработки данных в реальном времени.
Организация процессов обработки данных в бд. Ограничения целостности.
Проблема целостности заключается в обеспечении правильности данных БД в любой момент времени. Она может быть нарушена в следующих случаях:
▪ при вводе и обновлении, когда подаются неверные сведения;
▪ когда данными пользуются одновременно несколько пользователей;
▪ при сбоях АПС.
Решение проблем целостности необходимо рассматривать с программной и организационной точек зрения. Для решения первой проблемы необходимо выполнить ряд организационных мероприятий, которые будут следить за вводом информации в БД, пользователь должен знать правила ввода и ограничения. Для снятия второй и третьей проблем существуют стандартные средства СУБД или специальные программные модули.
В правильно спроектированной СУБД выполняются два основных ограничения целостности:
• структурные ограничения (задаются функциональными связями и проверяются путем проверки равенства значений БД);
• ограничения реальных значений. Требуют, чтобы значения поля принадлежали некоторому диапазону, либо это зависимость между значениями некоторых полей (типы данных и маски ввода). Ограничения могут задаваться администратором БД в любой момент, но СУБД может не принять ограничение, если в системе присутствуют записи, не удовлетворяющие заданному требованию.
Ограничения различаются по уровню сложности:
Ø ограничения на значение поля, например: запрет ввода нулевого значения, запрет пустого поля, запрет на диапазон, запрет на список;
Ø ограничения на совокупность атрибутов строки, например должность – разрядные ставки, края – города;
Ø ограничения одновременно на множество строк.
Все эти ограничения статистические, но при переходе БД из одного состояния в другое необходимо удовлетворять ограничениям целостности до начала всех изменений и после окончания всех, а не каждого. Такие ограничения называются отложенными, и относительно них вводится понятие транзакций.
Транзакция – законченное с точки зрения пользователя действие над БД. В то же время это логическая единица работы системы. Транзакция реализует некоторую прикладную функцию, например перевод денег с одного счета на другой в банковской системе.
Транзакция должна обладать четырьмя свойствами:
1. Атомарность (неделимость), т. е. выполнение как одинарной операции доступа к БД, при этом либо должна выполняться полностью или не выполняться совсем.
2. Согласованность – гарантирует взаимную целостность данных после окончания обработки транзакций.
3. Изолированность, т. е. каждая транзакция может изменять данные, которые временно находится в несогласованном состоянии. При этом доступ других транзакций к этим данным запрещен, пока транзакция не завершится.
4. Долговечность – если транзакция выполнена успешно, то изменения не будут потеряны.
Мониторы обработки транзакций (Transaction Processing Monitor – TPM) – это программные системы, которые относятся к посредническому или промежуточному программному обеспечению, решающие задачу эффективного управления информационно-вычислительными ресурсами в распределенной системе.
Они представляют собой гибкую, открытую среду для разработки и управления мобильными приложениями, ориентированными на оперативную обработку распределенных транзакций. К характеристикам TPM относят:
▪ масштабируемость;
▪ поддержку функциональной полноты и целостности приложений;
▪ достижение максимальной производительности при обработке данных при невысоких стоимостных показателях;
▪ поддержку целостности данных в гетерогенной среде.
TPM опираются на трехзвенную модель «клиент-сервер». На современном рынке мониторов транзакций основными «действующими лицами» являются такие системы, как ACMS (DEC), CICS (IBM), TOP END (NCR), TUXEDO Sytem (Novell).
При реализации транзакций возникают следующие проблемы:
Ø потеря обновлений (в БД фиксируется только изменения одного пользователя, остальные теряются);
Ø чтение незафиксированных данных.
Для их решения существуют специальные механизмы обработки транзакций, которые основываются на следующих принципах: транзакция не имеет доступа к незафиксированным данным; результат совместного выполнения транзакций эквивалентен их последнему выполнению.
Реализуется этот механизм через систему блокировок: СУБД блокирует часть БД, к которой обращается транзакция до момента её фиксации, т. е. вторая транзакция становится в очередь ожидания. Чем больше блокируемый элемент, тем медленнее обрабатывается транзакция. В системах OLTP обычно блокируется строка, при этом транзакции могут попадать в ситуацию взаимной блокировки. Для предотвращения описанного явления СУБД периодически опрашивает блокировки, в случае положительного ответа одна из транзакций прерывается. Для более удобной работы допускаются блокировки совместного использования данных: параллельно работающим пользователям запрещается изменять данные, но разрешается их выборка.
Для решения проблем совместного использования данных можно использовать тиражирование данных в системах с распределенным доступом. Эта технология предполагает отказ от распределенности данных, при этом в каждом узле располагается своя копия БД. Средства, обеспечивающие этот подход, должны поддерживать согласованное состояние БД путем копирования изменений. Процесс переноса изменений исходной БД в БД отдельных узлов называется тиражированием данных. Эти функции выполняет определенный модуль – сервер тиражирования (репликатор). Схема его работы заключается в следующем: полное обновление содержимого БД на удаленных серверах (схема с полным обновлением) или обновление только изменяющихся данных (схема с быстрым обновлением). Если нет необходимости постоянно обновлять данные, то репликатор накапливает изменения и копирует их в нужный момент.
Современные технологии БД предъявляют определенные требования в области архитектуры. До недавнего времени выделялись три класса задач:
Ø задачи оперативной обработки транзакций;
Ø задачи пакетной обработки;
Ø задачи принятия решений.