Последнее изменение раздела: 2011-04-22

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

Обнуление страниц в системе Exchange 2010 с пакетом обновления 1 (SP1)

В системе Exchange Server 2010 с пакетом обновления 1 (SP1) функция обнуления страниц включена по умолчанию. Ее невозможно отключить. Операции обнуления страниц записываются в файлы журнала транзакций, чтобы обнуление страниц для всех копий базы данных выполнялось аналогичным образом. То есть обнуление страницы в активной базе данных приведет к обнулению этой страницы в пассивной базе данных после того, как пассивная база данных воспроизведет журнал транзакций с записью об обнулении страницы. Расширенный обработчик хранилищ (ESE) не позволяет определять приоритет повторного использования обнуленных страниц над выделением нового пространства. Таблицы, для которых назначено последовательное выделение места на диске, будут преднамеренно пропускать фрагментированные или обнуленные страницы в пользу новых или свободных последовательных страниц. Этот подход позволяет уменьшить на сервере дисковое пространство, занимаемое операциями ввода-вывода в базе данных.

В системе Exchange 2010 с пакетом обновления 1 (SP1) благодаря улучшениям процесса обнуления страниц базы данных снижается влияние на производительность серверов при выполнении ими функций обнуления. Ключевые улучшения:

  • Оптимизированная емкость хранилища и сети   Расширенный обработчик хранилищ (ESE) добавляет в файл журнала транзакций запись об обнулении страницы вместо сохранения в журнале образа всей страницы. Этот подход сокращает количество операций ввода-вывода для записи в журнал, поддерживает максимально малое дисковое пространство, выделенное для журналов, и снижает требования к пропускной способности для доставки журналов из активной копии базы данных в пассивную.

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

Реализация обнуления страниц в базе данных ESE

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

Шаблон заполнения функции обнуления страниц для операции среды выполнения ESE

Операция среды выполнения ESE Шаблон заполнения

Заменить

R

Удалить запись или длинное значение

D

Освобожденное место страницы

H

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

Шаблон заполнения функции обнуления страниц для операции фонового обслуживания базы данных ESE

Операция фонового обслуживания базы данных ESE Шаблон заполнения

Удалить запись

D

Удалить длинное значение

L

Освобожденное место частично используемой страницы

Z

Освобожденное место неиспользуемой страницы

U

Фоновое обслуживание базы данных

Фоновое обслуживание базы данных — это настроенный по умолчанию процесс, непрерывно проверяющий контрольные суммы и сканирующий базу данных в фоновом режиме. Главной задачей этого процесса является проверка контрольных сумм страниц базы данных, но он также выполняет очистку после сбоев хранилища Exchange 2010 (освобождение места на диске и обнуление записей и страниц, которое не происходит из-за сбоя). При фоновом обслуживании одной базы данных скорость обработки данных составляет приблизительно 5 МБ в секунду. Если приоритет отдается периодическому обнулению страниц, можно сократить размеры баз данных, чтобы обнуление страниц выполнялось в случае восстановления после сбоя в течение более короткого времени (например, 24 часов). Дополнительные сведения см. в разделе Новые возможности ядра хранилища Exchange.

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

  • База данных MSExchange =>Экземпляры->Время после обслуживания базы данных: Этот счетчик производительности указывает количество секунд, прошедших с момента завершения последнего обслуживания для заданной базы данных.

Процесс обнуления страниц базы данных ESE

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

Операция фонового обслуживания базы данных ESE

Сценарий удаления базы данных Процесс ESE и временные рамки обнуления данных в базе данных
  • Сценарий 1. Восстановление одного элемента отключено, и пользователь удаляет элемент из папки «Элементы для восстановления».

  • Сценарий 2. Восстановление одного элемента отключено, и для срока хранения элементов в папке «Элементы для восстановления» установлено значение, равное нулю.

  • Сценарий 3. Восстановление одного элемента включено, и срок действия элемента истекает в соответствии со сроком хранения удаленных элементов.

В асинхронном потоке двоичный шаблон записывается поверх удаленных данных. Это действие выполняется за те миллисекунды, в течение которых происходит удаление записи. Если процесс хранилища завершается сбоем во время ожидания выполнения асинхронного обнуления (или очистка хранилища версий отменяется из-за его роста), обнуление завершается при обработке этого раздела базы данных во время фонового (круглосуточного) обслуживания базы данных. Дополнительные сведения о фоновом обслуживании базы данных см. в разделе Новые возможности ядра хранилища Exchange.

Сценарий представления. Истечение строка действия элементов в представлении папки Outlook или Outlook Web Access (например, в представлении «Беседа»).

Обнуление данных выполняется при обработке этого раздела базы данных во время фонового (круглосуточного) обслуживания базы данных.

Сценарий перемещения или удаления почтового ящика. Удаление исходного почтового ящика (истечение срока хранения удаленного в корзину почтового ящика)

Обнуление данных выполняется при обработке этого раздела базы данных во время фонового (круглосуточного) обслуживания базы данных.

Отслеживание реакции на событие обнуления страниц

Можно измерять и отслеживать функции обнуления страниц с помощью следующих счетчиков производительности ESE:

  • База данных MSExchange->Обнулено страниц при обслуживании базы данных: Этот счетчик производительности указывает число страниц, обнуленных ядром СУБД с момента вызова счетчика производительности.

  • База данных MSExchange->Обнулено страниц при обслуживании базы данных/с: Этот счетчик производительности указывает скорость, с которой страницы обнуляются ядром СУБД.

Примечание.
Сведения о включении этих счетчиков см. в статье Включение расширенных счетчиков производительности ESE.

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

Данные почтового ящика и обнуление страниц в системе Exchange 2010

Только файл базы данных почтовых ящиков (EDB) предусматривает обнуление страниц. Следующие типы данных почтовых ящиков Exchange 2010 не предусматривают обнуления страниц.

  • Журналы транзакций базы данных почтовых ящиков (LOG)

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

  • Файлы каталога индексов содержимого

    В системе Exchange 2010 для функций индексации при поиске используется служба поиска Exchange (MSExchangeSearch). Каталог индекса поиска включает в себя несколько десятков файлов, хранящихся в одном томе с файлом базы данных почтовых ящиков. При необратимом удалении сообщения из базы данных почтовых ящиков связанное с ним содержимое в каталоге поиска не удаляется в тот же момент. Это содержимое удаляется, когда служба MS Search выполняет теневое или основное объединение большого числа небольших файлов каталога в один файл большего размера. После завершения основного объединения файлы каталога меньшего размера удаляются. Невозможно обнулить блоки, содержащие резервные копии удаленных файлов журнала. Чтобы убедиться, что файлы каталога полностью обнулены, выполните следующую процедуру.

    1. Остановите процессы MSExchangeSearch и MSSearch на затронутых серверах.

    2. Удалите папку каталога для каждой затронутой базы данных (во всех копиях).

    3. Перезапустите процессы MSExchangeSearch и MSSearch.

    4. Обнулите освобожденный блок с помощью средства обнуления блоков NTFS.

    Примечание.
    Удаление файлов каталога индексов содержимого оказывает существенное влияние на работу пользователей на сервере Exchange 2010. Службы поиска на серверах Outlook Web App и Exchange ActiveSync не будут работать, пока индекс содержимого не перестроит каталог путем повторного сканирования каждой базы данных. Такое перестроение может занять от нескольких дней до нескольких недель.