Обслуживание баз данных решений SharePoint 2010 (продолжение)

Первую часть статьи можно найти здесь.

Дефрагментация определенной таблицы и ее индексов

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

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

Можно реорганизовать и перестроить индексы, используя инструкцию ALTER INDEX или мастер обслуживания (в обоих случаях речь идет о SQL Server 2008 или SQL Server 2005).

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

USE Contoso_Content_1

GO

ALTER INDEX ALL ON [database_name. [ schema_name ] . | schema_name. ]table_or_view_name

REBUILD WITH (FILLFACTOR = 70, SORT_IN_TEMPDB = ON,

STATISTICS_NORECOMPUTE = ON)

GO

Тонкая настройка производительности индекса. Коэффициент заполнения

Коэффициент заполнения может использоваться для дальнейшего улучшения хранения и индекса производительности. Когда индексы создаются или перестраиваются, значение коэффициента заполнения (1-100) определяется долей пространства на каждой странице конечного уровня, которое может быть заполнено данными. Оставшееся пространство резервируется для будущего увеличения объема данных. Во многих случаях уровень коэффициента заполнения сервера по умолчанию 0 является оптимальным. Однако для SharePoint 2010 значение коэффициента 80 является оптимальным для поддержки роста и сводит к минимуму фрагментацию.

Для просмотра значений коэффициента заполнения для одного или более индексов, выполните запрос на представление каталога sys.indexes.

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

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

В SQL Server 2008 и SQL Server 2005 можно сжать каждый файл базы данных (речь идет о расширениях .mdf, .ldf и .ndf) для удаления неиспользуемых страниц и восстановления дискового пространства. Баз данных SharePoint 2010 автоматически не сжимают файлы данных, хотя многие виды деятельности создать неиспользуемое пространство в базе данных. Например, этому способствует командлет Move-SPSite Windows PowerShell и удаление документов, библиотек документов, списков, элементов списков и сайтов.

image

Рис. 3. Распределение места в базе данных

Свободное пространство считается от конца файла, например, в файле базы данных размером 60 ГБ с указанным целевым размером 40 ГБ свободным пространством считается 20 Гб в нижней части файла. Если используемые страницы включаются в нижние 20 ГБ, то они впоследствии будут переведены в верхние 40 ГБ файла при сохранении. Сжимать файлы базы данных можно индивидуально или в составе группы.

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

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

Принципы для сжатия баз данных:

  • Не используйте автоматическое сжатие базы данных или план обслуживания, который программно сжимает базы данных.
  • Сжимайте базу данных только тогда, когда более 50% содержания в ней было удалено пользователем или администратором.
  • Рекомендуем сжимать только базы данных контента. База данных конфигурации, базы данных центра администрирования и различных баз данных приложений служб обычно не испытывают достаточного удаления, чтобы содержать значительные объемы свободного пространства.
  • Избегайте необходимости для сжатия баз данных, включая увеличение планируемого размерах хранилища менее чем на 10-20%.
  • Сжатие баз данных — это ресурсоемкая операция. Таким образом, если вам необходимо сжать базу данных, тщательно рассмотрите планирование этой операции.
  • После сжатия базы данных немедленно изменить размер базы данных, чтобы позволить ей увеличить свои размеры (не используйте автоматическое увеличение размера) и сразу же запланируйте полную перестройку индексов базы данных с помощью действий, изложенные ранее в этой статье.

Базы данных и файлы баз данных могут быть сжаты вручную для восстановления пространства путем выполнения инструкций DBCC SHRINKFILE и DBCC SHRINKDATABASE, а также с помощью среды SQL Server Management Studio.

Создание планов обслуживания в SQL Server 2008

Операции по обслуживанию баз данных можно настроить для автоматического выполнения с помощью планов обслуживания SQL Server. Планы обслуживания могут автоматизировать и основных задач для защиты ваших данных. С помощью планов обслуживания в SQL Server 2008 или SQL Server 2005, администратор может запланировать такие операции, как проверка согласованности базы данных, реорганизацию или перестроение индексов и сжатие баз данных для освобождения неиспользуемого пространства. Дополнительную информацию можно получить в статье Мастер планов обслуживания.

Чтобы настроить план обслуживания базы данных в SQL Server 2008:

1. На панели задач нажмите кнопку Пуск, выберите пункт Все программы, укажите Microsoft SQL Server 2008 и затем кликните на SQL Server Management Studio.

2. В обозревателе объектов подключитесь к экземпляру SQL Server 2008 Database Engine и разверните этот экземпляр.

3. Щелкните Управление, щелкните правой кнопкой мыши на Планы обслуживания и выберите Мастер планов обслуживания.

4. Нажмите кнопку Далее, пока не достигнете страницы Выбор свойств плана.

image

5. В полях Имя и Описание введите имя и описание.

6. Решите, следует ли настроить один или несколько планов обслуживания.

  • Чтобы настроить план единого обслуживания, выберите одно расписание для всего плана или без расписания.
  • Чтобы настроить несколько планов обслуживания с конкретными задачами, выберите отдельные расписания для каждой задачи.

Если у вас есть окружение с 10 или более базами данных контента, или более чем 200 ГБ контента, рекомендуется настроить отдельные планы обслуживания в соответствии со спецификой.

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

7. Нажмите кнопку Изменить, чтобы задать расписание для одного или нескольких планов. Будет открыто диалоговое окно Свойства расписания задания.

image

8. Заполните расписание, нажмите кнопку ОК и затем нажмите кнопку Далее.

9. На странице Выбор задач по обслуживанию выберите задачи обслуживания для включения в план и затем нажмите кнопку Далее.

image

10. На странице Выбор порядка обслуживания задач при необходимости измените порядок задач плана обслуживания. Выберите задачу, а затем нажмите кнопку вверх или вниз. Когда задачи правильно расположены, нажмите кнопку Далее.

image

11. На странице Определение задачи проверки целостности базы данных выберите базы данных для проверки целостности и затем нажмите кнопку Далее.

image

12. На странице Определение задачи «Реорганизация индекса», в списке баз данных укажите баз данных для реорганизации индексов и затем нажмите кнопку Далее.

image

13. На странице Определение задач восстановления индекса в списке баз данных, укажите базы данных для реорганизации индексов.

14. Выберите Изменить свободное место при заполнении страницы в процентах, введите 80 и затем нажмите кнопку Далее. Изменение свободного места в процентах устанавливает коэффициент заполнения для базы данных.

image

15. На странице Определение задач очистки установите значения, соответствующие вашим потребностям и затем нажмите кнопку Далее. Рекомендуется удалить текстовые отчеты плана обслуживания.

image

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

image

Заключение

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

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

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

Статья подготовлена на основе Database Maintenance for Microsoft SharePoint 2010 Products.

Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s