Facebook открыл модуль ядра Flashcache для ускорения работы MySQL

Сервис Facebook уже не первый раз открывает свои наработки в области высокопроизводительных систем и Linux, на этот раз решено поделиться наработками в области ускорения работы сервера MySQL и других интенсивно взаимодействующих с диском приложений, за счет организации процесса прозрачного кэширования данных на быстрых SSD-накопителях.

Как известно, если у движка хранилища данных InnoDB рабочий набор данных не умещается в пуле кэша, тогда отзывчивость (latency) операций чтения сильно ухудшается. Эту проблему можно решить, если расположить рабочий набор данных на более быстром носителе информации, например, на SSD дисках. Модуль Flashcache, созданный инженерами Facebook, занимается именно этой задачей - он работает как универсальных механизм кэширования для любого приложения, работающего с блочным устройством.

Также Flashcache увеличивает скорость записи, сначала кэшируя запись на хранилище SSD, а затем неторопясь перекидывая данные на обычное хранилище стандартных вращающихся жёстких дисков. Модуль выпущен и проверен для работы только в ядрах Linux 2.6.18 и 2.6.20. При работе модуль базируется на технологии Linux Device Mapper (DM), для вытеснения старых данных поддерживаются методы FIFO и LRU.

©  OpenNet