Обложка: Выбор системы хранения данных: 6 главных вопросов облачному провайдеру

Выбор системы хранения данных: 6 главных вопросов облачному провайдеру

Александр Салтанов

Александр Салтанов

Технический директор Mail.ru Cloud Solutions

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

В чём отличие блочных, объектных и файловых хранилищ?

Блочный принцип хранения данных лежит в основе работы всех традиционных «физических» дисковых устройств: накопителей на жёстких магнитных дисках (HDD), твердотельных накопителей (SSD, в том числе NVMe). А также гибридных разновидностей. Файлы, хранящиеся на таких носителях, разбиваются на «‎кусочки» одинакового размера и размещаются в ячейках-блоках, которые тоже имеют фиксированный размер. Каждому блоку присваивается идентификатор расположения. Благодаря ему организуется доступ к ним через сеть хранения данных SAN.

Файловый принцип хранения – например, NAS – также представляет собой файловую систему. Но хранение данных осуществляется по иерархической структуре. А доступ к ним предоставляется по таким идентификаторам, как имя файла или название каталога.

Объектный принцип хранения – это своего рода альтернатива SAN и NAS. Файловая система здесь заменяется на горизонтально-масштабированную, распределённую систему без какой-либо иерархии. Доступ к объектам в такой «плоской» структуре осуществляется по уникальным идентификаторам.

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

При этом для виртуальных дисков доступны некоторые дополнительные возможности. Среди них создание снимков состояния и шаблонов для новых дисков на их основе. А также смена типов дисков «на лету» и многое другое. По сравнению с традиционными физическими носителями, при использовании дисков в облаке вам не придётся разбираться в таких вещах, как типы виртуализации данных (RAID). А обслуживанием облачного хранилища занимаются инженеры облачного провайдера.

Как используются блочные системы хранения в облаке?

Выбор того или иного типа хранения данных в облаке зависит от множества факторов (потребностей бизнеса, наличия квалифицированных специалистов, бюджета). А также технических нюансов: преобладающего типа операций, используемых протоколов и приложений, вариантов дедупликации и резервирования, требований производительности и доступа к данным. В порядке возрастания производительности диски можно расположить так: HDD, SSD, SSD High IOPS, Low Latency NVMe.

Преимущества блочных дисков:

  • гарантированная производительность (IOPS, пропускная способность);
  • широкий выбор типов дисков и возможность их быстрого изменения,;
  • возможность создания снапшотов («снимков» файловой системы в опредёленный момент времени) и образов (шаблонов) дисков,
  • гибкость управления;
  • совместимость с классическими ОС и работа с дисками в привычной среде – как с локально подключёнными накопителями.

С другой стороны, спецификой блочных дисков является их ручное масштабирование, недоступность уменьшения размера существующего диска. А также сравнительно большая стоимость по сравнению с другими типами облачных хранилищ. Эти особенности и предопределяют сценарии применения блочных дисков в облаке. Так, самые недорогие и наименее производительные HDD чаще всего используются в качестве загрузочных разделов ОС и файловых хранилищ. Более производительные и дорогие SSD – для хранения СУБД, телеметрии и очередей сообщений.

Виртуальные диски High IOPS SSD, которые по характеристикам соответствуют физическим дискам SSD потребительского класса, – также применяются для хранения файлов в СУБД, аналитики и телеметрии, но в системах, требующих большей производительности. Наконец, сверхбыстрые диски Low Latency NVMe используются там, где необходимо обеспечить минимальные задержки: высокопроизводительные СУБД, аналитические приложения, кэш.

В чем отличие файловых систем хранения в облаке?

Файловые хранилища на нашей платформе предоставляются как сервис. С его помощью пользователь может создать удалённую файловую систему и смонтировать её на виртуальных машинах. Для таких хранилищ характерны возможность увеличения и уменьшения размера (правда, вручную), возможность создания снапшотов, поддержка большинством классических операционных систем. Это идеальная среда для хранения данных legacy-приложений, требующих протокола SMB/NFS.

Кроме того, файловые хранилища применяются для хранения документов, общего пользовательского файлового пространства или общего персистентного хранилища данных для узлов кластера Kubernetes. Их недостаток – ограниченность одновременного доступа полосой пропускания стандартного сетевого интерфейса.

Объектные хранилища в облаке: в чем фишка?

Объектные хранилища S3 могут стать более надёжной и дешёвой альтернативой HDD в большинстве сценариев использования. Помимо наименьшей стоимости среди всех типов облачных хранилищ, S3-хранилище обладает рядом других особенностей:

  • неограниченный объем хранимых данных;
  • идеальная среда для неструктурированных данных;
  • разграничение доступа за счёт ACL и префиксных ключей;
  • возможность одновременного использования большим количеством приложений;
  • стабильная скорость раздачи любых объектов независимо от числа одновременных обращений;
  • автоматическое и виртуально неограниченное масштабирование;
  • возможность настройки Webhooks для автоматической обработки при создании/удалении объектов;
  • возможность настройки жизненного цикла объектов.

Основное отличие S3-хранилища от блочных систем хранения состоит в том, что последние предназначены для использования виртуальными машинами и представляются как диски. А объектное хранилище доступно только по HTTP. Таким образом, доступность сервиса S3 обеспечивается на глобальном уровне – из нескольких ЦОД облачного провайдера.

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

Для обработки больших объектов здесь доступна дополнительная функциональность –  мультипоточная загрузка.

Например, в нашем облаке доступны три класса объектных хранилищ S3. Это S3 HotBox для хранения  «горячих» данных (с частым доступом), S3 IceBox для хранения «холодных» данных (с редким доступом) и Glacier для хранения «ледяных» данных (массивы от 100 Тб с очень редким доступом: бэкапы, архивы, логи).

Можно ли комбинировать облачные системы хранения?

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

Например, для размещения ресурсов интернет-магазина можно использовать обычные HDD под операционную систему, HDD или SSD под приложения, SSD или хранилище S3 для размещения медиаконтента. СУБД можно построить уже с использованием более производительных SSD High IOPS. А для кэша взять Low Latency NVMe.

На что обязательно обратить внимание при выборе облачной системы хранения?

Выбор облачной системы хранения зависит от бизнес-потребностей компании и технических особенностей её ИТ-инфраструктуры, которую необходимо разместить в облаке. Ключевые критерии выбора такие:

  • Планируемый порядок обращения к хранимым данным, преобладающий тип операций (чтение/запись) и их частота. Например, хранилище S3 при всех его преимуществах ориентировано на операции WORM и не подойдёт для частых модификаций объектов, обладающих большими размерами.
  • Требуемая производительность: IOPS, Throughput, Latency. Например, для систем, требующих низкой задержки и одновременно высокой пропускной способности, рекомендуется использовать блочное хранилище.
  • Методы доступа к данным (протоколы), используемые в классических приложениях. Например, файловые хранилища чаще всего наиболее предпочтительны при работе с протоколами SMB/NFS.
  • Требования к организации доступа к данным. Например, для доступа к хранилищу из нескольких зон доступности или из любой точки мира, где есть интернет, S3 будет лучшим выбором.
  • Цена. Среди облачных систем хранения данных наименьшая стоимость у хранилищ S3. При этом цена может гибко меняться в зависимости от типа хранимых данных. А оплата  производится только за фактически используемые ресурсы. В то же время для файловых хранилищ и обычных дисков цена определяется запрошенным объёмом ресурсов. И возрастает по мере увеличения производительности дисков.

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