Сжатие резервных копий (SQL Server)

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

Сжатие резервных копий было впервые представлено в выпуске SQL Server 2008 Enterprise. Начиная с версии SQL Server 2008 R2, сжатие резервных копий поддерживается в выпуске SQL Server 2008 R2 Standard Edition и всех выпусках с более широкими возможностями. Сжатую резервную копию можно восстановить в любом выпуске SQL Server 2008 и более поздней версии.

Ограничения

К сжатым резервным копиям применяются следующие ограничения.

  • В наборе носителей не допускается одновременное существование сжатых и несжатых резервных копий.

  • В предыдущих версиях SQL Server считывание сжатых резервных копий не поддерживается.

  • Резервные копии NT не могут совместно использовать магнитные ленты со сжатыми резервными копиями SQL Server.

Воздействие сжатых резервных копий на производительность

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

По умолчанию сжатие существенно повышает загрузку ЦП. Дополнительная нагрузка на ЦП может помешать выполнению других операций. Поэтому лучше создавать сжатые резервные копии с низким приоритетом в сеансах, доступ которых к ЦП ограничивается регулятором ресурсов. Дополнительные сведения см. в разделе Как использовать регулятор ресурсов для ограничения загрузки ЦП при сжатии резервной копии (компонент Transact-SQL).

В целях оптимизации производительности операций ввода-вывода резервной копии их можно изолировать от устройств или закрепить за устройствами в зависимости от оценки следующих видов счетчиков производительности.

  • Счетчики производительности операций ввода-вывода Windows, такие как счетчики физического использования дисков.

  • Счетчик Пропускная способность устройства, байт/с объекта SQLServer:устройство резервного копирования.

  • Счетчик Пропускная способность резервного копирования и восстановления/с объекта SQLServer:базы данных.

Сведения о счетчиках Windows см. в справке Windows. Сведения о работе со счетчиками SQL Server см. в разделе Использование объектов SQL Server.

Конфигурация

При установке сжатие резервных копий по умолчанию отключено. Такое поведение сжатия резервных копий по умолчанию определяется параметром конфигурации Параметр backup compression default на уровне сервера. Настройку по умолчанию на уровне сервера можно переопределить при создании отдельной резервной копии или во время планирования ряда регулярных операций резервного копирования.

Изменение значений по умолчанию на уровне сервера

Переопределение сжатия резервных копий по умолчанию

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

Коэффициент сжатия

Чтобы вычислить коэффициент сжатия резервной копии, используйте для резервной копии значения столбцов backup_size и compressed_backup_size из таблицы журнала backupset следующим образом.

backup_size:compressed_backup_size

Например, коэффициент сжатия 3:1 обозначает, что экономится около 66% места на диске. Чтобы запросить эти столбцы, можно выполнить следующую инструкцию Transact-SQL:

SELECT backup_size/compressed_backup_size FROM msdb..backupset;

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

  • Тип данных.

    Символьные данные можно сжать сильнее, чем другие типы данных.

  • Согласованность данных в строках на странице.

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

  • Шифрование данных.

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

  • Сжатие базы данных.

    Если база данных уже сжата, сжатие резервных копий может лишь незначительно сократить размер или не сократить его вообще.