Принципы дедупликации

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

Таблица 1. Алгоритмы хеш-функций, поддерживаемые RuBackup
Алгоритм Длина хэш, бит Ссылка на описание

sha1

160

https://en.wikipedia.org/wiki/SHA-1

sha2

256, 512

https://en.wikipedia.org/wiki/SHA-2

skein

256, 512

https://en.wikipedia.org/wiki/Skein_%28hash_function%29

blake2b

256, 512

https://en.wikipedia.org/wiki/BLAKE_%28hash_function%29#BLAKE2

streebog

256, 512

https://en.wikipedia.org/wiki/Streebog

Вы можете определить параметры дедупликации при создании пула типа Блочное устройство. К ним относятся:

  • Размер блока дедупликации (от 16 КБ до 1 МБ),

  • Хеш-алгоритм,

  • Длина хеш (где поддерживается).

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

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