[Перевод] Как флеш-память изменит структуру дата-центров

В нашем блоге на Хабре мы не только рассказываем о развитии облачного сервиса 1cloud, но и много пишем о новых технологиях, в том числе в области процессоров и памяти. Сегодня мы представляем вашему вниманию адаптированный перевод заметки инженера компании Altera Рона Уилсона о том, как развитие технологии флеш-памяти может изменить структуру существующих ныне дата-центров.

27278848b7f04a3890771fe504352cc4.JPG

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

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

Незаметно для нас, скорость появления новых технологий резко возросла. Флеш-память NAND с новой вертикальной архитектурой превзошла характеристики планарной флеш-памяти, позволив хранить значительные объемы данных в каждом кристалле. Новые энергонезависимые технологии, например память Intel-Micron 3D Xpoint, уже начинают поступать в массовое производство.

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

Технологии, которые делают это возможным


На выставке Flash Memory Summit в 2015 году можно было познакомиться с новыми технологиями хранения данных и увидеть, как они меняют мир дата-центров. Вице-президент компании Samsung Джим Эллиот (Jim Elliott) анонсировал начало продаж новой 256-гигабитной 48-слойной микросхемы с ячейками, хранящими по три бита информации.

«Такие чипы имеют в два раза большую скорость последовательного чтения и потребляют на 40% меньше мощности, по сравнению с нашими старыми 128-гигабитными устройствами», — комментирует Эллиот. Он добавил, что компания намерена разработать 1-терабитный чип на схеме со 100 слоями.

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

Однако достижения в сфере вертикальной памяти затмил анонс компаний Intel и Micron, которые объявили о разработке 3D Xpoint. Xpoint — это 128-гигабитная микросхема, которая обладает в тысячу раз меньшей латентностью, чем флеш. Эта технология способна породить новую категорию энергонезависимой памяти: достаточно быструю, чтобы использовать шину DRAM, и достаточно емкую, чтобы хранить большое количество данных.

Однако пока еще популярные дисковые накопители не отстают. «У жестких дисков все еще впереди, — говорит руководитель отдела облачных систем компании Seagate Фил Брейс (Phil Brace). — Мы поставляем диски с плотностью записи 1 Тбит/дюйм2. Разрабатываемые технологии, а именно черепичная магнитная запись, 2D-запись и термоассистируемая запись, смогут достигнуть плотности в 5 Тбит/дюйм2, а их стоимость будет составлять меньше одного цента за гигабит. Разница в 5–10 раз между ценами на жесткие диски и SSD сохранится».

Нет ничего удивительного в том, что компания, занимающаяся продажей жёстких дисков, дает такие оптимистичные прогнозы. Однако точку зрения Брейса поддерживают и компании-поставщики систем хранения данных.

«У флеш-памяти большое преимущество в скорости перед дисковыми накопителями, — говорит вице-президент Oracle Майкл Воркман (Michael Workman), — однако в облачных системах хранения это преимущество практически стирается. Огромная разница в цене так же играет свою роль. Через 5 лет в облачных хранилищах все еще будут использоваться высокопроизводительные жесткие диски, обладающие огромной емкостью».

Мы здесь ненадолго


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

fc3da6c50b604d9a8516b661d83aa753.png

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

На серверном поприще SSD начали вытеснять небольшие встроенные SAS-накопители с низкой задержкой. Что касается остальной части сервера, то большие пулы флеш-памяти стали альтернативой или интерфейсом для крупных дисковых массивов с высоким объемом. Также поступали предложения заменить хранилища «холодных» данных — это медленные высокоемкие диски, где хранятся редко используемые данные — флеш-массивами.

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

«Массивы флеш-памяти имеют более высокую пропускную способность, по сравнению с дисковыми накопителями, — объясняет Воркман, –, но интерфейс SAS, и, в некоторых случаях, шины PCI Express (PCIe), сводят это преимущество на нет». Стоит использовать спецификацию на протоколы доступа к твердотельным накопителям NVMe, а не расценивать флеш-массивы как клоны дисковых накопителей. Но даже NVMe не хватает надежности, доступности и удобства обслуживания (RAS), которые так необходимы для больших хранилищ данных. Поэтому архитекторы и разработчики систем хранения данных ищут новые решения. «SAS, SATA, и PCIe — это прошлый век», — заявляет Кевин Конли (Kevin Conley), технический директор Sandisk.

«Там, где нет возможности использовать PCIe, для подключения к большим хранилищам данных архитекторы используют множество других технологий», — говорит Воркман. В связи с ростом популярности плат 10 GE, свое применение может найти метод передачи SCSI-команд по 10-гигабитному Ethernet внутри IP-пакета. В качестве возможных альтернатив Воркман также рассматривает протоколы Fibre Channel и Infiniband.

Слабым местом такой системы является серверная сетевая карта, для которой интерфейс SAS не совсем подходит — возникает необходимость в новых интерфейсах. Более того, изменения в используемых дата-центрами программных средствах заставляют задуматься о том, как использовать флеш в облаке.

Эволюция программного обеспечения


В те дни, когда дата-центры принадлежали крупным IT-предприятиям, используемые ими программные средства были довольно однообразны. Для обращения к реляционным базам данных, хранимых на жёстких дисках, приложения использовали SQL-запросы. На разработку стратегий поиска часто используемых участков базы данных с целью их переноса на диски с высокой производительностью или помещения в кэш DRAM, тратилось очень много времени и усилий.

С появлением поисковых систем и методов анализа больших данных ситуация изменилась. В новых гипермасштабируемых дата-центрах данные оставались на дисковых носителях, вот только структурированные реляционные базы данных исчезли. Их заменили хранилища типа ключ-значение или просто кучи неструктурированных документальных данных. Среды MapReduce, такие как Hadoop, работали с параллельным потоком данных, поступающим с дисков в DRAM-массивы сервера для анализа. Однако все снова изменилось.

«Для загрузки одной страницы сайта Amazon необходимо около 30 микросервисов, — говорит директор по технической стратегии NetApp Вал Берковичи (Val Bercovici). — У вас могут быть хранилища ключ-значение Redis или Riak, графовая база данных Neo4j, для определения сопутствующих товаров, и документно-ориентированная база данных MongoDB. Все это нужно для создания одной страницы».

Главное отличие между новыми и старыми приложениями, такими как Hadoop, это их подход к хранению данных. Они, в большинстве своем, считали, что весь набор данных располагается в памяти. «Распространение API Memcached и появление Spark и Redis привело к тому, что приложения начали пожирать память, — предупреждает президент Diablo Technologies Рикардо Бадалоне (Riccardo Badalone). — Нам нужно найти альтернативу DRAM».

Новые архитектуры для нового кода


Облачные серверы, с точки зрения новых приложений, а не аппаратного обеспечения (гигабитов, контроллеров и шин), выглядят совсем по-другому. Основной задачей разработчиков должно быть не улучшение производительности современных дисковых архитектур, а поиск возможности перенести все данные в оперативную память. Постепенно происходит переход от передачи SCSI по 10 GE или Infiniband, к общему компоненту для всей памяти — шине DRAM.

«В скором времени появятся all-flash-хранилища данных, разработанные с использованием DDR, DRAM и DIMM на флеше», — говорит Воркман. Многие с ним соглашаются. Бадалоне говорит: «Настало время считать флеш памятью, а не хранилищем. Используя all-flash DIMM, мы можем передавать в четыре или даже в десять раз больше оперативных данных по шине сервера».
Результат — это кардинальные изменения в структуре хранилищ данных: небольшое количество DRAM становится большим массивом быстрой флеш-памяти. Если углубиться в структуру дата-центра, то мы увидим высокоемкие и высоконадежные SSD на десятки или сотни терабайт, которые работают с серверными DIMM в режиме прямого доступа — таким образом обходятся ОС и гипервизор, снижается латентность. Некоторые разработчики архитектур называют это дезагрегированием, когда накопители данных распределяются по всему дата-центру, как можно ближе к серверам.

В результате DRAM, DIMM-флеш, память, соединенная RDMA-каналом, и «холодные» хранилища формируют концентрические слои кэша, создавая бесшовную архитектуру, плавно переходящую от кэша первого уровня к постоянному хранилищу на другом конце сети (рисунок 2). С точки зрения приложения, все данные будут находиться в DRAM, а оператор дата-центра не будет замечать колебаний в величине задержек.

916323e7158b4268b08cb821cf483d4f.png

Рисунок 2 — Новая модель — это иерархия кэшей, в которой на каждом из слоев используются разные технологии памяти

Однако у этой системы есть недостаток. Небольшие задержки требуют синхронности в чтении и записи. «Временные характеристики DDR4 строго определены», — предупредил один из выступающих. Протокол DDR4 не работает с памятью, если её поведение по чтению детерминировано, но поведение по записи совершенно непредсказуемо.

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

Даже в старых SQL-приложениях запись происходит реже, чем считают управляющие дата-центров. Захер Финблит (Shacher Fienblit), главный инженер Kaminario, выяснил, что 97% пользователей записывают всю совокупность (их) данных реже одного раза в день. С хорошим контроллером, говорит он, можно удерживать уровень нагрузки по записи в пределе 15% от всех данных, поступивших за день. Буферы записи могут с этим справиться.

Две новые волны


Два технологических тренда могут ускорить переход на эти новые архитектуры. Один из них — это энергонезависимая память, о которой говорилось в анонсе Intel-Micron — 3D Xpoint.

2953becce5aa47479b58a389ce654bd9.png

Эта технология, по словам аналитика Дэйва Эглстона (Dave Eggelston), основана на элементе с изменением фазового состояния и переключателе с памятью на элементах Овшинского, что позволяет получить память с объемом, в 10 раз превышающим ресурс DRAM, и производительностью в 1000 раз большей, чем у флеш-памяти. «Это позволит создать новый уровень в иерархии», — говорит Чак Собей (Chuck Sobey).

Очевидно, что Intel с этим согласны. На последнем Intel Developer Forum компания объявила, что начнет разработку новой памяти на DIMM, а также контроллера, который расширит возможности протокола памяти DDR4 и даст возможность работать с Xpoint. Эти DIMM сформируют уровень энергонезависимой памяти, нужный разработчикам ПО.

Вторая технология очень часто упоминалась на Flash memory Summit: вычисления в оперативной памяти (in-memory computing). Многие из выступавших на саммите заметили, что переход на такое программное обеспечение как Spark, которое хранит все данные в памяти, создает естественные условия для работы именно с DIMM, а не ЦП.

«Если все будет идти таким чередом, то в будущем 90–95% вычислений будут происходить внутри постоянного кэша», — заявил генеральный директор Tegile Systems Рохит Кшетрапал (Rohit Kshetrapal). Естественно, Micron согласны с этим. Они многое поставили на разработанную ими технологию Hybrid Memory Cube, где кристалл процессор/интерфейс включен в блок элементов памяти.

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

Кэши SRAM серверного ЦП, DRAM, энергонезависимая высокоскоростная память и сетевые флеш SSD объединены, контроллер к контроллеру, в топологию, которая может изменяться вместе с приложениями. Большая часть данных дата-центра теперь будет храниться ближе к ЦП.

Терабайты данных начнут передаваться напрямую через шину памяти DDR. Дисковые накопители, обладающие низкой стоимостью и большой емкостью, займут свое место в качестве хранилищ «холодных» данных. Эта архитектура будет очень сильно отличаться от уже существующих.

© Habrahabr.ru