Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Обучение от Mail.Ru Group.
Онлайн-университет
для программистов с
гарантией трудоустройства.
Набор открыт!

2004 г.

Храните свои терабайты в ящике

Эрнст Долгий
«Экспресс-Электроника» #8(117)/2004

О мудрец! Если тот или этот дурак
Называет рассветом полуночный мрак –
Притворись дураком и не спорь с дураками
Каждый, кто не дурак, - вольнодумец и враг!

Омар Хайям

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

Чтобы развенчать все сомнения в том, что система хранения информации может быть устойчивой даже при использовании компонентов с ограниченной надежностью, приведем пример сети Интернет. Согласитесь, чего-то более надежного из саморегулирующихся механизмов, чем Всемирная паутина, представить сложно. Ведь выход из строя любого узла глобальной сети никак не скажется на функциональности всей системы. Подобная идея лежит и в основе проекта IBM — Collective Intelligent Bricks (CIB), первые практические результаты которого были продемонстрированы на CeBIT ‘2004. Об этом и пойдет наш рассказ.

Постановка задачи

Когда новая система хранения информации, более известная под кодовым названием IBM IceCube («ледяной куб») только задумывалась, перед разработчиками была поставлена задача создать надежное решение, гибко масштабируемое, легко управляемое и имеющее емкость в сотни раз большую, чем у существующих систем. В идеале новая система хранения информации должна была работать автономно, то есть без присутствия администратора.

Надо отдать должное разработчикам — к решению поставленной задачи они подошли творчески, применив законы и следствия теории перколяции (протекания). Основываясь на ней, разработчики построили трехмерный массив (куб), состоящий из соединенных между собой элементов-кирпичиков, каждый из которых содержит несколько жестких дисков, процессор, сетевые интерфейсы и собственную систему охлаждения. Даже не вникая в тонкости теории протекания, можно понять, что такая схема позволила изначально не задумываться о решении таких проблем, как локализации данных внутри куба – этот вопрос попросту потерял свою актуальность. Кроме того, применение законов и следствий теории протекания дало возможность на уровне обслуживающего систему ПО решить такие задачи, как рассредоточение, репликация и резервирование данных между кирпичиками-элементами системы. Как следствие, созданная система требует минимального вмешательства обслуживающего персонала. Если какие-то из «кирпичиков» выходят из строя, они могут совершенно безболезненно оставаться внутри системы, нисколько не мешая работе последней. Система автоматически перекроит свою маршрутную таблицу, удалив из нее поврежденный элемент. При этом репликация данных и переконфигурирование системы происходит автономно. Если есть необходимость повысить надежность системы до начального уровня, вышедший из строя куб просто изымается и заменяется новым.

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

Решение на бумаге

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

Для того чтобы яснее представить обоснование предложенной учеными IBM схемы, обратимся к решению трех классических задач теории протекания. Две из них были приведены и практически доказаны в 1974 году американцами Б. Уотсоном (B. Watson) и П. Лизом (P. Leath).

Первый эксперимент американских ученых производился с экранной сеткой, состоящей из 137х137 узлов с расстоянием 6,35 мм, которые были припаяны к источнику постоянного тока и омметру. Путем поочередного разрезания контакта в узлах (рис. 1) решетки, инициированного случайным образом, исследователи добивались постоянного увеличения сопротивления сетки, таким образом, что в последний момент оно стало бесконечным. То есть связь между положительным и отрицательным зажимом генератора тока исчезла. Эта ситуация была названа порогом протекания. Если определить порог протекания как отношение количества разрезанных узлов к их общему числу, то при бесконечно большой решетке он будет равен 0,59. При условии использования трехмерной решетки порог протекания приобретает значение 0,31.

Эта задача получила название задачи узлов. Если же в исследуемой решетке перерезать не узлы, а их соединения (рис. 2), то задача преобразится в задачу связей. Ее решением для бесконечно двумерной решетки с бесконечно большим числом узлов является порог протекания, равный 0,5. Если же обратиться к трехмерной решетке, то ее порог протекания составит 0,25.

Третья задача самая сложная, поскольку наиболее реально отображает исследуемую нами систему и предполагает возможность исчезновения связи как в узлах, так и в их соединениях. Вновь представим себе квадратную решетку и предположим, что каждый квадрат этой решетки, или ячейка, может находиться в двух состояниях — «работы» или «поломки». При этом каждая ячейка занимается с вероятностью р независимо от состояния соседних ячеек. Эта модель называется ячеечной перколяцией. Занятые ячейки либо изолированы друг от друга, либо образуют группы, состоящие из ближайших соседей. Кластер – группа занятых ячеек решетки, связанных с ближайшим соседом по стороне ячейки. Две занятые ячейки принадлежат одному кластеру, если они соединены путем, состоящим из занятых ячеек (рис. 3), в ином случае кластер не существует (рис. 4). Занятым ячейкам соответствуют красные клетки, свободным – синие.

Один из простых способов изучения перколяции основан на использовании генератора случайных чисел. Вычислительная процедура при этом сводится к генерации случайного числа и его сравнению с некоторым порогом р (ячейка решетки считается «рабочей», если случайное число меньше р). Если вероятность рабочего состояния ячейки мала, можно ожидать, что будут присутствовать только небольшие, изолированные кластеры. По сравнению с этим, если р ~ 1, то можно ожидать, что большинство работающих ячеек образуют один большой кластер, который протянется от одной стороны решетки до другой. О таком кластере говорят, что он «перекидывается» через решетку, и называют соединяющим кластером. В нашем случае это обязательное условие для вертикальных стоек ячеек, так как «кубики» не могут висеть в воздухе и должны опираться друг на друга.

В пределе бесконечной решетки существует вполне определенная «пороговая вероятность» р такая, что для р> рс существует один соединяющий кластер или путь; для р < рс нет ни одного соединяющего кластера и все кластеры конечны. С физической точки зрения переход из состояния, в котором существует соединяющий кластер, в состояние, в котором данного кластера не образуется, является математической моделью. Для конечной решетки со стороной n всегда существует ненулевая вероятность того, что будет появляться соединяющий кластер, связывающий одну сторону решетки с другой. Для малых значений р эта вероятность составляет порядка рn. По мере увеличения n данная величина стремится к нулю, и для достаточно малых значений р будут существовать только конечные кластеры. Поскольку нам необходимо применить правило протекания для конечной решетки, мы определим рс(n) как такое значение р,, при котором впервые появляется соединяющий кластер. Для конечной решетки определение протекания произвольно, следовательно, вычисленное выражение рс зависит от критерия протекания. Не особо углубляясь в алгоритм решения этой задачи, скажем, что порог протекания для двумерного массива ячеек составляет 0,34, и всего 0,21 — для трехмерного.

Теперь, вооружившись теорией, мы можем перейти к описанию проекта IBM CIB.

Предложенное решение

«Кирпичик» системы хранения информации IBM CIB получил форму куба со стороной 15 см. В нем расположились 12 жестких дисков объемом 100 Гбайт, которые управляются трехканальным дисковым контроллером. Вычислительные мощности системы базируются на процессорах Intel Pentium (точную модель разработчик не называет), сетевые – на восьмипортовом Ethernet-коммутаторе. Последний подключается к емкостным соединителям, располагающимся на гранях куба и являющимся сетевыми интерфейсами. Через них осуществляется передача данных со скоростью до 10 Гбайт/с, при этом не нужно ни кабелей, ни патч-кордов. Таким образом, суммарная пропускная способность одного «кирпичика» составляет 60 Гбайт/с. Питаются «кирпичики» от источника постоянного тока с напряжением 48 В, которое подается через соединитель, совмещенный с сетевым разъемом. Охлаждение «кирпичей» централизированное – в каждом из них имеется вертикальный патрубок, стыкуемый с патрубком стоящего над ним куба. Патрубки замыкаются в контур системы водяного охлаждения, от него внутрь «кирпичиков» к наиболее горячим элементам подводятся тепловые трубки, хорошо известные по ноутбукам.

Продемонстрированный на CeBIT ‘2004 прототип состоял из 27 модулей-кирпичиков, каждый из которых имеет емкость около 1,2 Тбайт. Из них на стенде компании IBM была смонтирована готовая система, вмещающая около 26 Тбайт информации, чего, кстати, достаточно для размещения всех текстов Библиотеки конгресса США – самого большого хранилища книг в мире. Сейчас в лабораториях IBM тестируется система размером 3 м3, емкость накопителей составляет 1,2 Пбайт. Поражает также «выходная» скорость продемонстрированной на CeBIT ’2004 системы. Если допустить, что каждый «кирпич» оснащен внешним портом Gigabit Ethernet, то только одна его грань способна обеспечить пропускную способность порядка 10 Гбит/с.

Что касается надежности системы, как и в случае с системами хранения информации на основе RAID-массивов, данные в середине IceCube дублируются, а для возможности повторной репликации при выходе из строя какого-либо из элементов системы, она никогда полностью не заполняется данными. (Отсюда и заниженный объем готовой системы по сравнению с реальным – 1,2 Тбайт по 27 не равно 26 Тбайт.) При этом репликация данных производится не в середине «кирпичиков», а на дисках соседних модулей. То есть дублируются не дисковые накопители, а содержимое целых «кирпичиков». Это гарантирует, что даже при полном отказе одного из элементов конструкции, информация будет сохранена на одном из элементов, а значит, степень надежности такого решения значительно выше, чем у существующих систем. При этом информация сохраняется автоматически и нецентрализованно, то есть не требует использования выделенной логики, а потому не зависит от ее работоспособности. Здесь сети SAN и NAS также проигрывают, поскольку их работа конфигурируется централизованно — центральным сервером сети.

Что же произойдет при выходе из строя одного из «кирпичиков» такой системы? Понятно, что если «кирпич» находится на верхнем стеллаже куба, его можно просто отключить и заменить новым. А если расположение вышедшего из строя «кирпичика» внутреннее и без выключения и перезапуска всей системы не обойтись, то согласно теории протекания, проблема приобретает характер третьей задачи – ячеечной перколяции. В итоге из-за того, что каждый «кирпичик» имеет сетевой концентратор с разъемами во всех шести плоскостях, целостность системы не нарушится и связь между элементами поврежденного кластера куба разорвана не будет. Ведь согласно теории перколяции, порог протекания для кубической решетки составляет 0,21 и вряд ли будет достигнут мгновенно. Впрочем, даже в этом случае (выход из строя 80% «кирпичиков») целостность данных и функциональность системы окажется нормальной! Снизится лишь скорость обмена данными с внешним миром.

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

Напомним, что на практике надежность такой системы хранения будет повышаться одновременно с ее объемом. (Тогда как в классических системах все происходит с точностью до наоборот.) Ведь при рассмотрении теории перколяции мы отталкивались от условий, что решетка имеет бесконечные размеры. Следовательно, чем больше «кирпичиков» составляет систему, тем выше ее надежность. Кроме того, уже при переходе числа «кирпичиков» через сотню, в конструктиве системы могут применяться обычные жесткие диски с IDE-интерфейсом. В этом случае, учитывая их время наработки на отказ, только через пять лет с допустимой степенью вероятности не более чем 5% «кирпичиков» выйдет из строя, следовательно, связность между элементами конструкции гарантировано сохранится. При этом экономия средств при создании такой системы достигнет весьма ощутимых значений, ведь если взять аналогичную по параметрам систему производства ЕМС или Hitachi Data Systems на базе привычных SCSI-дисков, то только ее себестоимость превысит цену аналогичной по объему IBM IceCube как минимум в пять раз.

Но, как известно, в каждой бочке меда найдется своя ложка дегтя. В случае с IceCube это сравнительно невысокое быстродействие таких систем, а следовательно, и невысокая скорость работы установленных в ней накопителей. С другой стороны, у IBM есть планы по встраиванию в серийные образцы «кирпичиков» RAID-контроллеров уровня 1. В этом случае скорость системы существенно увеличится, а ее надежность все равно останется более высокой, чем у аналогов на базе зеркалирующих RAID-массивов. К тому же с ростом производительности Serial ATA-дисков и поголовной реализации в них логики NCQ, скорость IBM IceCube может не только достичь скорости работы конкурентных разработок, но и превзойти их.

Приложение. Рынок преодолевает петабайты

По данным IDC, объем продаж внешних дисковых систем составил в I квартале текущего года $3,5 млрд, что на 6,5% превышает показатели того же периода прошлого года. В отчете Worldwide Quarterly Disk Storage Systems Tracker указывается, что показатели предыдущих лет превышаются уже в течение трех последовательных кварталов. Рост рынка дисковых систем всех типов в I квартале составил 3,5%. В то же время увеличение емкости проданных накопителей значительно превысило показатели продаж и в I квартале достигло 39,5%, при увеличении поставок до 247 Пбайт. В сегменте внешних систем компании EMC удалось вытеснить HP с первого места. Теперь ей принадлежит 20,2% объема продаж. Доля HP составляет 18%, третье место у IBM (12%). Высокие показатели роста продемонстрировали Network Appliance и Dell — 22,3 и 21,5% соответственно. RAID-массивы составляют более 90% рынка внешних систем. В этой области первое и второе места по продажам также за EMC (22%) и HP (16,9%). При этом EMC продолжает лидировать и в сегменте сетевых дисковых систем, где ей принадлежит 28,5% продаж. Доля HP и IBM — 22,8% и 10,5% соответственно. Лидером продаж накопителей всех типов стала компания НР, которой принадлежит 23,2% рынка. Далее следуют IBM с 19,7% и EMC с 13,9%.

Новости мира IT:

Архив новостей

Последние комментарии:

Релиз ядра Linux 4.14  (7)
Среда 22.11, 11:59
Loading

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...