В этой статье немного больше углубимся в устройство твердотельных накопителей - SSD. По сути твердотельный накопитель состоит из контроллера и флеш памяти, об особенностях устройства и работы последней мы и поговорим. В настоящее время в ssd накопителях применяется 4 различных типа памяти SLC, MLC, TLC и QLC.
SLC - Single Level Cell по сути самая простая и обычная память с ячейкой состоящей из одного уровня, по сути вы можете в ячейку записать 1 или 0 в зависимости от положения резистора.
MLC - Multi Level Cell более сложное устройство, ячейка с несколькими уровнями, транзистор такой памяти запоминает не только один 1 или 0, а имеет несколько уровней сигнала, за счёт чего ёмкость увеличивается в два раза.
TLC - Triple Level Cell понятно, трёх уровневая ячейка, 3 бита информации, увеличение ёмкости в 4 раза по сравнению с SLC.
QLC - Quad Level Cell, 4 уровневая ячейка, в 8 раз больше информации, это в настоящее время самый доступный в силу дешевизны за еденицу ёмкости вид памяти, и самый распространённый.
На подходе уже PLC память с 32 уровнями заряда.
Опустим "электрическую" сложность работы памяти возрастающую от SLC к QLC, нас интересует скорость, а ещё в большей мере надёжность устройств, ведь мы занимаемся восстановлением данных.
Поговорим о скорости. Очевидно что самая большая скорость записи будет у чипов SLC так как в этом случае просто берём и записываем в свободную ячейку, тогда как в случае с QLC мы должны прочитать информацию из ячейки, добавить свои данные в "свободный" уровень и затем записать полученное в свободную ячейку. Количество "телодвижений" увеличивается с количеством уровней. Но ведь хочется чтобы ssd с QLC чипами тоже были достаточно быстрые, а не только дешевые. И производители нашли "выход". Ведь можно сначала пользоваться QLC как будто это SLC, просто берём и пишем в каждую ячейку только на один уровень, получается быстро. Если заполнились первые уровни, то начинаем писать во вторые, скорость конечно при этом теряем. Но так можно делать пока не заполнятся первые уровни во всех ячейках, а что дальше? А дальше тоже можно схитрить, как только у ssd появляется "свободное" время можно начать "уплотнение", данные из ячеек переносятся на 2, 3 и так далее уровни пока все уровни одних ячеек не заполнятся, а у других не освободятся первые уровни (полностью не освободится ячейка). Причём вторых ячеек должно стать как можно больше, далее начинаем писать опять на первые уровни освободившихся = пустых ячеек, получаем высокую скорость.
Как это всё отражается на надёжности? Очевидно что данные постоянно перемещаются и что будет если вдруг произойдёт например сбой по питанию? Большое количество циклов записи не связанных с непосредственной работой пользователя, как это сказывается на износе?
Дисков c SLC памятью в настоящее время уже не найти, MLC и TLC это в основном диски серверные(корпоративного уровня), все распространённые потребительские устройства собраны на QLC памяти. Теперь становится понятно почему иногда стараются собирать рейды из ssd в корпоративном секторе, и почему горе админы "слышавшие звон" собирают рейды на QLC дисках. А как считаете вы, нужны ли рейды на ssd?