`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Дедупликация – эффективный инструмент сжатия данных

Статья опубликована в №42 (752) от 23 ноября

0 
 

Несмотря на выдающиеся достижения в области плотности записи на магнитных дисках и появление терабайтовых устройств в ПК домашних пользователей, темпы и объемы создаваемых данных, подлежащих хранению, сводят на нет все усилия индустрии. И для того чтобы объемы СХД не превышали разумных размеров, изобретают новые и более эффективные технологии сжатия данных. Дедупликация – самое последнее слово в этой области.

Напомним, что файл или другой набор данных редко хранится в последовательных или непрерывных блоках даже на однодисковых системах хранения, а в случае RAID-массива они, как правило, поблочно распределяются по всем дискам. В файловой системе ОС файл или набор данных представляются метаданными, включающими указатели, где блоки физически располагаются на дисках. К примеру, в ОС Windows эти ссылки находятся в таблице FAT (при соответствующем выборе файловой системы), а в UNIX/Linux – в индексных дескрипторах (inode). Несколько базированных на блоках утилит хранения, в том числе разностные моментальные снимки (differential snapshot) и дедупликацию в том числе, используют технику, в которой на один сегмент или блок данных может быть несколько ссылок одновременно из разных наборов метаданных.

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

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

Где выполняется дедупликация?

Дедупликация может выполняться в любом из трех мест: «на клиенте» – источнике данных, in-line – на пути передачи данных на целевое устройство или на самом целевом устройстве, после того как они будут записаны. Для последнего случая часто употребляют слово «постобработка» (post process). Все три метода имеют свои достоинства и недостатки. Их выбор зависит от инфраструктуры организации, ее бюджета и, что, конечно, важнее, требований бизнес-процессов. Рассмотрим кратко эти методы.

Дедупликация – эффективный инструмент сжатия данных
При создании пула дедупликации первый раз (А) имеется один набор метаданных с указателями на сохраненные блоки. При добавлении новых наборов данных (В) для каждого из них добавляется отдельный образ метаданных (MD2) наряду с новыми блоками. Здесь МD1 содержит указатели на первоначальные блоки; MD2 – указатели как на некоторые первоначальные, так и на новые блоки. При каждом резервировании система сохраняет полный образ метаданных набора данных, и только сегменты новых данных добавляются в пул блоков

Постобработка. Здесь сначала захватываются и сохраняются все данные, а уже затем выполняется поиск дублирующихся блоков. Это требует большего начального дискового объема, чем решения in-line, однако поскольку обработка осуществляется по окончании резервирования, производительность не играет особой роли. Ресурсы CPU и памяти для процесса дедупликации используются на целевом устройстве, что никак не влияет на быстродействие основного приложения и не мешает бизнес-операциям. Поскольку оно применяется для резервирования данных от многих источников, постобработка также предоставляет дополнительное преимущество – дедупликация данных от всех источников. Эта так называемая глобальная дедупликация позволяет еще больше сэкономить дисковое пространство. Здесь в общем пуле хранилища записываются блоки разных наборов данных, однако каждый из них имеет собственный образ метаданных (рисунок).

In-line. Анализ данных, вычисление хеш-значения и сравнение с индексом – все происходит на пути следования их от источника к получателю. Преимуществом является снижение требований к объемам дисковой системы хранения, однако взамен из-за необходимости проводить обработку информации скорость ее перемещения может уменьшиться. Исторически основная проблема при дедупликации in-line заключалась в том, что она часто фокусировалась только на том потоке, который передавался, и не принимала во внимание данные из других источников. Это могло ухудшить результаты глобальной дедупликации и использовать больше дискового пространства, чем на самом деле требуется.

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

Где встречается дедупликация?

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

Разные производители предлагали различные технологии: некоторые – постобработку, некоторые – in-line. У одних устройства были «простые» и не различали типы данных, другие наделяли их «интеллектом» с целью увеличения эффективности дедупликации.

Большинство производителей предлагают канал связи с серверами на базе Fibre Channel или iSCSI, однако может встречаться и подключение NAS. Логически эти устройства могут представляться как стандартный диск или эмулировать ленточную библиотеку. Последнее позволяет бесшовную интеграцию с решениями резервирования и восстановления данных, уже имеющимися у заказчика.

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

Что можно ожидать от дедупликации?

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

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

Различные технологии дедупликации могут оказывать разное воздействие на производительность резервного копирования. Казалось бы, постобработка должна влиять на нее менее всего, однако принимая во внимание необходимость дополнительного технологического объема на целевом диске и, следовательно, дополнительные операции ввода-вывода, воздействие на процесс от начала до конца может быть существенным. Обработка in-line, хотя и включается как составная часть процесса резервирования, становится более эффективной, по мере того как производители улучшают алгоритмы поиска индекса.

Коэффициент дедупликации часто используют в качестве главного маркетингового аргумента, поскольку он прямо говорит об экономии дискового пространства. В действительности на него оказывают влияние много факторов: сами данные, насколько они различны (чем менее, тем выше коэффициент), их локализация, планы резервирования (более полное повышает сжатие) и, наконец, алгоритм дедупликации. В некоторых случаях удается снизить объем используемого дискового пространства на 95%, однако организации должны приветствовать, если это число превышает 50%, поскольку и в таком случае удается достичь существенной экономии на капитальных и операционных расходах.

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

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

0 
 

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT