Дедупликация

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Дедубликация»)
Перейти к навигации Перейти к поиску

Дедупликация (также дедубликация; от лат. deduplicatio — устранение дубликатов) — специализированный метод сжатия массива данных, использующий в качестве алгоритма сжатия исключение дублирующих копий повторяющихся данных. Данный метод обычно используется для оптимизации использования дискового пространства систем хранения данных, однако может применяться и при сетевом обмене данных для сокращения объема передаваемой информации.

В процессе дедупликации во время анализа идентифицируются и запоминаются уникальные элементы информации (англ. chunks). По мере выполнения анализа сравниваются все новые и старые элементы. При выявлении дублирующегося элемента он заменяется ссылкой на уникальное вхождение (или на него перенаправляется уже существующая ссылка), а пространство, занимаемое дубликатом, высвобождается. Таких повторяющихся элементов может попадаться очень много, благодаря чему объём, необходимый для сохранения массива данных, может быть сильно сокращён.

Однако дедупликацию не стоит путать с более традиционными алгоритмами сжатия, например LZ77 или LZO. Эти алгоритмы производят поиск в пределах определённого буфера отдельного файла (так называемое «скользящее окно»), тогда как алгоритм дедупликации производит поиск копий по огромному массиву данных.

Преимущества и области применения[править | править код]

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

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

Также дедупликация находит широкое применение в системах виртуализации, где дедупликация позволяет условно выделить повторяющиеся элементы данных каждой из виртуальных систем в отдельное пространство.

Ссылки[править | править код]