Структура дедупликации данных? - PullRequest
5 голосов
/ 16 ноября 2011

Я хочу интегрировать дедупликацию данных в программное обеспечение, которое пишу для резервного копирования образов vmware.Я не смог найти ничего подходящего для того, что мне нужно.Кажется, есть много полных решений, которые включают одну или несколько дедупликации.К ним относятся решения для хранения или резервного копирования, которые используют публичные или частные облака, специализированные файловые системы, сети хранения или устройства и т. Д. Однако мне нужно разработать собственное решение и интегрировать в него дедупликацию.Мое программное обеспечение будет написано на C #, и я хотел бы иметь возможность вызывать API, чтобы сказать ему, что нужно дедуплицировать.

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

Я предполагаю подход, который позволил бы мне как-то дедуплицировать порции данных на глобальном уровне (то есть некоторую форму глобальной дедупликации ).Чтобы быть глобальным, я предполагаю, что была бы какая-то центральная таблица поиска (например, индекс хэшей), которая сообщала бы дедуперу, что копия проверяемых данных уже хранится и ее не нужно снова сохранять.Куски могут быть на уровне файлов (Single Instance Storage или SIS) или дедупликации на уровне файлов / блоков.Последнее должно быть более эффективным (что более важно для наших целей, чем, скажем, обработка накладных расходов) и было бы моим предпочтительным вариантом, но я мог бы также заставить SIS работать, если бы пришлось.

У меня сейчасЯ много читал о программах других людей, которые делают дедупликацию, как я уже упоминал выше.Я не буду приводить здесь примеры, потому что я не пытаюсь подражать чьему-либо подходу специально.Скорее, я не смог найти решение для программистов и хочу знать, есть ли что-нибудь подобное.Альтернативой было бы накатить мое собственное решение, но, мягко говоря, это было бы довольно большой задачей.

Спасибо.

1 Ответ

2 голосов
/ 31 октября 2013

Глобальная дедупликация, как вы описали, обычно обрабатывается вне большинства типичных программ резервного копирования виртуальных машин, потому что CBT уже сообщает вам, какие блоки изменились в ВМ, поэтому вам не нужно каждый раз делать полное резервное копирование,Глобальная дедупликация, как правило, также требует значительных ресурсов, поэтому большинство людей вместо этого просто получат Data Domain и воспользуются преимуществами аппаратного (SSD) и программного обеспечения (пользовательские файловые системы, дедупликация переменной длины), которые выделены, настроены и оптимизированыдля дедупликации.Вероятно, создаваемая вами программа резервного копирования может использовать преимущества CBT и предложений Data Domain таким образом, что некоторые коммерчески доступные программы резервного копирования уже способны, например, [Veeam] [3].Больше информации о стратегии дедупликации Data Domain ([сегменты переменной длины] [4]).

ну, мне пришлось удалить два из моих URL, чтобы опубликовать этот ответ, потому что, очевидно, у меня недостаточно реп ... w / e

...