#MCT #Multi-Tier_Caching_Technology
Термины и определения
Технология многоуровневого кэширования (Multi-Tier Caching Technology, MTC) |
Технология Seagate, в которой используются комбинации различных схем памяти в сочетании с прошивкой для оптимизации управления потоками данных и повышения скорости чтения и записи |
Медиа-кэш (Media Cache, MC) |
Область магнитного накопителя со структурой адресации, предназначенная для временного хранения (буферизации) входящих и исходящих данных. Не используется для хранения пользовательских данных |
Основное хранилище (Main Store, MS) |
Область магнитного накопителя со структурой адресации, предназначенная для долговременного хранения пользовательских данных. Данные могут записываться с помощью технологии PMR или SMR |
DRAM (Dynamic Random Access Memory) |
Энергозависимая память, предназначенная для временного хранения данных для вычислений |
NAND Flash |
Энергонезависимая твердотельная память, предназначенная для хранения больших объемов данных |
PMR (Perpendicular Magnetic Recording) |
Перпендикулярная магнитная запись |
SMR (Shingled Magnetic Recording) |
Черепичная магнитная запись |
Технология MTC: основные преимущества
Требования к емкости накопителя могут значительно различаться в зависимости от поставленных задач. При том, что наибольшая скорость достигается при использовании динамической памяти (Dynamic Random Access Memory, DRAM), данные в DRAM не сохраняются при включении/ выключении компьютера, к тому же использование DRAM-кэша очень дорого по сравнению с другими технологиями. Данные во флэш-памяти NAND сохраняются при включении/выключении, но эта технология все еще остается очень дорогой по сравнению с магнитной записью. Медиа-кэш магнитных накопителей предлагает хорошую производительность при невысокой цене, но забирает на накопителе часть емкости у основного хранилища с PMR или
SMR.
Технология MTC разрешает данную дилемму путем комбинирования этих разных способов – с целью получения разных уровней производительности и емкости накопителей для разных ценовых сегментов. Настроив прошивку в соответствии с типом и размером кэша, конечный пользователь может добиться высокой производительности системы в целом. Поскольку потоками данных управляет встроенный контроллер дискового накопителя, при выполнении операций чтения/записи операционная система и приложение работают как единое целое.
Рисунок 1. Технология MTC для конечного пользователя – лучшее решение на каждый день в части производительности
Одноуровневое кэширование vs. Многоуровневое кэширование
В традиционных дисковых накопителях используется одноуровневое кэширование – для ускорения перемещения данных из хоста в основное (долговременное) хранилище магнитного накопителя. В такой схеме, показанной на рис. 2, DRAM выполняет несколько функций. При случайной записи данные поступают в небольшой по объему буфер DRAM и реструктуризируются перед переносом в основное хранилище. Снижение количества обращений во время записи значительно улучшает характеристики случайной записи. При последовательной записи (например, во время трансляции) DRAM помогает минимизировать количество фрагментированных записей путем объединения записей на диске. При чтении DRAM предоставляет также кэш предварительного просмотра, который помогает в осуществлении некоторых операций случайного чтения. Однако, преимущества использования кэша предварительного просмотра ограничены – из-за ограниченного объема DRAM.
Рисунок 2. Схема кэширования потоков данных в традиционных HDD
Технология MTC вводит различные уровни кэширования для дальнейшего повышения производительности и при чтении, и при записи. При реализации данной технологии, в зависимости от конкретного продукта Seagate, могут задействоваться все уровни кэширования или некоторые из них. В примере, показанном на рис. 3, для увеличения производительности дополнительно введены уровни флэш-памяти NAND и медиа-кэша. В этом примере память NAND используется для хранения наиболее часто читаемых данных, что увеличивает скорость чтения, тогда как медиа-кэш используется для объединения блочных записей малого размера. Так как объем памяти NAND составляет порядка нескольких гигабайт в сравнении с сотнями мегабайт DRAM, кэш перезаписывается порядка сотен раз. При выполнении фрагментированной записи производительность увеличивается за счет использования медиа-кэша, поскольку DRAM достигает предела своих возможностей. Медиа-кэш может поддерживать скорость, близкую к скоростям последовательной записи (до десятков гигабайт в секунду), что важно при работе с пиковыми нагрузками. Все пользовательские данные защищены и перемещаются в основное хранилище (или из него) минуя хост, что делает технологию MTC абсолютно прозрачной для пользователя.
Рисунок 3. Кэширование потоков данных в HDD с технологией MTC
Технология MTC: описание уровней производительности и емкости
Поскольку каждый уровень кэширования характеризуется соответствующим показателем цены на единицу емкости, важно знать характеристики производительности каждой составляющей многоуровневого кэширования и понимать, какую емкость на практике обеспечивает каждая составляющая. На рис. 4 приведены примерные характеристики емкости и производительности, а также специализированные характеристики каждой составляющей. Комбинация этих составляющих и соответствующей прошивки позволяет оптимизировать параметры производительности и емкости под конкретное приложение.
Рисунок 4. Емкость + Производительность + Специализированные характеристики + Прошивка = Высокофункциональный накопитель
Технология MTC (медиа-кэш + основное хранилище) в различных приложениях
Оценочные показатели использования медиа-кэша и основного хранилища при работе с различными приложениями приведены в табл. 1. Для каждого типа приложений указан примерный размер файлов и характеристики последовательной записи, последовательного чтения, случайной записи и случайного чтения, присущие данному виду нагрузки. Требования к типу и объему кэша определяются этими характеристиками. Например, вычислительные приложения работают с небольшими файлами, которые читаются и записываются на HDD случайным образом. Данный вид нагрузки характеризуется высокой вероятностью случайного чтения и случайной записи. Интенсивность использования медиа-кэша (и других видов кэширования) может быть высокой, в то время загрузка основного хранилища накопителя будет очевидно низкой. Напротив, приложения для систем видеонаблюдения с единичными накопителями работают с большими файлами при высокой вероятности последовательного чтения и записи. Такая нагрузка не предъявляет слишком высоких требований к медиа-кэшу для увеличения производительности, зато требует большей емкости основного хранилища накопителя.
Таблица 1
|
Размер файла, порядок |
Последовательная запись, вероятность |
Последовательное чтение, вероятность |
Случайная запись, вероятность |
Случайное чтение, вероятность |
Нагрузка на MC |
Нагрузка на MS |
Вычисления |
МБ |
Низкая |
Низкая |
Высокая |
Высокая |
Высокая |
Низкая |
Игры |
ГБ |
Средняя |
Средняя |
Низкая |
Низкая |
Низкая |
Высокая |
Видеонаблюдение |
ТБ |
Высокая |
Высокая |
Средняя |
Средняя |
Низкая |
Высокая |
NAS |
ГБ |
Низкая |
Низкая |
Высокая |
Высокая |
Высокая |
Высокая |
DVR |
ГБ |
Высокая |
Средняя |
Низкая |
Низкая |
Низкая |
Высокая |