Избыточность посредством избыточного кодирования#
При использовании избыточного кодирования (технология Erasure Coding) Кибер Инфраструктура разбивает входящий поток данных на фрагменты определенного размера, затем разбивает каждый фрагмент на определенное количество (M) блоков размером 1 мегабайт и создает определенное количество (N) блоков четности для обеспечения избыточности. Все блоки распределяются по узлам хранилища, количество которых должно быть больше или равно M+N, то есть по одному блоку на узел. На узлах хранилища блоки хранятся в обычных фрагментах по 256 МБ (для хранения резервных копий используются фрагменты размером 2 ГБ), но такие фрагменты не реплицируются, поскольку избыточность уже достигнута. Кластер может выдержать отказ любых N узлов хранилища без потери данных.
Значения M и N указаны в названиях режимов помехоустойчивого кодирования. Например, в режиме 5+2 входящие данные разбиваются на фрагменты размером 5 МБ, каждый фрагмент разбивается на пять блоков размером 1 МБ и добавляются два блока четности размером 1 МБ для избыточности. Кроме того, если N равно 2, то данные кодируются с использованием схемы RAID6, а если N больше 2, то применяются помехоустойчивые коды.
На схеме ниже показан режим 5+2.
