Блочное хранилище

menu icon

Блочное хранилище

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

Что такое блочное хранилище?

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

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

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

Блочное хранилище в сравнении с объектным и файловым хранилищами

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

Хранилище объектов

Хранилище объектов или объектное хранилище разделяет файлы данных на отдельные блоки, называемые объектами. Такие объекты хранятся в одном хранилище, которое может охватывать несколько сетевых систем.

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

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

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

Более подробная информация приведена в статье «Объектное хранилище: полное руководство» и видеоролике «Что такое объектное хранилище?».

IBM Cloud Object Storage: Создано для бизнеса (04:10)

Файловое хранилище

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

Файловое хранилище отличается простотой настройки, однако для доступа к данным существует один-единственный путь, что снижает производительность по сравнению с блочным или объектным хранилищем. Кроме того, к файловому хранилищу применимы только стандартные протоколы уровня файлов, например New Technology File System (NTFS) для Windows или Network File System (NFS) для Linux. Это снижает удобство для пользователей в разнотипных системах.

Более подробная информация о файловом хранилище приведена в статье «Файловое хранилище: полное руководство».

В следующем видео Эми Блиа рассказывает о разных типах хранилищ и сценариях их использования:

Блочное хранилище в сравнении с файловым хранилищем (04:03)

Примеры

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

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

Более подробная информация о виртуальных машинах приведена в статье «Виртуальные машины: полное руководство».

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

Блочное хранилище и контейнеры

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

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

Чтобы узнать больше о поддержке контейнеризации блочным хранилищем, рекомендуем прочитать этот материал о контейнерах и постоянном хранилище.

В статьях «Контейнеры: полное руководство» и «Контейнеризация: полное руководство» приведена исчерпывающая информация о контейнерах и контейнеризации.

Сети хранения данных

Разработчики часто используют сети хранения данных (SAN) для развертывания блочного хранилища. SAN — компьютерная сеть, предоставляющая доступ к хранилищу данных. Сети SAN предоставляют блочное хранилище другим сетевым системам, как если бы эти блоки являлись локальными устройствами. Например, сервер может подключиться к SAN с использованием соединения с сетью данных, например Fibre Channel, Internet Small Computer System Interface (iSCSI) или Infiniband, и получить доступ к блоку, как если бы он являлся локальным томом. Сети SAN позволяют настраивать несколько массивов хранения данных и поддерживают подключение нескольких серверов.

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

Для получения дополнительной информации о технологии SAN загрузите публикацию «Введение в сети хранения данных».

Массивы RAID

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

Дополнительная информация о технологии RAID приведена в статье «Дисковые массивы».

ПО с открытым исходным кодом

В настоящее время набирают популярность решения с открытым исходным кодом, служащие альтернативой традиционным коммерческим продуктам SAN; практически ежедневно появляются новые проекты, а уже существующие проекты продолжают совершенствоваться и расширяться. Проект FreeNAS с открытым исходным кодом одновременно предоставляет блочное хранилище и программно-определяемые массивы RAID; открытое хранилище Openfiler также поддерживает блочное хранение данных и конфигурации RAID.

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

Блочное хранилище как услуга

Блочное хранилище как услуга (BSSaaS) относится к более обширной категории корпоративное хранилище как услуга (ESaaS). Пользователи предложений ESaaS, которым требуется облачное хранилище, могут выбирать между блочным, файловым и объектным хранилищем для решения своих задач в области хранения данных. В большинстве случаев при работе с ESaaS пользователи также должны будут выбрать решение IaaS или PaaS для развертывания приложений и серверов непосредственно в облаке.

Масштабирование блочного хранилища

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

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

Блочное хранилище и IBM

IBM Cloud Block Storage помогает партнерам, крупным предприятиям и организациям решать задачи, связанные с блочным хранением данных. Это блочное хранилище сочетает производительность локальных флэш-накопителей, надежность и эффективность SAN с возможностью настройки уровня IOPS и прогнозирования расходов.

Ознакомьтесь с дополнительной информацией об IBM Cloud Block Storage и описанием многочисленных функций и возможностей.

Зарегистрируйтесь для получения IBMid и создайте учетную запись IBM Cloud.