Экспериментальное приложение, обсуждавшееся в предыдущем разделе, было реализовано с использованием системы обработки потоковых данных (stream processing engine (SPE)) StreamBase [5], которая, по существу, является коммерческим, производственным вариантом системы Aurora [8, 13]. На компьютере с процессором Pentium 2.8 Ггц, 512 Мб основной памяти и одним диском SCSI поток работ, показанный на рис. 3, выполнялся со скоростью 160000 сообщений в секунду без достижения предельной загруженности ЦП. При реализации того же приложения с использованием одной из популярных коммерческих СУБД инженерам StreamBase удалось добиться скорости всего лишь в 900 сообщений в секунду.
В этом разделе мы обсудим основные причины, которые привели к этому различию производительности в два порядка. Как мы утверждаем ниже, эти причины связаны с моделью входной обработки, выбором правильных примитивов потоковой обработки и бесшовной интеграцией обработки, выполняемой СУБД, с обработкой, производимой приложением. Кроме того, мы обсудим особенности транзакционного поведения, обеспечение которого часто входит в число основных требований.