воскресенье, 24 ноября 2013 г.

Linux: Ускоряем дисковую систему: bcache, btier, flashcache

Ускоряем базу данных. Bcache
Сравнение bcache и btier
Flashcache, или I/O на стероидах
http://www.accelcloud.com/2012/04/18/linux-flashcache-and-bcache-performance-testing/

Также ещё есть
https://github.com/stec-inc/EnhanceIO
https://github.com/mingzhao/dm-cache

Что bcache, что btier пока в нестабильных версиях ядра, пока на данный момент использовать с осторожностью.



О структуре комбинированной системы

bcache реализует технологии caching, btier - tiering, что понятно из их названия.
flashcache - caching.

Сравнение с аппаратными SSD кэшами
Имеет смысл также рассмотреть такие контроллеры как
Adaptec Maxcache (бывшая MaxIQ)
Adaptec RAID adapters with maxCache technology include:
» Series 8Q with maxCache Plus:  SSD Caching and Tiering
» Series 7Q with maxCache 3.0:  SSD Caching
» Series 6Q with maxCache 2.0:  SSD Caching
http://www.adaptec.com/ru-ru/solutions/maxcache/
http://www.adaptec.com/ru-ru/_common/maxcache/_resources/ssd_faqs.htm?nc=/ru-RU/_common/maxCache/_resources/SSD_FAQs.htm

LSi CacheCade
1 2 3
1 версия умела кэшировать только чтение, 2 еще и запись. Видимо, 3 версия научится Tiering, догоняя adaptec по возможностям.

Некоторые размышления
Нужно понимать, что у tiering надёжность как у raid 0 (stripe), ибо данные хранятся одновременно только на 1 уровне! Поэтому необходимо озаботиться избыточностью данных на ВСЕХ уровнях, включая SSD!

В СХД тех же IBM используется как раз tiering, причём в последних системах он 3-уровневый: большие медленные диски (sata), быстрые SAS средней ёмкости и очень быстрые промышленные SSD за очень много денег. Но такая система получается сбалансированной по стоимости и скорости.

Нужно понимать, что иногда "ручной" вынос наиболее горячих данных на тот же ssd даёт куда больше всех этих технологий, но требует глубокого понимания работы подконтрольной системы. Иначе будут появляться такие статьи.

Примечания
Кэши надо "прогревать". Нужно понимать, что сразу после запуска системы скорость может быть на уровне самого медленного компонента (sata hdd например), а также при недостаточном размере кэша данные будут вытесняться раньше времени и общая эффективность снизится.

Для bcache требуется переформатировать все диски, включая диски с данными. Не совсем понятна логика связывания с программными рейдами.

Для закачки ядра с bcache, если это хочется сделать только на "попробовать", качать можно только последнюю ревизию
git clone --depth=1 http://evilpiepirate.org/git/linux-bcache.git

"читал, что толку от SSD ZIL в ZFS намного меньше по сравнению с добавлением оперативки" (из комментариев)
нужно понимать разный уровень надёжности SSD ZIL и просто кэша в памяти. Разумеется память быстрее... до первой проблемы с тем же питанием или просто падением в кору.

И ещё немного линков
http://www.linux.org.ru/forum/admin/7270034
FlashCache System Administration Guide

Комментариев нет:

Отправить комментарий