Что нового в SQL Server 2012 SP1

Сегодня компания Microsoft на основном докладе конференции PASS анонсировала первый пакет обновления для SQL Server 2012 (Service Pack 1). Он уже доступен для скачивания по указанной ссылке. Я постараюсь кратко описать, что же нового в нем появилось и показать пару примеров.

Межкластерная миграция для AlwaysOn Availability Groups

В SQL Server 2012 SP1 появляется возможность миграции одной или нескольких AlwaysOn Availability Groups на новый экземпляр кластера Windows Server Failover Clustering (WSFC). Это значительно облегчит обновление существующего кластера на Windows Server 2012 благодаря уменьшению времени простоя.

Selective XML Index

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

DBCC SHOW_STATISTICS работает с правами SELECT

В предыдущих версиях SQL Server необходимо было обладать правами администратора или владельца объекта, чтобы просматривать результаты с помощью DBCC SHOW_STATISTICS. Данное ограничение очень сильно влияло, если мы использовали распределенные запросы, т.к. пользователи не имеют административных прав на удаленные объекты. Соответственно отсутствие информации о статистиках на удаленных объектах приводит к построению оптимизатором менее оптимальных планов запросов. В SQL Server 2012 SP1 теперь достаточно прав SELECT на таблицу целиком или на отдельные столбцы, чтобы посмотреть статистики для них. Для тех, кто использует распределенные запросы и может столкнуться с какими-либо проблемами введен флаг трассировки (trace flag) 9485, чтобы вернуть поведение новой функциональности до увроня SQL Server 2012 RTM. Хочу привести сразу пример результатов. Слева план запроса, который использует в качестве удаленного источника SQL Server 2012 RTM, а справа SQL Server 2012 SP1. Как мы видим – статистка начала использоваться.

Новая функция для просмотра статистики

Новая динамическая функция sys.dm_db_stats_properties возвращает информацию о статистиках для указанной таблицы или индексированного представления. Вы можете использовать эту функцию для просмотра тако информации как время последнего обновления статистики, количество строк, которое было использовано для построения статистики, а также количество изменений произошедших в столбце, что раньше было доступно только через недокументированные системные таблицы. Кстати, функция стала также доступна и в SQL Server 2008 R2 SP2. Привожу пример результатов работы данной функции:

Полная версия SQL Server Management Studio в редакциях Express

Теперь с редакциями Express поставляется полнофункциональная версия SQL Server Management Studio.

Поддержка SQL Server Management Objects для управления Resource Governor

В SQL Server 2012 SP1, SQL Server Management Objects обновлены и поддерживают синтаксис команды CREATE RESOURCE POOL (Transact-SQL):

  • CAP_CPU_PERCENT
  • AFFINITY SCHEDULER
  • AFFINITY NUMANODE

Следующие объекты SMO можно использовать для ограничения использования CPUи привязки ресурсных пулов к scheduler’ам и NUMA нодам:

Также появилось несколько улучшений в инструментах бизнес анализа, но так как я к бизнес анализу имею достаточно поверхностное отношение, то не буду о них рассказывать. Я думаю, вы при желании без труда найдете о них информацию. Как мы видим SQL Server 2012 SP1 это не просто пакет обновлений и исправлений, он вносит новый достаточно интересный функционал в существующую платформу.