и процессоре правил должен иметься
Для
генерации предсказуемых результатов в SPE и процессоре правил должен иметься режим детерминированного исполнения, в котором используется порядок временных меток входных сообщений. СУБД сталкиваются с особыми трудностями в связи с этим требованием, потому что они пассивны, и порядок сохранения и обработки сообщений должен контролироваться некоторой внешней системой. Кроме того, прикладные программы, по существу, являются независимыми, и их исполнение контролируется планировщиком операционной системы. Навязывание некоторого порядка на выполнение программ приложения - эта другая задача, которая должна выполняться некоторым внешним программным обеспечением.
Бесшовная
интеграция хранимых и потоковых данных является проблематичной как для СУБД, так и для процессоров правил. Сохранение состояния - это то, что СУБД выполняет естественным образом. Однако, как говорилось ранее, СУБД не может справляться должным образом с потоковыми данными. Даже при использовании только для сохранения состояния потокового приложения клиент-серверная СУБД будет неэффективной по причине порождаемых ей накладных расходов и задержек. По существу, решение на основе СУБД будет приемлемым, только если СУБД может встраиваться в приложение.
В отличие от этого, процессор правил может эффективно поддерживать данные движущимися, но у него имеются проблемы с сохранением состояния. Причина состоит в том, что в процессоре правил для хранения используются локальные переменные, и отсутствует простой способ запроса данных из локальных переменных. Чтобы справляться с большими объемами данных о состоянии, нужно каким-то образом пересадить встроенную СУБД в процессор правил. В этом случае станет необходимо переключиться с парадигмы локальных переменных на парадигму СУБД, что совсем неестественно. Следовательно, процессор правил плохо подходит для хранения существенных объемов информации о состоянии. С другой стороны, SPE должен обладать возможностью поддержки бесшовной интеграции потоковых и хранимых данных с помощью простого переключения области видимости команд StreamSQL с реального потока на хранимую таблицу.
Все три системы могут включать соответствующие возможности для
гарантирования безопасности и доступности данных. Аналогично, нет никаких фундаментальных архитектурных препятствий против
разделения и масштабирования приложений.
Наконец, потенциально все три архитектуры могут обеспечивать
мгновенную обработку и выдачу результатов; однако у СУБД имеется здесь большой недостаток, поскольку в них не используется модель сквозной обработки.
Содержание Назад Вперед