Анатомия облачной инфраструктуры хранения данных

Модели, функции и внутренние детали

Comments

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

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

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

Общая архитектура

Облачная архитектура хранения данных ― это прежде всего доставка ресурсов хранения данных по требованию в высокомасштабируемой и мультитенантной среде. Обобщенно облачная архитектура хранения данных представляет собой внешний интерфейс, который предоставляет API для доступа к накопителям (см. рисунок 1). В традиционных системах хранения данных это протокол SCSI, но в облаке появляются новые протоколы. Среди них можно найти внешние протоколы Web-сервисов, файловые протоколы и даже более традиционные внешние интерфейсы (Internet SCSI, iSCSI и др.). За внешним интерфейсом располагается уровень промежуточного ПО, который я называю логикой хранения данных. Этот уровень реализует ряд функций, таких как репликация данных и сокращение объема данных, по традиционным алгоритмам размещения данных (с учетом географического расположения). Наконец, внутренний интерфейс организует физическое хранение данных. Это может быть внутренний протокол, который реализует специфические функции, или традиционный сервер с физическими дисками.

Рисунок 1. Облачная архитектура хранения данных
Облачная архитектура хранения данных
Облачная архитектура хранения данных

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

Таблица 1. Характеристики облачной архитектуры хранения данных
ХарактеристикаОписание
УправляемостьСпособность управлять системой при наличии минимальных ресурсов
Метод доступаПротокол, через который предоставляются услуги облачного хранения данных
ПроизводительностьИзмеряется пропускной способностью и временем задержки
МультитенантностьПоддержка множества пользователей (арендаторов)
МасштабируемостьВозможность постепенного наращивания для удовлетворения новых требований или обработки повышенной нагрузки
Готовность данныхИзмеряется временем безотказной работы системы
УправлениеВозможность управлять системой — в частности, выбирая стоимость, производительность или другие характеристики
Эффективности храненияМера эффективности использования накопителей
СтоимостьМера стоимости хранения данных (обычно в долларах за гигабайт)

Управляемость

Развить навыки по этой теме

Этот материал — часть knowledge path для развития ваших навыков. Смотри Вычисления в облаке: введение в программное обеспечение как услуги

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

Метод доступа

Одним из самых ярких различий между облачной и традиционной системами хранения являются средства доступа к ним (см. рисунок 2). Большинство поставщиков предлагает разные методы доступа, однако общепринятыми являются API Web-сервисов. Многие из них реализованы на принципах REST, что подразумевает объектно-ориентированную схему, разработанную поверх HTTP (с использованием HTTP в качестве транспорта). REST-API без запоминания состояния просты и эффективны. REST-API реализуют многие поставщики облачных услуг хранения, включая Amazon Simple Storage Service (Amazon S3), Windows Azure™ и Mezeo Cloud Storage Platform.

Одна проблема API Web-сервисов заключается в том, что для того чтобы воспользоваться преимуществами облачной системы хранения, они требуют интеграции с приложением. Поэтому с облачными системами хранения для обеспечения непосредственной интеграции используются также общие методы доступа. Например, протоколы на основе файлов, такие как NFS/Common Internet File System(CIFS) или FTP, или протоколы на основе блоков, такие как iSCSI. Такие методы доступа предоставляют Nirvanix, Zetta, Cleversafe и другие поставщики услуг облачного хранения.

Вышеупомянутые протоколы наиболее распространены, но для облачного хранения подходят и другие. Один из самых интересных ― Web-based Distributed Authoring and Versioning (WebDAV). WebDAV также основан на HTTP и позволяет использовать Web в качестве ресурса для чтения и записи. В число поставщиков, использующих WebDAV, входят Zetta, Cleversafe и другие.

Рисунок 2. Методы доступа к облачным системам хранения данных
Методы доступа к облачным системам хранения данных
Методы доступа к облачным системам хранения данных

Можно найти и такие решения, которые поддерживают несколько протоколов доступа. Например, IBM® Smart Business Storage Cloud позволяет использовать протоколы на основе файлов (NFS и CIFS) и протоколы на основе SAN в одной и той же инфраструктуре виртуализации систем хранения данных.

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

Существует много аспектов производительности, но главная задача облачной системы хранения данных ― это перемещение данных между пользователем и удаленным поставщиком облачных услуг. Проблема кроется в TCP, главной рабочей лошадке Интернета. TCP управляет потоком данных на основе подтверждения приема пакетов из удаленного узла. Потеря или задержка пакетов приводит к применению мер по ограничению скоплений пакетов с дополнительным ограничением производительности во избежание глобальных сетевых проблем. TCP идеально подходит для перемещения небольших объемов данных через глобальную сеть Интернет, но не для доставки больших объемов данных – в этом случае время обмена данными (RTT) увеличивается.

Amazon с помощью Aspera Software решила эту проблему, исключив из уравнения TCP. Для ускорения массового перемещения данных во избежание больших RTT и крупных потерь пакетов разработан новый протокол Fast and Secure Protocol (FASP™). Ключом служит UDP, вспомогательный транспортный протокол по отношению к TCP. UDP позволяет узлу управлять заторами, передавая этот аспект протоколу прикладного уровня FASP (см. рисунок 3).

Рисунок 3. Протокол Fast and Secure Protocol от Aspera Software
Протокол Fast and Secure Protocol от Aspera Software
Протокол Fast and Secure Protocol от Aspera Software

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

Мультитенантность

Одна из ключевых особенностей облачной архитектуры хранения называется мультитенантностью. Это означает, что хранилище используется многими пользователями (или «арендаторами» [англ. - tenants]). Мультитенантность затрагивает многие уровни облачной системы хранения, от уровня приложения, где пользователям выделяются изолированные пространства имен, до уровня хранения, где отдельным пользователям или категориям пользователей могут выделяться отдельные физические накопители. Мультитенантность распространяется даже на сетевую инфраструктуру, которая соединяет пользователей с накопителями, обеспечивая гарантированное качество обслуживания и выделенную полосу пропускания для конкретного пользователя.

Масштабируемость

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

Масштабируемость должна обеспечиваться не только для самой системы хранения (функциональное масштабирование), но и для ее пропускной способности (масштабирование нагрузки). Еще одна ключевая особенность облачного хранения ― географическое распределение данных (географическая масштабируемость), которая позволяет располагать данные в максимальной близости к пользователю благодаря группе центров облачного хранения данных (путем миграции). В случае данных "только для чтения" возможны также репликация и распространение (как в сетях распространения аудио/видеоконтента). Это иллюстрируется на рисунке 4.

Рисунок 4. Масштабируемость облачной системы хранения данных
Масштабируемость облачной системы хранения данных
Масштабируемость облачной системы хранения данных

Облачная инфраструктура хранения должна обеспечивать и внутреннее масштабирование. Серверы и система хранения должны допускать изменение размера без всяких последствий для пользователей. Как обсуждалось в разделе Управляемость, облачная архитектура хранения должна поддерживать автономные вычисления.

Высокая готовность

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

Существуют интересные новые схемы обеспечения высокой готовности, такие как рассредоточение информации. Компания Cleversafe, которая предоставляет услуги хранения данных в частном облаке (см. ниже), использует алгоритм рассредоточения информации (Information Dispersal Algorithm - IDA) для повышения доступности данных перед лицом физических отказов и простоев сети. Алгоритм IDA, первоначально разработанный для телекоммуникационных систем Майклом Рабином, позволяет "нарезать" данные с помощью кодов Рида-Соломона для их восстановления в случае потери части данных. Кроме того, IDA позволяет настраивать количество долей данных, так чтобы заданный объект данных можно было разрезать на четыре доли при одном допустимом сбое или на 20 долей при восьми допустимых сбоях. Как и RAID, IDA позволяет восстанавливать данные из подмножества исходных данных при некоторых накладных расходах на коды ошибок (в зависимости от количества допустимых сбоев). Это иллюстрируется на рисунке 5.

Рисунок 5. Подход Cleversafe к обеспечению высокой готовности данных
CleverSafe's approach to extreme data availability
CleverSafe's approach to extreme data availability

Возможность нарезать данные с применением кодов коррекции Рида-Соломона позволяет географически распределять накопители. При количестве долей p и допустимом количестве сбоев m результирующие накладные расходы составляют p/ (p-m). Так, в случае, показанном на рисунке 5, накладные расходы для системы хранения при p = 4 и m = 1 составляют 33%.

Оборотная сторона IDA ― интенсивная обработка без аппаратного ускорения. Репликация ― еще один полезный метод, который используют многие поставщики облачных услуг. Он прост и эффективен, хотя и накладные расходы велики (100%).

Управление

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

Amazon, чтобы предоставить пользователям средства минимизации общих расходов на хранение данных, применяет Reduced Redundancy Storage (RRS). Данные реплицируются в инфраструктуре Amazon S3, но RRS позволяет реплицировать их меньшее количество раз с возможностью восстановления в случае потери данных. Это идеально подходит для данных, которые можно воссоздавать, или когда копии данных располагаются в разных местах. Nirvanix также обеспечивает репликацию на основе правил, допуская более детальный контроль над тем, где и как хранятся данные.

Эффективность

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

Чтобы сделать систему хранения более эффективной, нужно хранить больше данных. Общим решением является сокращение объема исходных данных, чтобы они занимали меньше физического пространства. Два способа достижения этой цели: сжатие— упаковка данных путем их кодирования с использованием различных представлений — и дедупликация— исключение всех дубликатов данных. Хотя оба метода полезны, сжатие предполагает обработку (перекодирование данных в инфраструктуру и из нее), а дедупликация ― вычисление сигнатур для поиска дубликатов.

Стоимость

Одна из наиболее примечательных особенностей облачного хранения данных ― способность обеспечить экономию. Это экономия на приобретении накопителей, их энергоснабжении, ремонте, а также на управлении хранением. Если рассматривать облачное хранение с этой точки зрения (включая SLA и повышенную эффективности хранения), оно может оказаться выгодным при определенных моделях использования.

Интересный пример решения облачного хранения представляет компания Backblaze (см. раздел Ресурсы). Она построила недорогую систему хранения специально для облачных предложений. Backblaze POD (полка накопителей) вмещает 67 ТБ дискового пространства в корпусе высотой 4U по цене менее $8000. Комплекс состоит из корпуса 4U, системной платы, 4-ГБ ОЗУ, четырех контроллеров SATA, 45 жестких дисков SATA емкостью по 1,5 ТБ и двух блоков питания. На системной плате Backblaze работает Linux® (с JFS в качестве файловой системы) и сетевые адаптеры GbE в качестве внешнего интерфейса с использованием HTTPS и Apache Tomcat. В программное обеспечение BackBlaze входят средства дедупликации, шифрования и RAID6 для защиты данных. Из предлагаемого BackBlaze описания ее POD (где в деталях показано, как построить свой собственный) видно, в какой степени компания может сократить стоимость хранения, что делает облако хранения данных целесообразным и экономически эффективным решением.

Облачные модели хранения данных

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

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

Рисунок 6. Облачные модели хранения данных
Облачные модели хранения данных
Облачные модели хранения данных

На рисунке 6 облачные модели показаны графически. В число поставщиков общедоступных облаков хранения данных входят Amazon и Nirvanix (которые предлагают хранение данных как услуги). Примерами поставщиков частных систем хранения служат IBM, Parascale и Cleversafe (которая предлагает программное обеспечение и/или оборудование для внутреннего облака). Наконец, поставщики гибридных облаков ― это Nirvanix, Egnyte и др.

Заключение

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


Ресурсы для скачивания


Похожие темы

  • Оригинал статьи: Anatomy of a cloud storage infrastructure.
  • Управляемость ― один из наиболее важных аспектов облачной инфраструктуры хранения данных. Чтобы быть экономически эффективной, облачная инфраструктура хранения данных должна быть самоуправляемой и основанной на принципах автономных вычислений. Об автономных вычислениях читайте в статьях IBM Research.
  • API REST - популярный метод доступа к облачным инфраструктурам хранения данных.
  • Хотя и не столь популярная, как REST, спецификация WebDAV также используется в качестве эффективного интерфейса облачных систем хранения данных. Egnyte Cloud File Server реализует WebDAV в качестве интерфейса для своей облачной инфраструктуры хранения данных.
  • IBM Smart Business Storage Cloud ― интересное решение облачного хранения данных для предприятия. Облачная система хранения IBM предлагает высокопроизводительные ресурсы хранения по требованию для решения корпоративных задач.
  • Методы доступа ― один из важнейших аспектов облачной инфраструктуры хранения, так как они определяют, как пользователи будут интегрировать в нее свои клиентские решения. Примеры поставщиков, реализующих API на основе файлов: Nirvanix и Zetta. Примеры поставщиков, реализующих интерфейсов на основе iSCSI: Cleversafe и Cloud Drive.
  • Компания Aspera Software создала новый протокол для передачи больших объемов данных через Интернет с учетом недостатков TCP. Подробнее о протоколе Fast and Secure Protocol ― в статье Быстрый способ оказаться в облаке.
  • Компания Backblaze решила построить свою собственную недорогую облачную систему хранения и сделала оборудование и программное обеспечение открытым. Подробнее о Backblaze и ее новаторском решении для хранения данных ― в статье Петабайты задешево: как создать недорогое облачное хранилище данных.

Комментарии

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Облачные вычисления
ArticleID=840919
ArticleTitle=Анатомия облачной инфраструктуры хранения данных
publish-date=10172012