Показаны сообщения с ярлыком RAM Disk. Показать все сообщения
Показаны сообщения с ярлыком RAM Disk. Показать все сообщения

19 октября 2012

Essbase on RAM Disk

Ни раз задавался вопросом, как можно улучшить производительность Essbase. В том числе, с его использованием на RAM Disk. Идея проста - создать виртуальный диск в памяти достаточного объема, благо планочки нынче не дороги, и закинуть на этот диск файлы кубов Essbase.

Один из наших соратников - Макс Кудряшов - поделился тестами такой реализации на промышленной базе:
Cравнили производительность RAM-диска и обычной дисковой полки. Результаты очень положительные: пересчет модели упал с 4.5 - 6 часов (в зависимости от нагрузки) до 2 часов ровно (причем буквально с точностью до пары секунд каждый раз). Даже учитывая, что практически весь пересчет идет в один поток, количество потребляемых IOPS доходило до 10K (но в основном 2-5K). Так что совсем не удивительно, что обычная полка не справляется - она в пике выдавала только под 400.
Есть конечно расчеты, которые слабо зависят от диска (в основном с использованием CREATENONMISSINGBLK ON), но агрегации и копирования данных просто летают.
Приложен график (в центре провал - было не оптимально написано правило).

Софт для создания RAM Disk - Primo Ramdisk
Параметры куба Essbase: BSO, Buffered I/O Access Mode, RLE Data Compression
Объем данных в кубе - 70 ГБ, индексный файл - 3ГБ