- •1. Режимы работы с базой данных
- •2. Технология com (Component Object Model)
- •3. Модели «клиент-сервер» в технологии баз данных.
- •4. Основные принципы функционирования com (Component Object Model)
- •5. Модель файлового сервера.
- •6. Параллельное выполнение транзакций. Основные проблемы.
- •7. Модель удаленного доступа к данным.
- •8. Уровни изолированности пользователей.
- •9. Гранулированные синхронизационные захваты.
- •10. Модель сервера приложений.
- •11. Создание объекта и работа с объектом в технологии com (Component Object Model)
- •12. Модель сервера баз данных.
- •13. Интерфейсы технологии com (Component Object Model)
- •14. Типы параллелизма (Пути распараллеливания запросов).
- •15. Сервер com (Component Object Model).
- •16. Модели транзакций.
- •17. Технология mts (Microsoft Transaction Server).
- •18. Локальные базы данных
- •19. Технология ado (Microsoft ActiveX Object).
- •20. Способы завершения транзакций.
- •21. Архитектура «клиент-сервер». Двухзвенная структура.
- •22. Технология midas (Multitier Distributed Applications Server).
- •23. Архитектура «файл-сервер».
- •24. Журнализация и буферизация.
- •25. Архитектура «клиент-сервер». Трехзвенная структура.
- •26. Индивидуальный откат транзакций.
- •27. Технология corba ( Common Object Request Broker Architecture).
- •28. Объект corba ( Common Object Request Broker Architecture).
- •29. Службы corba (Common Object Request Broker Architecture) и их взаимодействие.
- •30. Библиотека сом.
- •31. Фабрика класса сом.
20. Способы завершения транзакций.
Возможны два варианта завершения транзакции. Если все операторы выполнены успешно и в процессе выполнения транзакции не произошло никаких сбоев программного или аппаратного обеспечения, транзакция фиксируется.
Фиксация транзакции — это действие, обеспечивающее запись на диск изменений в базе данных, которые были сделаны в процессе выполнения транзакции.
До тех пор пока транзакция не зафиксирована, допустимо аннулирование этих изменений, восстановление базы данных в то состояние, в котором она была на момент начала транзакции. Фиксация транзакции означает, что все результаты выполнения транзакции становятся постоянными. Они станут видимыми другим транзакциям только после того, как текущая транзакция будет зафиксирована. До этого момента все данные, затрагиваемые транзакцией, будут "видны" пользователю в состоянии на начало текущей транзакции.
Если в процессе выполнения транзакции случилось нечто такое, что делает невозможным ее нормальное завершение, база данных должна быть возвращена в исходное состояние. Откат транзакции — это действие, обеспечивающее аннулирование всех изменений данных, которые были сделаны операторами SQL в теле текущей незавершенной транзакции.
Каждый оператор в транзакции выполняет свою часть работы, но для успешного завершения всей работы в целом требуется безусловное завершение всех их операторов. Группирование операторов в транзакции сообщает СУБД, что вся эта группа должна быть выполнена как единое целое, причем такое выполнение должно поддерживаться автоматически.
21. Архитектура «клиент-сервер». Двухзвенная структура.
Клиент-сервер– вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемых серверами, и заказчиками услуг, называемых клиентами. Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.
Первоначально системы такого уровня базировались на классической двухуровневой клиент-серверной архитектуре. Под клиент-серверным приложением в этом случае понимается информационная система, основанная на использовании серверов баз данных.
На стороне клиента выполняется код приложения, в который обязательно входят компоненты, поддерживающие интерфейс с конечным пользователем, производящие отчеты, выполняющие другие специфичные для приложения функции.
Клиентская часть приложения взаимодействует с клиентской частью программного обеспечения управления базами данных, которая, фактически, является индивидуальным представителем СУБД для приложения.
Заметим, что интерфейс между клиентской частью приложения и клиентской частью сервера баз данных, как правило, основан на использовании языка SQL. Поэтому такие функции, как, например, предварительная обработка форм, предназначенных для запросов к базе данных, или формирование результирующих отчетов выполняются в коде приложения.
Наконец, клиентская часть сервера баз данных, используя средства сетевого доступа, обращается к серверу баз данных, передавая ему текст оператора языка SQL.
Посмотрим теперь, что же происходит на стороне сервера баз данных. В продуктах практически всех компаний сервер получает от клиента текст оператора на языке SQL.
Сервер производит компиляцию полученного оператора.
Далее (если компиляция завершилась успешно) происходит выполнение оператора.