12:30 18.03.2013 |   1532



Алгоритм с открытым кодом DBSeer
Источник: Christine Daniloff/MIT

Исследователи из Массачусетского технологического института реализовали алгортим с открытым кодом DBSeer, с высокой точностью предсказывающий потребности в ресурсах СУБД-приложений при возрастании нагрузки, от незначительного до многократного. Алгоритм применяет два подхода. Для незначительных скачков используется метод «черного ящика»: DBSeer следит за быстродействием и флуктуациями в количестве и типе пользовательских запросов и самообучается, выстраивая корреляции.

Для многократного возрастания нагрузки применяется модель «серого ящика», учитывающая индивидуальные особенности используемой СУБД, например, критерии, по которым система определяет, что пришла пора переписать обновления из кэша на диск. Исследователи реализовали «серый ящик» для MySQL и работают над моделью для PostgreSQL. Создание каждой такой модели — трудоемкая задача, но всего нескольких моделей будет достаточно для охвата подавляющего большинства существующих СУБД-приложений.

Алгоритм был проверен на тесте TPC-C и на реальной системе — Википедии. В среднем модели предсказывают уровень загруженности процессора с точностью 80%, а пропускную способность, расходуемую на дисковые операции, — 99%. В компании Teradata адаптируют алгоритм DBSeer для своих СУБД.


Теги: Программное обеспечение