Производственный выпуск SQL Server 2016 ожидается в начале 2016 года, но пока и возможности к версии SQL Server 2016 CTP. Версия SQL Server 2016 CTP 3 доступна для тестирования и может быть загружена из SQL Server Evaluations (https://www.microsoft.com/en-us/evalcenter/evaluate-sql-server-2016). В этой статье мы рассмотрим пять важнейших новшеств, добавленных к версии SQL Server 2016 CTP 3.

1. Поддержка уникальных индексов добавлена в компонент «OLTP в памяти». В первоначальном выпуске OLTP в памяти для SQL Server 2014 поддерживается только два типа индексов: Hash и Range. Наряду с этим добавлена поддержка уникальных ограничений в версии CTP 3.

2. В компонент «OLTP в памяти» добавлена поддержка типов большого объекта (LOB). Одним из ограничений начальной реализации OLTP в памяти было отсутствие поддержки всех типов данных. В SQL Server 2016 CTP 3 специалисты Microsoft добавили поддержку varchar (max), nvarchar (max) и varbinary (max), которые используются в оптимизированных для памяти таблицах и модулях, скомпилированных в собственном коде.

3. Новые функции T-SQL COMPRESS и DECOMPRESS. Еще одно важное новшество — функции COMPRESS и DECOMPRESS, которые позволяют сохранять и восстанавливать данные с использованием алгоритма сжатия GZIP. Как следует из названия, функция COMPRESS сжимает данные перед их сохранением в столбце или переменной. Она возвращает двоичные данные. Функция DECOMPRESS распаковывает двоичные данные и возвращает исходную версию данных. Необходимо привести данные к текстовому типу, если были сжаты текстовые данные. Пример использования новых функций COMPRESS и DECOMPRESS приведен ниже.

CREATE TABLE Persons (
FirstName nvarchar(max),
LastName nvarchar(max),
CompressedInfo varbinary(max))
INSERT INTO Persons (FirstName, LastName, Compressedinfo)
SELECT FirstName, LastName, COMPRESS
(AdditionalContactInfo) FROM Person.Person
SELECT FirstName, LastName, DECOMPRESS(Compressedinfo)
AS AdditionalContactInfo
FROM Persons

4. Новая база данных Stretch совместима с AlwaysOn. Базы данных Stretch появились в предыдущей версии SQL Server 2016 CTP. Они позволяют динамически расширить локальную базу данных в Azure. В результате часто используемые данные можно оставить в локальном хранилище, а редко используемые переместить в «облако». В версии SQL Server 2016 CTP 3 новые возможности расширения можно распространить на базу данных, уже принадлежащую к группе доступности Always On. Кроме того, можно добавить готовую к расширению базу данных к группе доступности Always On.

5. Службы Reporting Services в версии SQL Server 2016 CTP 3 обеспечивают интеграцию с SharePoint 2013 and SharePoint 2016. SQL Server — реляционная база данных, используемая в SharePoint, и в 2016 году Microsoft готовится выпустить новые версии SharePoint 2016. Версия SQL Server 2016 CTP 3 поддерживает новейшую версию SharePoint 2016 IT Preview. Загрузить предварительную версию можно из SharePoint 2016 IT Preview (https://www.microsoft.com/en-us/download/details.aspx? id=48712).

Устанавливаем клиентское подключение через протокол общей памяти

Как проверить, установлено ли клиентское подключение на компьютере, используемом для проектирования базы данных, через протокол общей памяти?

Протокол общей памяти не требует настройки и обеспечивает высокую скорость передачи данных, но может применяться только при подключении к экземпляру SQL Server, работающему на том же компьютере, что и клиент. Чтобы установить клиентское подключение через протокол общей памяти, в первую очередь необходимо включить протокол на клиенте. Вы можете проверить состояние протоколов с помощью оснастки диспетчера настройки SQL Server. Затем в строке подключения можно ввести (local) как имя сервера, чтобы настроить клиентское подключение на использование протокола общей памяти. Можно также использовать localhost или точку (.). Образец строки подключения:

Server= (local); Database=AdventureWorks;
   Trusted_Connection=True;

Следующий запрос показывает, какой протокол используется клиентским подключением.

SELECT net_transport FROM sys.dm_exec_connections
   WHERE session_id = @@SPID;