Производительность хранилищ

Поскольку компания LSI (теперь уже часть Avago Technologies) продала свое подразделение flash-контроллеров небезызвестной Seagate, основной областью их внимания вновь становятся решения для RAID и SAS (своеобразный back to basics). Чтоб отметить это «возвращение к корням», я решил перевести интересную статью Томаса Павела (Thomas Pavel), директора по продажам storage-подразделения EMEA. Не уверен насчет того, выложена ли данная статья в Интернет, по крайней мере пока не нашел.Наплыв данных и не думает стихать, подпитываясь требовательными приложениями, такими, например, как бизнес-аналитика, социальные медиа, видео-вещание и грид-вычисления. Этот беспощадный рост объемов данных ставит много сложных задач для системных архитекторов. Как обрабатывать такие огромные количества информации эффективно по цене? И, пожалуй, главный вопрос, как поддерживать на том же уровне (или даже улучшать) производительность хранилищ? Фактически, сложно найти в IT-индустрии тех, кого не затронул наплыв данных. Даже домашние пользователи генерируют фото и видео материалов больше как по количеству, так и по качеству, что, в свою очередь, требует увеличения размеров хранилищ в их ПК и смартфонах. Именно поэтому социальные сети, такие как Facebook, получают все больше информации. По материалам, опубликованным Facebook еще в 2012 году, объем данных, получаемых ими на протяжении дня достигал 0.5 петабайта.

При увеличении объемов данных, увеличивается и время, необходимое для доступа к ним. Это то, что стоит за постоянным улучшением технологий хранения, и в этой статье мы рассмотрим, как третье поколение SAS поможет преодолеть разные узкие места в системах хранения данных.

При разработке хранилищ данных, оптимизированных под высокую производительность, необходимо тщательно продумывать потенциальные узкие места. Это особенно сложно, с учетом того, что эти самые «бутылочные горлышки» меняются каждый раз, по мере обновления технологий хранения. Существует три наиболее важных элемента, влияющих на производительность: шина PCIe (Peripheral Component Interconnect Express) сервера, SAS-решение, реализованное в адаптере ведущего контроллера шины (Host Bus Adapter, HBA), и, непосредственно, диски, подключенные по интерфейсам Serial Attached SCSi или Serial Advanced Technology Attachment (SAS и SATA, соотественно).

SAS сейчас находится в третьем поколении развития, и каждое поколение удваивало характеристики производительности, начиная с исходных 3 Гб/с до 6 Гб/с и теперь 12 Гб/с. SAS, как и PCIe используют каналы, и высокопроизводительные системы хранения обычно используют много SAS-линий для поддержки высоких скоростей передачи данных. Как обычны HDD, так и твердотельные SSD теперь умеют поддерживать SAS или SATA интерфейсы.

Производительность систем хранения данных

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

Таблица 1 — примерные пропускные способности различных типов дисков и поколения SAS и PCIe.

48ab7d111d0f6ba9951344e5efb0cae7.png

Таблица 2 содержит несколько примеров конфигураций, демонстрирующих узкие места в том случае, когда достигается максимальный предел дисков (обычно являющихся самым медленным компонентом системы).

c9389cb4d007359102294abf6d24e60d.png

Таблица 2 — пример конфигураций хранилища, показывающих узкие места и использующих максимально число дисков с пиковой производительностью.

Как видно из таблицы, необходимость использовать больше дисков для увеличения емкости требует использования более современных поколений SAS и/или PCIe, либо же большего количества «SAS lanes». С другой стороны, в системе с небольшим количеством дисков, их сравнительно невысокая суммарная пропускная способность является узким место, поэтому пропадает необходимость «перенаворачивать» конфигурацию современными технологиями и/или увеличением каналов. Диски, приведенные для примера, имеют интерфейс 6 Гб/с и обладают пропускной способностью в 230 Мб/с и 55 Мб/с для 15K RPM HDD и SSD, соответственно.

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

Переход на 12 Гб/с SAS

Главная проблема при переходе на третье поколение SAS многим знакома: защита инвестиций. Многие организации уже вложили очень заметные суммы в SAS-диски и хотят сохранить эти вложения при переходе. Основная суть проблемы состоит в том, что из-за обратной совместимости, в третьем поколении стандарта SAS предусматривается замедление работы до самой медленной скорости передачи данных среди всех устройств системы.

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

К счастью, есть способ преодолеть данное ограничение. Для начала — немного объяснений, как работают расширители SAS. Расширители SAS позволяют одному (или нескольким) инициаторам коммуницировать сразу с несколькими целевыми устройствами, как это показано на рисунке 1. Расширители помогают масштабировать SAS, поскольку каждый из них способен поддерживать несколько дисков, что в свою очередь позволяет агрегировать их пропускную способность.

dc9a6fb7aa32f0d666f2776bbd1dcd1c.png

Рисунок 1 — два 48-портовых расширителя SAS, каждый из которых подключен к 12 инициаторам и 36 целевым устройствам.

На данном рисунке показана избыточная схема, в которой 48-портовые расширители подключены к двум RAID-контроллерам и дисковым хранилищам. Дополнительные хранилища могут подключаться в конфигурации daisy-chain. Некоторые расширители SAS поддерживают подключение до 2000 дисков в таком режиме.

В соответствии с третьим поколением стандарта SAS, если любой из SATA или SAS дисков работает со скоростью 6 Гб/с, интерфейсы RAID-контроллера тоже будут работать с этой скоростью. Но что если мы можем объединить пропускную способность двух 6 Гб/с дисков в один 12 Гб/с канал, так же как несколько каналов могут быть агрегированы в PCIe?

Такая агрегация пропускной способности целевых устройств (дисков) — то, что стоит за технологией агрегации пропускной способности, которую в LSI, an Avago Technologies Company, назвали DataBolt™. Данная технология позволяет немедленно увеличить количество операций ввода-вывода в секунду и общую пропускную способность, сохраняя инвестиции, сделанные в устройства SAS первого и второго поколения. Агрегация позволяет 12 Гб/с SAS работать с существующими 6 Гб/с устройствами, используя удвоенную скорость. Фактически, с агрегацией пропускной способности вообще пропадает обязательная необходимость использовать 12 Гб/с SAS диски для достижения максимальной производительности системы.

Агрегация пропускной способности работает благодаря использованию 12 Гб/с буферов на каждом порту, что позволяет использовать коммуникации на скорости в 12 Гб/с с дисками любой скорости, как SAS, так и SATA. Несмотря на то, что технология проприетарная, она работает полностью «внутри» расширителя, что позволяет всем интерфейсам быть полностью совместимыми со стандартом. Таким образом, 12 Гб/с SAS порт, подключенный к 6 Гб/с SAS диску будет работать с диском как обратно совместимый SAS порт на скорости 6 Гб/с, но система будет работать на скорости 12 Гб/сЗаключение

Узкие места в хранилищах всегда встречаются в ходе миграции разных поколений технологии. С появлением третьего поколения PCIe, например, таким узким местом стала SAS второго поколения. Технология LSI позволяет устранить это узкое место, делая PCIe узким местом в системе, использующей 12 Гб/с SAS.

© Habrahabr.ru