ZFS и кеш устройства


9

Я собираюсь добавить SSD-накопители в мои хранилища ZFS в качестве кеша. У кого-нибудь есть опыт работы с этим? Что, если устройство кеша умирает, будут ли затронуты какие-либо данные?

Ответы:



13

В основном есть три типа кеша ZFS, все они используются как для данных, так и для метаданных.

  • ARC (Adaptive Replacement Cache) - кэш оперативной памяти DRAM для чтения и записи.
  • L2ARC (Level 2 ARC) - безопасный кэш чтения: нет потери данных / прерывания обслуживания из-за сбоя устройства. Обычно на основе SSD.
  • ZIL (ZFS Intent Log) - безопасно хранит записи в постоянном хранилище, которые также ожидают, что в ARC будут записаны на диск. Данные должны редко находиться в этом кэше более 30 секунд, и данные никогда не считываются, кроме как после сбоя, чтобы воспроизвести любые незафиксированные записи пула. В любой последней версии ZFS сбой устройства Zil не приведет к потере данных (все данные все еще находятся в ARC), но сбой устройства + сбой или отключение питания может привести к потере некоторых записей.

Сначала обновите свой ARC, купите кучу основной памяти. Обратите внимание, что L2ARC и Zil тоже имеют служебные данные, выделенные вне ARC.

L2Arc заполняется кэшированными для чтения блоками, поскольку они исключаются из ARC. ZFS по умолчанию только кэширует случайные операции ввода-вывода (небольшие операции чтения) в L2ARC и не используется для потоковой передачи рабочих нагрузок ( если не указано иное ). Вы можете использовать любое устройство для этого (в том числе быстрое 15k HD), но оно лучше всего работает с твердотельным накопителем, который легко справляется со многими случайными операциями чтения.

ZIL ускоряет рабочие нагрузки, для которых требуются синхронные записи (процессы ожидают подтверждения того, что записи фактически были переданы на диск, прежде чем продолжить выполнение). Zil выполняет ту же роль, что и кэш с резервным питанием от батареи на высокопроизводительных RAID-контроллерах. Хотя задержка записи и IOPS потоковой записи - это то, что определяет хороший твердотельный накопитель Zil, Zil превыше всего не должен терять данные в случае потери питания. Многие подходящие устройства имеют суперконденсатор для завершения любых незавершенных операций без питания системы. Рекомендуется использовать твердотельные накопители SLC с высокой стойкостью записи (Intel X25-E), но более новые устройства используют ОЗУ с батареей / суперкаптом для записи в NAND в случае сбоя питания. ЗИЛ не обязательно должны быть большими, но с использованием только небольшой доли большого устройства (например, 8 ГБ из 300 ГБ твердотельного накопителя Intel 320 MLC) позволяют повысить эффективность записи. «Корпоративные» поставщики всегда рекомендуют зеркальные ZIL, мои рабочие нагрузки никогда не были такими важными.

Что касается конкретных продуктов, STEC сделал первые твердотельные накопители для проекта Sun Fishworks (как Logzilla, так и Readzilla) и имеет текущие устройства как для ZIL ( ZeusRAM $ 2500/8 ГБ), так и для L2ARC ( Zeus IOPS $ 3k / 400 ГБ ), которые оба настоятельно рекомендуются. Также стоит рассмотреть твердотельные накопители на основе PCIe, например, ZIL-специфичный DDRdrive x1 ($ 2k / 4GB) или любой большой PCIe SSD для L2ARC. Другие менее производительные (читай: дешевле) 2,5-дюймовые SSD-устройства также могут значительно повысить производительность, особенно при использовании в совокупности для L2ARC.


Вы уверены, что OCZ Vertex2 основан на ddr? Я вижу, что это основано на
nand

3
OCZ Vertex2Pro - это MLC NAND, но, в отличие от почти всех других твердотельных накопителей, он имеет суперкап, позволяющий завершать запись при отключении питания. DDRdrive X1 - это 4 ГБ DDR2, 4 ГБ SLC и суперкап, который копирует оперативную память в NAND за 60 секунд при потере питания. Logzilla - это оптимизированный для записи SLC NAND с суперкапом (тоже без DDR)
notpeter

спасибо, у меня есть 2 ssds Kingston (на базе Intel), которые я буду использовать в качестве кеша до тех пор, пока они не умрут или гарантия не закончится. затем посмотрите на ваши предложения.
disserman
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.