LINUX.ORG.RU

История изменений

Исправление Black_Shadow, (текущая версия) :

ZFS выделяет место кусками, кратными p+1 секторов (где p - уровень избыточности, 1 для raidz1, 2 для raidz2), добавляя пустые сектора, если это требуется.

RaidZ1 пишет как минимум 1 сектор чётности на блок, и как минимум 1 сектор чётности на страйп.

Таким образом, для блока в 1 сектор пишется ещё один сектор чётности.

Если размер блока равен 2 секторам, в случае с raidz1 запись такого блока займёт 4 сектора (2 сектора данных, 1 сектор чётности и 1 пустой сектор).

Для блока в 3 сектора оверхед будет таким же, потому что придётся записать ещё 1 сектор чётности - иначе выход 1 из 3 дисков из строя повредит данные (итого 2 сектора данных, 1 сектор чётности, 1 сектор данных, 1 пустой сектор, 1 сектор чётности).

Запись блока в 4 сектора выглядит так: 2 сектора данных, 1 сектор чётности, 2 сектора данных, 1 сектор чётности.

Исходная версия Black_Shadow, :

RaidZ1 пишет как минимум 1 сектор чётности на блок, и как минимум 1 сектор чётности на страйп. Таким образом, для блока в 1 сектор пишется ещё один сектор чётности.

Когда размер блока больше, ZFS выделяет место кусками, кратными p+1 секторов (где p - уровень избыточности, 1 для raidz1, 2 для raidz2), добавляя пустые сектора, если это требуется.

То есть, если размер блока равен 2 секторам, в случае с raidz1 запись такого блока займёт 4 сектора (2 сектора данных, 1 сектор чётности и 1 пустой сектор).

Для блока в 3 сектора оверхед будет таким же, потому что придётся записать ещё 1 сектор чётности - иначе выход 1 из 3 дисков из строя повредит данные (итого 2 сектора данных, 1 сектор чётности, 1 сектор данных, 1 пустой сектор, 1 сектор чётности).

Запись блока в 4 сектора выглядит так: 2 сектора данных, 1 сектор чётности, 2 сектора данных, 1 сектор чётности.