Команда Alibaba Cloud Storage

В Части 1 серии статей мы кратко обсудили эволюцию носителей данных, а затем подробно обсудили технологию и аппаратное обеспечение твердотельных накопителей с энергонезависимой памятью (NVMe SSD). Во второй части мы проанализируем факторы производительности твердотельных накопителей NVMe.

Факторы производительности твердотельных накопителей NVMe

Данные о производительности, предоставленные спецификацией поставщика твердотельных накопителей NVMe, идеальны. Сравнение производительности между NVMe SSD и обычным диском показывает, что производительность NVMe SSD действительно намного лучше, чем производительность диска. Однако в реальном приложении производительность NVMe SSD может быть не такой хорошей, как ожидалось, и кажется, что производительность нестабильна. Правила, обеспечивающие идеальную производительность NVMe SSD, не найдены. По сравнению с обычным диском на производительность SSD влияет множество факторов. Чтобы проанализировать факторы производительности SSD, нам нужно сначала понять основные части SSD. Как показано на следующем рисунке, твердотельный накопитель состоит из следующих компонентов: центральный процессор, пропускная способность соединения PCIe, контроллер твердотельного накопителя и программное обеспечение FTL, пропускная способность серверной флэш-памяти NAND и флэш-носитель NAND. Основные факторы, влияющие на производительность SSD, можно разделить на аппаратные, программные и другие объективные факторы.

Аппаратные факторы

Флэш-память NAND

Различные типы флэш-памяти NAND имеют разную производительность. Например, производительность SLC лучше, чем у MLC, а производительность MLC лучше, чем у TLC. Твердотельные накопители, использующие разные типы флэш-памяти NAND, имеют разную производительность.

Количество серверных каналов (количество CE) и частота шины

Количество внутренних каналов определяет количество одновременных флэш-памяти NAND. Различные контроллеры SSD поддерживают разное количество каналов. Таким образом, тип контроллера SSD определяет пропускную способность серверной части SSD. Частота шины каналов флэш-памяти NAND также определяет производительность доступа.

Обрабатывающая способность контроллера SSD

Контроллер SSD выполняет сложную логику обработки FTL для преобразования запросов чтения и записи логических блоков в запросы чтения и записи флэш-памяти NAND. Требования к производительности контроллера SSD невелики, когда данные считываются или записываются в большие блоки, но чрезвычайно высоки, когда данные считываются или записываются в небольшие блоки. Возможности обработки контроллера SSD часто становятся узким местом для всей системы ввода-вывода.

Архитектура контроллера SSD

Как правило, контроллер SSD использует архитектуру симметричной многопроцессорной обработки (SMP) или массивно-параллельной обработки (MPP). Ранние контроллеры обычно используют архитектуру MPP. В архитектуре MPP несколько небольших процессоров соединяются друг с другом через внутреннюю высокоскоростную шину и взаимодействуют через аппаратную очередь сообщений. Ресурсы памяти используются как отдельные периферийные устройства, совместно используемые всеми процессорами. Эта архитектура похожа на распределенную систему, основанную на обмене сообщениями. Архитектура MPP имеет большое преимущество в производительности, но ее программирование сложно. Масштабируемость производительности архитектуры SMP зависит от программного обеспечения, и его программирование так же просто, как и на сервере x86. Архитектура контроллера влияет на общую производительность SSD. При проектировании твердотельных накопителей нам необходимо выбрать различные типы контроллеров твердотельных накопителей в зависимости от целей проектирования.

Емкость памяти

Для повышения производительности таблица сопоставления ресурсов внутри SSD находится в памяти. Объем памяти, занимаемый таблицей, составляет 0,1% от емкости SSD. Недостаточный объем памяти может привести к проблемам с подкачкой и выгрузкой таблицы сопоставления, что повлияет на производительность.

Пропускная способность PCIe

Пропускная способность интерфейса PCIe отражает пропускную способность интерфейса SSD. В настоящее время твердотельный накопитель NVMe использует режим доступа x4 lane, а максимальная разрешенная пропускная способность составляет 3 Гбит/с. Внешняя часть PCIe имеет тенденцию быть узким местом в производительности, когда пропускной способности флэш-памяти NAND внутренней части и возможностей процессора достаточно. Флэш-память NAND обладает высокой производительностью чтения. Производительность чтения SSD сильно ограничена шиной PCIe. Поэтому стандарт PCIe 4.0 необходимо быстро развивать.

Температура

Если флэш-память NAND работает на полной скорости, происходит значительное рассеивание тепла. Когда температура поднимается до определенного значения, система выходит из строя. Для решения этой проблемы в SSD есть система контроля температуры. Эта система отслеживает температуру и соответствующим образом регулирует производительность SSD, чтобы поддерживать температуру системы в пределах заданного порога. По сути, производительность SSD скомпрометирована для снижения температуры. Чрезмерно высокая температура окружающей среды влияет на производительность SSD и запускает внутреннюю систему контроля температуры для регулировки производительности SSD.

Срок службы

Вероятность битовых ошибок возрастает, поскольку флэш-память NAND постоянно стирается и используется повторно, что приводит к ухудшению производительности ввода-вывода SSD.

Программные факторы

Макет данных

При проектировании размещения данных необходимо учитывать параллельные блоки во флэш-памяти NAND, то есть как преобразовать операции ввода-вывода в параллельные операции флэш-памяти NAND. Например, размещение данных на многоканальной странице организовано путем чередования данных. Таким образом, последовательная полоса пропускания может быть оптимизирована.

Отправка во время GC и выравнивания износа

Такие операции, как GC, выравнивание износа и сохранение данных, приводят к большому объему внутреннего трафика флэш-памяти NAND. Внутренний трафик напрямую отражает коэффициент усиления записи SSD и потребление пропускной способности серверной части. Генерируемый внутренний трафик также можно назвать фоновым трафиком, который напрямую влияет на производительность внешнего интерфейса. Следовательно, фоновый трафик и пользовательский трафик должны быть правильно распределены для достижения оптимальной производительности ввода-вывода для пользователей.

Избыточное выделение ресурсов (OP)

Для решения таких проблем, как поврежденные блоки и сборщик мусора, некоторые запасные ресурсы зарезервированы внутри SSD. Эти зарезервированные ресурсы также называются ресурсами с избыточным выделением ресурсов (ресурсы OP). Больше ресурсов OP указывает на то, что в среднем во время сборки мусора перемещается меньше данных, и меньше фонового трафика, что уменьшает усиление записи и повышает производительность пользовательского ввода-вывода. Наоборот, если зарезервировано меньше ресурсов OP, производительность ухудшается, а усиление записи увеличивается. Когда емкость SSD невелика, часто указывается большее значение OP, чтобы продлить срок службы SSD.

Битовая ошибка

Внутри SSD используются следующие механизмы для исправления битовых ошибок, генерируемых флэш-памятью NAND: ECC, повторная попытка чтения, программный LDPC и RAIN. Когда частота ошибок по битам увеличивается, накладные расходы программного обеспечения также увеличиваются. Однако, если частота битовых ошибок находится в определенном диапазоне, ошибки могут быть исправлены аппаратно. Когда программное обеспечение участвует в исправлении битовых ошибок, увеличивается производительность.

Алгоритм FTL

Алгоритм FTL влияет на производительность SSD. Дизайн и реализация FTL различаются в зависимости от назначения SSD. В твердотельных накопителях корпоративного класса обычно применяется плоское отображение и таблицы отображения кэша, которые занимают много места в памяти для обеспечения высокой производительности. В твердотельных накопителях, ориентированных на потребителя, обычно применяется многоуровневое хранилище посредством обмена метаданными на основе pSLC + TLC для снижения стоимости. Они также могут кэшировать метаданные в пространстве памяти хоста для снижения затрат. Однако оба эти метода влияют на производительность.

Алгоритм планирования ввода-вывода

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

Драйвер

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

Шаблон ввода/вывода

Шаблон ввода-вывода влияет на структуру данных GC внутри SSD, что косвенно влияет на объем данных, перемещаемых в процессе GC, и определяет внутренний трафик. Шаблон полного последовательного ввода-вывода является наиболее удобным для GC шаблоном в SSD. Когда SSD использует шаблон полного последовательного ввода-вывода, усиление записи близко к 1, и SSD достигает оптимальной производительности. Когда SSD использует шаблон произвольного ввода-вывода на основе небольших блоков, во время сборки мусора перемещается больше записей данных, и производительность значительно снижается. В практических приложениях шаблон ввода-вывода должен быть оптимизирован через локальную файловую систему для достижения оптимальной производительности.

Другие объективные факторы

Время использования SSD

После длительного использования флэш-память NAND внутри SSD становится хуже, а частота битовых ошибок увеличивается. Внутри SSD имеется полный механизм восстановления битовых ошибок, который включает как аппаратное, так и программное обеспечение. Когда частота битовых ошибок достигает определенной степени, аппаратный механизм выходит из строя, и для восстановления перевернутых битов необходимо использовать программное обеспечение (прошивку). Однако программный механизм вызывает большую задержку, что влияет на производительность SSD. В некоторых случаях производительность твердотельного накопителя может ухудшиться после того, как твердотельный накопитель был отключен в течение определенного периода времени, поскольку в течение этого периода во флэш-памяти SSD NAND произошла утечка заряда. В результате увеличивается частота битовых ошибок. Производительность SSD зависит от времени и в основном связана с частотой ошибок по битам во флэш-памяти NAND.

Температура окружающей среды

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

В следующих разделах описывается влияние шаблонов GC и ввода-вывода на производительность SSD с точки зрения программного обеспечения.

Сбор мусора (GC)

SSD имеет очень тяжелый программный слой внутри. Этот уровень используется для решения проблем с флэш-памятью NAND и записывает данные в режиме лог-структуры. Однако в режиме лог-структуры возникает проблема со сборкой мусора (GC). Для внешнего интерфейса трафик GC — это фоновый шум. Трафик GC существует не постоянно, поэтому производительность SSD сильно колеблется. Когда SSD пуст, его производительность оптимальна. После того, как SSD используется какое-то время, его производительность сильно ухудшается. В этом процессе ГК играет важную роль. Спецификация, выпущенная вместе с твердотельным накопителем корпоративного класса, содержит показатели стабильной производительности твердотельного накопителя. Во время теста производительности старение SSD необходимо предварительно обработать. Во время предварительной обработки последовательные данные записываются на полный SSD, а затем случайные данные дважды записываются на SSD. После предварительной обработки на твердотельном накопителе проводится тест случайного чтения/записи, чтобы получить значения производительности в установившемся режиме, предусмотренные спецификацией. Стационарные значения производительности можно считать минимальными значениями производительности SSD.

На приведенном выше рисунке показано сравнение производительности твердотельных накопителей нескольких поставщиков в пустом и постоянном состояниях. Разница между производительностью в устойчивом состоянии и пустом состоянии огромна. В стабильном состоянии GC внутри SSD выполняется на полной скорости, что занимает много пропускной способности серверной части флэш-памяти NAND. Отношение фонового трафика к внешнему трафику отражает коэффициент усиления записи SSD. Чем больше коэффициент усиления записи, тем большую полосу пропускания занимает фоновый трафик и тем хуже производительность интерфейса SSD. На коэффициент усиления записи влияют многие факторы, такие как OP и шаблон ввода-вывода приложения. Улучшенный шаблон ввода-вывода приложения снижает коэффициент усиления записи и фоновый шум, а также повышает производительность внешнего интерфейса. Например, если данные записываются на SSD в полностью последовательном режиме, коэффициент усиления записи близок к 1, а трафик данных, генерируемый сборщиком мусора, невелик (практически не генерируется фоновый трафик). Пропускная способность серверной части почти полностью занята трафиком бизнес-данных, поэтому производительность SSD идеальна.

GC — важный фактор, влияющий на производительность SSD. Кроме того, GC приводит к увеличению амплификации записи и сокращает срок службы SSD. С точки зрения программного обеспечения мы можем оптимизировать шаблон ввода-вывода для оптимизации внутреннего GC SSD, чтобы еще больше повысить производительность SSD и продлить срок службы. Мы должны применить этот метод оптимизации к следующему поколению более дешевых твердотельных накопителей QLC, чтобы они могли полностью соответствовать фактическим требованиям бизнес-приложений.

Схема ввода/вывода

Шаблон ввода-вывода оказывает серьезное влияние на производительность SSD в основном в следующих аспектах:

  1. Коэффициент усиления записи зависит от используемого шаблона ввода/вывода. Занимаемая пропускная способность внутренней флэш-памяти NAND зависит от коэффициента усиления записи. Полный последовательный шаблон — лучший шаблон ввода-вывода для SSD. Когда внешнее приложение записывает данные на SSD в полном последовательном порядке, коэффициент усиления записи близок к 1. Фоновый трафик внутри SSD практически незначителен, а производительность внешнего интерфейса оптимальна. На практике трудно записывать данные в полном последовательном шаблоне. Однако мы можем максимально реализовать последовательную запись за счет оптимизации.
  2. Некоторые запросы могут быть нарушены другими запросами; запросы на чтение и запись могут мешать друг другу. Небольшие запросы, как правило, мешают большим запросам, что приводит к увеличению задержки для небольших запросов. Это также проблема, которая часто возникает на жестких дисках. Из-за серьезной асимметрии чтения/записи флэш-памяти NAND запросы на чтение и запись могут мешать друг другу. В частности, запросы на запись сильно влияют на производительность запросов на чтение.

Использование шаблона последовательной записи для оптимизации производительности SSD

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

SSD записывает данные в лог-структурированном режиме. Параллельно записываемые данные ввода-вывода объединяются в большие блоки данных в хронологическом порядке. Затем большие блоки данных записываются во флэш-память NAND в виде полос страниц. Несколько полос страниц записываются в один и тот же блок GC (фрагмент или суперблок). Когда блок ГХ заполнен, он переходит в запечатанный режим (только для чтения). Затем выделяется новый блок GC для записи последующих данных. Если несколько приложений одновременно записывают случайные данные на SSD в этом режиме, данные этих приложений чередуются и сохраняются в одном и том же модуле GC. Как показано на следующем рисунке, жизненный цикл данных зависит от приложения. Когда блок GC необходимо утилизировать, переносятся большие объемы данных, что приводит к увеличению записи и влияет на производительность и срок службы SSD.

Как упоминалось выше, записи данных различных приложений могут чередоваться и храниться в одном и том же блоке GC. Эта проблема в основном связана с чередующимся хранением данных разных «горячих» и «холодных» уровней. Для GC лучше всего хранить холодные или горячие данные одного уровня в одном и том же модуле GC. По этой причине Samsung выпустила SSD с несколькими потоками, который позволяет хранить данные из разных приложений в разных блоках потока (блоках GC), тем самым повышая эффективность GC и уменьшая усиление записи. Многопоточный SSD использует явный дизайн, который требует изменений в интерфейсах и приложениях SSD. Мы можем добиться аналогичного эффекта, записывая большие блоки в шаблоне последовательного ввода-вывода. Предположим, что в SSD есть только один поток, и все приложения используют большие блоки данных для записи данных. Во временном сегменте только одно приложение записывает данные на SSD. Таким образом, данные, хранящиеся в модуле GC, становятся последовательными и регулярными. Как показано на следующем рисунке, холодные или горячие данные одного уровня сохраняются в одном и том же блоке GC после использования вышеупомянутого метода. Объем данных, переносимых во время сборки мусора, значительно сокращается, и соответственно уменьшается фоновый трафик.

На практике описанный выше шаблон ввода-вывода трудно использовать, потому что приложения редко генерируют очень большие детализированные запросы. По этой причине мы можем использовать высокопроизводительную память Optane в качестве кэша записи SSD при проектировании системы хранения. Запросы на запись от различных внешних приложений сначала записываются на постоянный носитель Optane и объединяются в большие блоки данных на этом носителе. Затем большие блоки данных записываются на SSD. Таким образом, последовательная запись может быть достигнута в максимально возможной степени для повышения производительности и срока службы SSD.

Влияние шаблона конфликта чтения-записи на производительность SSD

Как показано на следующем рисунке, флэш-память NAND имеет серьезную асимметрию чтения/записи. Задержка стирания блока и программы страницы может быть намного больше, чем время чтения страницы. Если операция чтения конфликтует с операцией стирания или программирования на том же канале флэш-памяти, на операцию чтения влияет операция стирания или программирования. Это важный фактор, влияющий на производительность чтения при совмещении операций чтения и записи.

При практическом использовании часто обнаруживается, что результаты тестирования приложения не соответствуют значениям, указанным в спецификации SSD, а фактические значения меньше, чем значения, указанные в спецификации. Значения показателей производительности, предоставляемые спецификацией, обычно рассчитываются в случае операций чистого чтения или чистой записи. Когда операции чтения и записи смешаны, фактические значения значительно отличаются от значений, указанных в спецификации.

Результаты тестирования показывают, что существует большой разрыв в производительности между разными твердотельными накопителями при смешанном чтении и записи. Когда твердотельные накопители находятся в стабильном состоянии и приложения используют шаблон произвольного чтения, вы можете обнаружить, что твердотельные накопители имеют разные возможности защиты от помех, когда небольшой объем данных передается в последовательной записи. В случае нарушения записи производительность чтения некоторых твердотельных накопителей резко падает, задержка быстро увеличивается, и качество обслуживания не может быть гарантировано. На следующем рисунке показаны результаты тестирования двух разных твердотельных накопителей в одинаковых ситуациях. Результаты показывают, что разные твердотельные накопители имеют разные возможности защиты от помех. Производительность чтения твердотельных накопителей, которые имеют мощную функцию защиты от нарушения записи, не падает резко.

Почему некоторые твердотельные накопители имеют мощную защиту от нарушения записи? Загадка кроется в планировщике ввода/вывода внутри SSD. Планировщик ввода/вывода планирует запросы на запись, чтение и стирание. SSD-накопители, использующие разные алгоритмы планировщика, имеют разные возможности защиты от помех. В настоящее время многие флэш-памяти NAND поддерживают функцию приостановки программирования или стирания. В процессе планирования ввода-вывода команду Suspension можно использовать для приостановки программы или удаления запросов, чтобы сначала можно было запланировать запросы на чтение. Это уменьшает задержку запроса на чтение для повышения производительности чтения.

Конфликт чтения-записи является важным фактором, влияющим на QoS ввода-вывода в твердотельных накопителях. Качество обслуживания SSD можно улучшить за счет оптимизации планировщика ввода-вывода, но по-прежнему невозможно оптимизировать качество обслуживания SSD за счет взаимодействия с программным обеспечением хранилища. Для достижения оптимальной производительности SSD и QoS нам необходимо использовать технологию открытого канала. На самом деле открытый канал — это просто метод иерархического разделения аппаратного и программного обеспечения. Вообще говоря, логику внутри SSD можно разделить на уровень управления физическими ресурсами для ресурсов NAND и уровень отображения ресурсов, ориентированный на структуру данных. Управление физическими ресурсами может быть размещено внутри SSD, поскольку оно тесно связано с флэш-памятью NAND. Традиционный твердотельный накопитель NVMe должен предоставлять стандартный интерфейс блочного устройства, поэтому уровень сопоставления ресурсов должен быть реализован внутри твердотельного накопителя. Со сквозной точки зрения уровень отображения ресурсов может быть объединен с программным уровнем хранения. С этой целью уровень отображения ресурсов отделяется от внутренней части SSD и интегрируется в программный уровень хранилища. После того, как слой отображения ресурсов удален из SSD, необходимо определить новый интерфейс SSD. Открытый канал — один из таких режимов интерфейса.

Мы провели много исследований SSD QoS в распределенной файловой системе Apsara и выдвинули концепцию Object SSD, которая представляет собой новый режим интерфейса SSD. Мы используем объектный режим для чтения данных и записи данных на SSD. Каждый объект использует режим операции добавления записи. В этом режиме интерфейс может быть легко интегрирован с распределенной файловой системой Apsara. С Object SSD упрощается большая часть работы внутри SSD, планирование ввода-вывода становится более гибким, а программное обеспечение хранилища взаимодействует с SSD для оптимизации производительности ввода-вывода и максимального качества обслуживания.

Модель анализа производительности записи SSD

Трафик данных внутри SSD делится на две категории: трафик данных пользователя внешнего интерфейса и внутренний фоновый трафик данных. Трафик внешних пользовательских данных и фоновый трафик данных объединяются в внутренний трафик флэш-памяти NAND. Когда фонового трафика данных нет, полоса пропускания флэш-памяти NAND полностью занята трафиком пользовательских данных. В этом случае производительность SSD оптимальна. Когда SSD имеет большое усиление записи, он создает большой объем фонового трафика данных, который занимает полосу пропускания флэш-памяти NAND, что приводит к ухудшению производительности пользовательского ввода-вывода внешнего интерфейса. Чтобы стабилизировать производительность внешнего интерфейса ввода-вывода, планировщик внутри SSD уравновешивает внешний и фоновый трафик данных, чтобы обеспечить согласованность производительности внешнего интерфейса. Доля фонового трафика данных отражает коэффициент усиления записи SSD. С точки зрения занятости пропускной способности флэш-памяти NAND мы можем проанализировать производительность SSD в стабильном состоянии.

Предположим, что коэффициент усиления записи равен WA, общая полоса пропускания, занятая последовательной записью, равна B, а трафик записи пользовательских данных (трафик произвольной записи) равен U. Тогда фоновый трафик данных, вызванный усилением записи GC, равен: (WA — 1) х U

Операции чтения и записи занимают полосу пропускания. Таким образом, общая занимаемая полоса пропускания рассчитывается следующим образом:

B = 2 x (WA — 1) x U + U

Тогда мы можем получить:

U = B/[2 x (WA — 1) + 1] = B/(2 x WA — 1)

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

Согласно спецификации, пропускная способность последовательной записи Intel P4500 составляет 1,9 Гбит/с. Исходя из приведенной выше формулы, трафик пользовательских данных внешнего интерфейса в режиме произвольного доступа составляет: 1900/(2 x 4–1) = 270 Мбит/с. IOPS составляет 67 КБ. Результат соответствует заявленному в спецификации.

На следующем рисунке показано сравнение между задержкой случайной записи Intel P4500 и Samsung PM963 и значениями, полученными по формуле. Результаты согласуются.

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

Резюме

Технология флэш-памяти быстро развивается. Сосредоточенные на флэш-накопителе, флэш-носители, контроллер SSD, программное обеспечение системы хранения и аппаратная платформа хранения — все это развивается. Ценность флэш-памяти для хранения данных очевидна. Использование флэш-памяти в ИДЦ является тенденцией. На производительность NVMe SSD влияет множество факторов. На программном уровне мы можем оптимизировать шаблон ввода-вывода, чтобы повысить производительность SSD и системы хранения в целом.

Ссылка: https://www.alibabacloud.com/blog/storage-system-design-analysis-factors-affecting-nvme-ssd-performance-2_594376?spm=a2c41.12516652.0.0