Общие понятия по видам кэш


Существует три разновидности cache на RAID контроллерах:
  • read policy
  • write policy
  • i/o policy

Рассмотрим более детально, что из себя представляет каждая политика кэширования.


Read policy (Политика чтения)


Политика Read Ahead Policy: При ее включении контроллер начинает считывать последовательно сектора на диске, находящиеся за сектором с которого извлекается информация. При низкой фрагментации данная политика позволяет увеличить скорость чтения. Каждая операция чтения будет потреблять больше ресурсов жесткого диска, но если запросы на чтение последовательные это может существенно уменьшить количество запросов на чтение на жесткие диски и может существенно повысить производительность. Этот параметр будет работать только если  типичный размер запроса на чтения меньше, чем ширина полосы пропускания.


Политика No Read Ahead (Normal): При данном режиме контроллер не будет считывать последовательно данные, данный режим предпочтительнее когда будут производиться рандомные (случайные) чтения. Также этот режим рекомендуется при измерении последовательного чтения с помощью I/O meter под Windows.


Политика Adaptive Read Policy: по сути политика адаптивного чтения при которой контроллер запускает политику упреждающего чтения только после того, как две последние операции запрашивали доступ к последовательно идущим блокам данных. Если далее идут блоки рандомно разбросанные по дисковой подсистеме контроллер возвращается в нормальный режим работы.  Этот режим рекомендуется использовать, если нагрузка на RAID контроллере подразумевает смешанные и последовательные операции.


Write policy (Политика записи)


Политика Write-Through: Включая данную политику контроллер начинает посылает сигнал о завершении записи только тогда, когда информация упадет на физические носители, т.е. 100 процентов будет уже на жестких дисках. Обеспечивает более высокую безопасность. Данный режим не использует кэш для ускорения записи, и будет медленнее других, однако позволяет так же достичь хороших показателей при RAID 0 и RAID 10.

Политика Write-Back: Включая данный режим политика кэширования RAID контроллера начинает посылать сигнал о завершении записи только тогда, когда информация попадает в кэш контроллера, но еще не записана на дисковый массив. Обеспечивает более высокую прозводительность чем при политике write-through. Приложение продолжает работать, не дожидаясь, чтобы данные были физически записаны на жесткие диски. Но есть одно большое, но если во время работы RAID контроллера в таком режиме у вас пропадет электричество, то с 99 процентной вероятностью вы потеряете данные, для предотвращения этого есть BBU батарейки или модули защиты данных, так же советую проверить что у вашего сервера есть UPS (источник бесперебойного питания) и дублирующее подключение питания от блока питания.

Политика Write-Back with BBU: Данный режим это все тот же Write-Back, но разница в том, что у нас есть батарейка BBU, которая предотвращает потерю данных при выключении электропитания.

BBU илиBattery Backup Unit (Модуль Резервной Батареи). BBU дает батарейную защиту питания для cache RAID контроллера. В случае сбоя питания, BBU поможет сохранить данные в кэше.

I/O Policy (Политика ввода/вывода)

Политика ввода/вывода определяет, будет ли RAID контроллер сохранять данные в кэше, который может уменьшить время доступа к ним при последующих запросах на чтение сделаными в те же самые блоки данных.

Политика direct IO: чтение происходит с дисков. Прямой режим I/O рекомендуется в большинстве случаев. Большинство файловых систем и множество приложений имеют свой собственный кэш и не требуют кэширования данных на уровне контроллера RAID.

Политика Cached IO: При ее включении чтение происходит с дисков, но прочитанные данные одновременно кладутся в кэш. Запросы тех же данных в последствии берутся из кэша. Этот режим может потребоваться, если приложение или файловая система не кэширует запросы чтения

Disk cache policy: это политика кэша диска. Если ее включить то на дисках будет храниться дополнительный кэш, это будет влиять на скорость записи в худшую сторону, но будут быстрее считывание, так же при включенном режиме есть риск потери данных.