Borland MIDAS

Мониторы управления транзакциями


Интенсивное совместное использование ресурсов приводит к возникновению узкого места, затрудняющего выполнение работ. Многие ранние попытки использования архитектуры "клиент-сервер" в масштабах предприятия провалились в результате неадекватного управления ресурсом баз данных. Ранние эксперименты по использованию РСУБД для управления динамическим содержимым Web-страниц постигла та же судьба и по тем же причинам. Во многих случаях проблема не была связана с реальной обработкой операторов SQL. Неприятности возникали по причине отсутствия должного управления соединениями с базами данных и применения неэффективных методов хэширования.

Начиная с CICS (Customer Information Control System) компании , созданной в начале 1970-х, был разработан ряд систем для управления ресурсом баз данных и транзакциями. Успех этих продуктов демонстрируется тем, что лучшие 20 результатов, полученных на тестовом наборе (измеренных в числе транзакций в минуту 2 февраля 1998 г.), получены с примением технологии промежуточного программного обеспечения баз данных. При отборе на основе параметра цена/производительность в 18 из лучших 20 результатов использовались .

TP-мониторы получили развитие по следующим причинам:

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

Эти проблемы решаются в TP-мониторах следующим образом:

  • Обеспечивается одновременная связь с набором различных систем баз данных.
  • Поддерживается двухфазный протокол фиксации, гарантирующий завершение транзакций над несколькими базами данных.
  • Пользовательские запросы обрабатываются с использованием легковесных нитей (threads) операционной системы, а не полновесных процессов.
    Это позволяет TP-мониторам использовать возможности SMP-систем (SMP - Symmetric MultiProcessor), таких как Sun Enterprise, Digital Alpha и Compaq Proliant.
  • Поддерживается постоянный пул подключений к базам данных, и эти подключения разделяются между пользователями. В большинстве приложений каждый пользователь реально обращается к базе данных только часть общего времени. Часто сотни "одновременно работающих" пользователей могут быть эффективно обслужены за счет наличия одной трети или даже одной десятой от числа подключений к базе данных, требуемых для прямого доступа.
  • Долговременное сохранение разделяемых подключений к базе данных существенно уменьшает трафик подключений.
  • Обеспечивается балансировка нагрузки путем планирования использования разделяемых ресурсов и направления запросов к наименее загруженным серверам. Мониторы могут также обнаруживать и обрабатывать ситуации, когда сервер или другой ресурс выходит из строя и нуждается в перезапуске.
  • Запросы обрабатываются асинхронно с распределением нескольких запросов к одному и тому же серверу между разными подключениями к базе данных (так называемый "конвейерный" параллелизм).
  • Запросы заспределяются между несколькими серверами баз данных (так называемый "развернутый" параллелизм).
  • Для координации операций разделенных и распределенных приложений поддерживается одноранговая связь с другими мониторами обработки транзакций.


Появление TP-мониторов породило ряд интересных вопросов по поводу лицензирования продуктов управления базами данных. Большинство поставщиков, включая , и , лицензирует свои продукты на основе числа подключений. Чем больше допускается одновременных подключений к базе данных, тем больше нужно платить. Но при использовании TP-монитора много пользователей может совместно использовать небольшое число подключений. Значит ли это, что можно купить лицензию на РСУБД по дешевке? Вероятно, нет, поскольку теперь основные поставщики принимают это во внимание и требуют платы на основе числа реальных пользовательских подключений, независимо от того, используется ли промежуточное программное обеспечение.



Это противоречие особенно неприятно для Web-приложений, с которыми часто работают миллионы пользователей. Во многих случаях взаимодействие этих пользователей с базой данных очень ограничено. Например, Web-сайт, в котором база данных используется только для регистрации пользователей, может нуждаться в пуле из десяти подключений для обслуживания всех возможных пользователей. Однако поставщик РСУБД скорее всего потребует приобретения лицензии для поддержки неограниченного числа пользователей. Для UNIX-систем стоимость таких лицензий может доходить до сотен тысяч долларов. Такая ценовая политика стимулирует перенос Web-приложений на Windows NT, и в ближайшие месяцы и годы это будет сильно влиять на выбор платформы поставщиками РСУБД.

На арене открытых систем в категории TP-мониторов лидирует Tuxedo компании . Вышедший из компании Novell в феврале 1996 г., этот надежный и зрелый продукт использовался примерно в 80% упоминавшихся выше результатах TPC-C. В 1997 г. продукт стал победителем конкурса журнала DBMS Readers' Choice на лучший монитор транзакций. Среди других продуктов этой категории следующие:


  • Encina компании (победитель конкурса DBMS 1996 г.)
  • Продукты семейства Transaction Server компании IBM (включая CICS и Encina)
  • ACMSxp компании
  • Top End компании (распространяемый компаний )
  • Trnasaction Server компании Microsoft.



Содержание раздела