Что нового в Microsoft SQL Server 2019 – обзор новых возможностей

Приветствую всех посетителей сайта Info-Comp.ru! Сегодня мы с Вами поговорим о том, что нового появилось в Microsoft SQL Server 2019, иными словами, узнаем, какие новые возможности и функции добавились в этой версии.

Что нового в Microsoft SQL Server 2019 – обзор новых возможностей

Обзор Microsoft SQL Server 2019

Microsoft SQL Server – это разработанная компанией Microsoft система управления реляционными базами данных.

Microsoft SQL Server 2019 – это новая и самая актуальная на текущий момент времени версия системы.

Выпускается Microsoft SQL Server 2019 в 4 редакциях:

  • Enterprise – самый полный выпуск, включает все возможности SQL Server 2019, предназначен для крупных баз данных, которые требуют максимальной производительности, надежности, масштабируемости и доступности, а также имеют очень строгие требования по бизнес-аналитике;
  • Standard – самая распространенная редакция, включает ключевые возможности управления данными и бизнес-аналитики. В отличие от выпуска Enterprise у Standard имеются ограничения, как в функциональности, так и в объеме использования ресурсов, например, максимальное количество ядер, которое можно задействовать, это 24;
  • Developer – редакция для разработчиков программного обеспечения, которая включает полный функционал SQL Server, она позволяет создавать и тестировать приложения на основе SQL Server без ограничений. Она бесплатна, но ее могут использовать только программисты для разработки и демонстрации приложений, иными словами, в качестве сервера баз данных на предприятии ее использовать нельзя;
  • Express – бесплатная редакция SQL Server, она подходит для обучения и разработки приложений для обработки данных на настольных компьютерах и небольших серверах (размером до 10 ГБ). У этого выпуска также есть ограничения, например, задействовать можно только 4 ядра, а максимально возможный размер базы данных 10 ГБ. По функционалу данная редакция также значительно уступает платным вариантам.

Заметка! Много статей по изучению языка T-SQL и Microsoft SQL Server Вы можете найти в специально созданном мной сборнике статей для изучения Microsoft SQL Server.

Новые возможности Microsoft SQL Server 2019

Сейчас давайте рассмотрим основные нововведения Microsoft SQL Server 2019:

  • Кластеры больших данных – они помогают в реализации среды для работы с большими наборами данных, в том числе с использованием машинного обучения и возможностей искусственного интеллекта;
  • Пакетный режим для данных rowstore – данный режим обеспечивает выполнение в пакетном режиме без необходимости использования индексов columnstore. В этом режиме более эффективно используются ресурсы процессора во время аналитических запросов, поэтому его лучше использовать тогда, когда значительная часть работы состоит из аналитических запросов, или если рабочая нагрузка сильно зависит от процессора. Раньше такая возможность использовалось, но только если запрос включал операции с индексами columnstore. Однако приложения могли использовать функции, которые не поддерживают индексы columnstore, и поэтому не могли работать в пакетном режиме. Начиная с этой версии пакетный режим доступен для запросов, которые включают операции как с индексами rowstore, так и с columnstore;
  • Встраивание скалярных пользовательских функций – данная возможность автоматически в SQL запросе преобразует определяемые пользователем скалярные функции в реляционные выражения, что значительно повышает производительность запросов, которые используют скалярные пользовательские функции;
  • Отложенная компиляция табличных переменных – возможность позволяет оптимизировать план и повысить производительность запросов, в которых используются табличные переменные. Это достигается за счет того, что во время оптимизации и первичной компиляции инструкций эта возможность распространяет оценки кратности, основанные на фактическом количестве строк табличной переменной;
  • Приблизительная обработка запросов с помощью функции APPROX_COUNT_DISTINCT – эта функция выполняет статистическое вычисление COUNT(DISTINCT()), однако она оптимизирована для крупных наборов данных, так она использует меньше ресурсов и обеспечивает лучший параллелизм. Ее можно использовать в случаях, если не требуется абсолютная точность, но есть строгие требования по времени выполнения;
  • Гибридный буферный пул – данная возможность обеспечивает (в случае необходимости) прямой доступ к страницам данных в файлах базы данных, хранящихся на устройствах с постоянной памятью (PMEM);
  • Оптимизированные для памяти метаданные TempDB – эта функция позволяет обеспечить новый уровень масштабируемости для рабочих нагрузок, которые активно используют TempDB. Таким образом, системные таблицы, связанные с управлением метаданными временных таблиц, теперь можно переместить в таблицы, оптимизированные для работы с памятью, без кратковременной блокировки;
  • Поддержка In-Memory OLTP для моментальных снимков базы данных – теперь SQL Server поддерживает создание моментальных снимков баз данных, которые включают оптимизированные для памяти файловые группы;
  • Параметр OPTIMIZE_FOR_SEQUENTIAL_KEY для индексов – он оптимизирует ядро для увеличения пропускной способности операций вставки в индекс с высокой степенью параллелизма. Этот параметр предназначен для индексов с последовательным ключом;
  • Сокращение повторных компиляций для инструкций с временными таблицами – начиная с этой версии SQL Server выполняет дополнительные проверки инструкций с временными таблицами, чтобы избежать ненужных перекомпиляций, что повышает производительность;
  • Одновременные обновления PFS«Свободное место на странице» PFS – это специальные страницы в файле базы данных, с помощью которых SQL Server находит свободное место при выделении пространства для объекта. Это улучшение позволяет изменить способ управления параллелизмом с помощью обновлений PFS, чтобы можно было использовать общую кратковременную блокировку, а не монопольную блокировку. Это поведение включено по умолчанию во всех базах данных, включая TempDB, начиная с 2019 версии SQL Server;
  • WAIT_ON_SYNC_STATISTICS_REFRESH – это новый тип ожидания в динамическом системном представлении sys.dm_os_wait_stats. Он отображает суммарное время на уровне экземпляра, затраченное на синхронные операции обновления статистики;
  • Параметр LIGHTWEIGHT_QUERY_PROFILING – это новый параметр области базы данных, который позволяет включать и отключать упрощенную инфраструктуру профилирования запросов. Упрощенная инфраструктура профилирования запросов (LWP) – предоставляет более эффективные данные производительности запросов по сравнению со стандартными механизмами профилирования. По умолчанию она включена;
  • Табличная функция sys.dm_exec_query_plan_stats – это новая функция динамического управления (DMF), она возвращает эквивалент последнего известного фактического плана выполнения для всех запросов. Управляется она, т.е. ее можно включить и отключить, с помощью параметра LAST_QUERY_PLAN_STAT уровня области базы данных;
  • Параметр SHORTEST_PATH – это новый параметр MATCH, который используется для поиска кратчайшего пути между любыми двумя узлами в графе или выполнения обходов произвольной длины;
  • Графовые таблицы теперь поддерживают секционирование таблиц и индексов;
  • Поддержка кодировки UTF-8 – для импорта и экспорта кодировки, а также как параметр сортировки на уровне столбцов и базы данных для строковых данных;
  • SDK для языка Java – это интерфейс для расширения языка Java, который используется для обмена данными с SQL Server и выполнения кода Java из SQL Server. Ранее мы могли в базе данных SQL сервера выполнять код на языках R и Python (как это делается, мы рассматривали в статье – Как выполнить код Python в Microsoft SQL Server на T-SQL), теперь стало возможно выполнять код и на языке Java;
  • CREATE EXTERNAL LANGUAGE – это новая инструкция DDL, которая регистрирует внешние языки, такие как Java;
  • Улучшения в «Сообщениях об ошибках» – теперь сообщение об ошибке усечения данных по умолчанию включает имена таблицы и столбца, а также усеченное значение;
  • Управление сертификатами в диспетчере SQL Server – теперь стало возможно управлять сертификатами в диспетчере конфигурации SQL Server;
  • Пять синхронных реплик в Availability Groups – максимальное количество синхронных реплик увеличено до пяти (в 2017 версии 3), что дает возможность настроить группу из пяти реплик для автоматического перехода на другой ресурс в пределах группы;
  • Перенаправление подключения от вторичной реплики к первичной – данная возможность позволяет направлять подключения клиентских приложений к первичной реплике независимо от целевого сервера, указанного в строке подключения;
  • Ускоренное восстановление баз данных (ADR) – это улучшение сокращает время восстановления баз данных после перезапуска или длительного отката транзакций;
  • Новые возобновляемые операции – такие как: сборка и перестроение кластеризованных индексов columnstore в режиме «в сети», а также сборка индексов rowstore в режиме «в сети»;
  • Улучшенная поддержка Linux – теперь на Linux поддерживается: репликация, координатор распределенных транзакций (MSDTC), OpenLDAP для сторонних поставщиков Active Directory, службы машинного обучения, система отслеживания измененных данных (CDC) и PolyBase. Кроме этого есть улучшения TempDB. О том, как установить Microsoft SQL Server на Linux можете почитать в статье – Установка Microsoft SQL Server на Linux Ubuntu Server;
  • Новые параметры установки – в SQL Server 2019 добавились новые параметры настройки памяти Min Server Memory и Max Server Memory (в MB), а также новые параметры настройки параллелизма Max degree of parallelism (MaxDOP);
  • Улучшения служб SQL Server Analysis Services (SSAS):
    • Группы вычисления в табличных моделях;
    • Чередование запросов;
    • Связи «многие ко многим»;
    • Параметр управления для обновлений кэша Power BI;
    • Интерактивное подключение;
    • Настройка свойств для регуляции ресурсов.

Это основные функции и возможности, которые появились в Microsoft SQL Server 2019. Более подробно на официальном сайте Microsoft.

На сегодня это все, пока!

Понравилась статья? Поделиться с друзьями:
Заметки IT специалиста
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:
Нажимая на кнопку «Отправить комментарий», я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.