- •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. Фабрика класса сом.
1. Режимы работы с базой данных
База данных может быть открыта пользователем в сети в одном из четырех режимов.
Открытие в режиме общего доступа. База данных открывается для чтения и записи. Другие пользователи тоже могут открыть базу данных (в любом режиме).
Открытие в режиме монопольного доступа. База данных открывается для чтения и записи. Другие пользователи не смогут открыть базу данных, пока она не будет закрыта пользователем, открывшим ее в режиме-монопольного доступа.
Открытие в режиме общего доступа только для чтения. База данных открывается только для чтения. Другие пользователи тоже могут открыть базу данных (в любом режиме).
Открытие в режиме монопольного доступа только для чтения. База данных открывается только для чтения. Другие пользователи не смогут открыть базу данных, пока она не будет закрыта пользователем, открывшим ее в режиме монопольного доступа.
2. Технология com (Component Object Model)
COM - это метод разработки программных компонентов, небольших двоичных исполняемых файлов, которые предоставляют необходимые сервисы приложениям, операционным системам и другим компонентам. Другими словами, COM определяет стандартный механизм, с помощью которого одна часть программного обеспечения предоставляет свои сервисы другой независимо от способа их реализации.
COM является платформно-независимой, объектно-ориентированной технологией, позволяющей создавать бинарные компоненты. Эти компоненты можно использовать как локально, так и в распределенном сетевом окружении. COM служит основой для: OLE (технология составных документов), ActiveX-объектов и элементов управления ActiveX, DCOM, COM+. На базе COM создано большинство новейших продуктов (MS Office, MTS, …) и технологий Windows.
COM - это не язык программирования, а подход (спецификация) к созданию программ, обеспечивающий взаимодействие программ любых типов. Компоненты COM объединяются друг с другом для создания приложений или систем компонентов. Компоненты можно менять во время выполнения, без перекомпиляции или перекомпоновки приложения.
Таким образом, ключевое слово при использовании COM - компонент. К компонентам обычно предъявляются следующие требования:
1. Компонент должен скрывать используемый язык программирования.
2. Компоненты должны распространяться в двоичной форме. Их необходимо поставлять уже скомпилированными, скомпонованными и готовыми к использованию.
3. Должна быть возможность модернизировать компоненты, не затрагивая уже существующих пользователей. Новые версии компонента должны работать как со старыми, так и с новыми клиентами.
4. Компоненты должны перемещаться по сети. Необходимо, чтобы компонент и использующая его программа могли выполняться внутри одного процесса, в разных процессах и на разных машинах.
3. Модели «клиент-сервер» в технологии баз данных.
Термин "клиент-сервер" исходно применялся к архитектуре программного обеспечения, которое описывало распределение процесса выполнения по принципу взаимодействия двух программных процессов, один из которых в этой модели назывался "клиентом", а другой -- "сервером". Клиентский процесс запрашивал некоторые услуги, а серверный процесс обеспечивал их выполнение. При этом предполагалось, что один серверный процесс может обслужить множество клиентских процессов.
Основной принцип технологии "клиент--сервер" применительно к технологии баз данных заключается в разделении функций стандартного интерактивного приложения на 5 групп:
· функции ввода и отображения данных (Presentation Logic);
· прикладные функции, определяющие основные алгоритмы решения задач (Business Logic);
· функции обработки данных внутри приложения (Database Logic),
· функции управления информационными ресурсами (Database Manager System);
· служебные функции, играющие роль связок между функциями первых четырех групп.
Двухуровневая модель фактически является результатом распределения пяти указанных функций между двумя процессами, которые выполняются на двух платформах: на клиенте и на сервере. В чистом виде почти никакая модель не существует, однако рассмотрим наиболее характерные особенности каждой двухуровневой модели.
Модель удаленного управления данными также называется моделью файлового сервера. Презентационная логика и бизнес-логика располагаются на клиенте. На сервере располагаются файлы с данными и поддерживается доступ к файлам. Функции управления информационными ресурсами в этой модели находятся на клиенте. В этой модели файлы базы данных хранятся на сервере, клиент обращается к серверу с файловыми командами, а механизм управления всеми информационными ресурсами, собственно база мета-данных, находится на клиенте.
Модель сервера баз данных. Для того чтобы избавиться от недостатков модели удаленного доступа, должны быть соблюдены следующие условия:
1. Необходимо, чтобы БД в каждый момент отражала текущее состояние предметной области, которое определяется не только собственно данными, но и связями между объектами данных. То есть данные в каждый момент времени должны быть непротиворечивыми.
2. БД должна отражать некоторые правила предметной области, законы, по которым она функционирует.
3. Необходим постоянный контроль за состоянием БД, отслеживание всех изменений и адекватная реакция на них.
4. Необходимо, чтобы возникновение некоторой ситуации в БД четко и оперативно влияло на ход выполнения прикладной задачи.
5. Одной из важнейших проблем СУБД является контроль типов данных.
Модель активного сервера БД. В этой модели бизнес-логика разделена между клиентом и сервером. На сервере бизнес-логика реализована в виде хранимых процедур - специальных программных модулей, которые хранятся в БД и управляются непосредственно СУБД. Клиентское приложение обращается к серверу с командой запуска хранимой процедуры, а сервер выполняет эту процедуру и регистрирует все изменения в БД, которые в ней предусмотрены. Сервер возвращает клиенту данные, релевантные его запросу, которые требуются клиенту либо для вывода на экран, либо для выполнения части бизнес-логики, которая расположена на клиенте. Трафик обмена информацией между клиентом и сервером резко уменьшается.
Модель сервера приложений является расширением двухуровневой модели и в ней вводится дополнительный промежуточный уровень между клиентом и сервером. Этот промежуточный уровень содержит один или несколько серверов приложений.