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