Рефераты. Обработка транзакций p> . OSI-CCR для фиксации, управления и восстановления, 1990г.

Стандарты OSI определяют форматы и протоколы, но не прикладные программные интерфейсы для стандартного протокола двухфазовой обработки транзакций (2PC), спроектированного как надстройка над стеком коммуникационных протоколов OSI.

Стандарт API разработан комитетом X/Open и получил название X/Open
Distributed Transaction Processing (DTP) API. X/Open DTP позволяет менеджерам транзакций использовать комбинацию закрытых и OSI-TP-протоколов для внутренних и межоперабельных окружений соответственно. X/Open DTP - стандарт, находящийся в стадии начального развития и имеющий определенные противоречия. В частности, не очень хорошо согласуются две его цели: (1) определение среды монитора TP как стандартизированного окружения и (2) поддержка удаленных вызовов процедур транзакций (TRPC - Transactional
Remote Procedure Calls) наряду с "равноправными" (peer-to-peer) моделями коммуникаций (по крайней мере в настоящее время модель X/Open DTP содержит оба подхода).

X/Open DTP поддерживает не только плоские транзакции, но также многозвенные и вложенные (в последней из этих моделей при прерывании одной из ветвей происходит прерывание всей транзакции в целом).

В стандартизированной распределенной среде TP для описания взаимодействий между компонентами применяется комбинация стандартных протоколов. Некоторые из них, например ROSE (Remote Operations Service), относятся к общему стеку протоколов OSI; другие являются специфическими для окружения X/Open DTP или OSI-TP. На рис. 9 показаны интерфейсы компонентов в стандартизированной распределенной среде TP и соответствующие протоколы и
API.

[pic]

Рисунок 9. Стандартизированная среда обработки транзакций.

5. Классификация систем обработки транзакций

С появлением множества стандартизированных систем обработки транзакций нового поколения полезным представляется проведение их классификации с точки зрения спектра предоставляемых ими функций. Подобную классификацию, включающую пять измерений, предложили Абрахам Лефф и Калтон
Пу из Колумбийского университета:

M - множество машин;

P - множество процессов;

H - степень неоднородности машин и программного обеспечения;

D - множество логических данных;

S - множество узлов.

Эта классификация характеризует любую систему обработки транзакций, от простейших (P1, M1, H1, D1, S1) до более сложных многоузловых неоднородных окружений с поддержкой разнотипных наборов данных (Pn, Mn, Hn,
Dn, Sn). В статье, написанной в 1991 г., эти авторы представили трехмерную классификацию, которую они применили для оценки различных исследовательских и коммерческих систем.

6. Языки транзакций

В разд. 4 была рассмотрена Encina - монитор транзакций корпорации
Transarc - который включает множество библиотек и макросов, составляющих среду разработки Transactional C. Альтернативный способ задания директив обработки транзакций состоит в применении специального языка. В качестве примера рассмотрим язык InterBase Parallel Language (IPL), входящий в состав неоднородной распределенной cреды баз данных InterBase, которую мы обсуждали в гл. 6. IPL разработан с учетом поддержки высокой степени параллелизма и взаимодействия между субтранзакциями, принадлежащими общей глобальной транзакции. IPL предназначался для поддержки транзакций разных типов (т. е. смешанных транзакций), а также как системно-независимый декларативный язык, обеспечивающий прозрачность управления транзакциями.

Программа на IPL представляет собой блок, обрамленный ключевыми словами program - endprogram, и включает декларации записей и описания субтранзакций. Поскольку IPL постоянно развивается и в настоящее время в стадии исследований находится графический интерфейс, а также объектно- ориентированная версия этого языка, то за более полной информацией мы отсылаем читателя к материалам проекта InterBase, который ведется в
Университете Пурдью.

Альтернативный подход к спецификации транзакций - использование языка, ориентированного не на глобальную схему или на специфическую для какого-либо продукта реализацию, а на нейтральную семантическую модель данных. В связи с возрастающей ролью моделирования данных применение архитектур транзакций непосредственно к семантической модели также приобретает важное значение.

Значение этих средств определяется отчасти тем, что они способствуют интеграции концептуального моделирования процессов и данных. Классические процедуры интеграции 1970-х годов ориентировались, например, на отображение диаграмм потоков данных (DFD - Data Flow Diagram), на сущности и атрибуты диаграмм сущность-связь (ERD - Entity-Relation Diagram). Объектно- ориентированное моделирование обеспечивает определение объектов вместе с присущими им операциями, но ни тот ни другой вид моделирования не содержит средств для описания семантики транзакций. Выработка языков описания транзакций по отношению к некоторой модели данных с последующим переносом языковых средств в среду, обеспечивающую графическое представление вложенных, многозвенных и других развитых моделей транзакций, даст в будущем значительное увеличение продуктивности и надежности проектирования систем обработки транзакций.

7. Мониторы обработки транзакций третьего поколения

Прежде чем завершить эту главу, обратимся еще раз к мониторам обработки транзакций третьего поколения, о которых упоминалось в разд. 2. К важнейшим характеристикам нового поколения средств обработки транзакций относятся следующие.

- Моделирование бизнес-процессов и управление ими. В предыдущем разделе мы рассмотрели основные направления развития языков описания транзакций. Философия обработки транзакций в настоящее время, даже для окружений, совместимых с OSI-TP и X/Open DTP, ориентирована на встраивание спецификаций транзакций и логики управления непосредственно в приложения.
Крайне желательны были бы независимые декларативные средства для описания семантики транзакций в терминах бизнес-операций, точнее, их моделирование вместе с логикой бизнес-операций, для поддержки которых они предназначены.

- Интеграция с дисциплиной потоков работ. Независимые средства моделирования и спецификации транзакций, отмеченные в предыдущем пункте, необходимо соединить с формирующейся в настоящее время дисциплиной потоков работ. Для описания потоков информации, которой обмениваются между собой пользователи, процессы, приложения, может применяться некоторый высокоуровневый язык или графическая система. При этом семантику транзакций можно было бы описывать непосредственно над спецификациями потоков работ, подобно тому как ее можно было бы задавать относительно некоторой семантической модели данных. Имея среду разработки, снабженную инструментами генерации систем, можно было бы генерировать окружения управления транзакциями (совместимые, по всей вероятности, с X/Open DTP) вместе с процедурами и представлениями данных, необходимыми для реализации комбинированной модели "потоки работ - транзакции - данные".

- Продолжительные транзакции. Ранее мы отмечали необходимость долговременных транзакций для объектно-ориентированных баз данных. Хотя сама по себе эта потребность уже осознана, но для выражения свойств и реализации механизмов таких транзакций необходимы новые абстракции.
Мониторы обработки транзакций третьего поколения должны поддерживать длительные транзакции наряду с традиционными кратковременными транзакциями.

- Расширяемость. Мониторы TP третьего поколения должны обладать свойством динамической расширяемости новыми моделями транзакций (например, расширение модели вложенных транзакций за счет дополнения ее компенсирующими транзакциями или оперативное изменение правил обработки вложенных транзакций).

- Безопасность. Обеспечение безопасности невозможно без охвата всех ресурсов среды (сеть, операционная система, СУБД). Мониторы TP следующего поколения должны включать расширенные средства безопасности, в частности поддержку многоуровневой защиты данных, хранимых в единой среде.

- Масштабируемость. Архитектура обработки транзакций, оптимальная для 100 узлов, может оказаться неэффективной для среды из 1000 или 10 000 узлов. Мониторы TP следующего поколения должны обладать свойством масштабируемости с учетом переменного числа и объема различных ресурсов
(возможно, за счет упоминавшихся выше средств поддержки расширяемости).

Заключение

Системы обработки транзакций так же, как и другие виды информационных и компьютерных систем, находятся в состоянии постоянного развития. Несмотря на то что концепция, например, вложенных транзакций была выработана еще в начале 80-х годов, если не раньше, однако только недавно модели транзакций, более прогрессивные, чем простейшие плоские, начали перемещаться из экспериментальных систем в коммерческие продукты.

Развитие сферы обработки транзакций неизбежно будет определяться такими факторами, как распределенность вычислительных ресурсов и потребность в межоперабельности. По этой причине, а также в силу того, что организации все активнее ищут средства для объединения и обеспечения управляемости своих информационных ресурсов, будет возрастать значение усилий, направленных на поддержку стандартизации, в частности на реализацию продуктов TP, интегрированных со средой DCE, совместимых со спецификациями
OSI-TP, X/Open DTP.

Перспективы

Краткосрочные

- Рост числа продуктов, поддерживающих развитые модели транзакций
(вложенных и/или многозвенных).

- Формализация спецификаций X/Open DTP и реализация совместимых с ними продуктов.

Долгосрочные

- Появление коммерческих версий мониторов TP третьего поколения, интегрированных с дисциплиной потоков работ, с поддержкой долговременных транзакций и других прогрессивных средств.

Практические выводы

Средства обработки транзакций имеют большое значение для поддержания целостности корпоративной информации. Хотя в области исследований сложных моделей транзакций были достигнуты значительные результаты (в частности, выработаны парадигмы, более приемлемые для распределенных систем, чем применявшиеся в течение многих лет в централизованных окружениях мэйнфреймов), однако они только сейчас начинают находить применение в реальных приложениях.

Ключевым свойством сложных моделей транзакций является возможность разбивать транзакцию на компоненты (субтранзакции). Субтранзакции, в зависимости от конкретной модели обработки, могут быть: (1) перезапущены при рестарте системы без необходимости заново выполнять всю транзакцию с самого начала; (2) обработаны синхронно или асинхронно относительно других субтранзакций; (3) подчинены некоторой "верховной (master) транзакции", которая имеет право прервать любую из своих субтранзакций, даже если та сама по себе нормально завершила свою часть обработки.

Важнейшая тенденция в сфере обработки транзакций - зарождение стандартов в двух областях: форматы и протоколы (т. е. стандартизация наборов пересылаемых сообщений и реакций получателя на каждый тип сообщения), а также прикладные программные интерфейсы (API); все это способствует обеспечению мобильности приложений обработки транзакций относительно различных платформ.

Что дает эта технология

В связи с новыми потребностями сильно распределенных окружений пришло время пересмотреть многие устоявшиеся представления о моделях обработки транзакций, которые были выработаны для централизованных окружений мэйнфреймов. Модели одноуровневого управления не годятся для ситуации, когда в обработку транзакции вовлечено множество процессоров; существует множество способов группирования субтранзакций для поддержки функционирования сложных окружений.

Важное значение имеет правильный выбор одной из сложных моделей обработки транзакций с учетом специфики деятельности конкретной организации. Например, вложенные транзакции предоставляют исключительно гибкие способы управления субтранзакциями, но они очень сложны в реализации; при этом не во всех случаях такие возможности действительно необходимы. В некоторых ситуациях вполне приемлемой может оказаться модель многозвенных транзакций, в особенности если бизнес-функциям данной организации соответствуют схема асинхронной обработки субтранзакций.

Отметим также, что практически любому специалисту в области ИС необходимо хорошо ориентироваться в различных стандартах обработки транзакций.

Литература

1. У. Дайял. Мониторы транзакций третьего поколения, 1993

2. Дж. Грей и A. Реутер. Транзакции: Лекции и практика. - Сан
Франциско: Морган Кауфман, 1993.

3. A. Д. Вольф, Дж. Транскар. Монитор транзакций Encina. Ноябрь,
1992.

4. Интернет.


Страницы: 1, 2, 3



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.