Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

OLTP en mémoire :nouveautés de SQL Server 2016

L'équipe de développement de SQL Server a ajouté de nouvelles fonctionnalités à l'OLTP en mémoire. Toutes ces fonctionnalités vous permettent de créer de nouvelles applications ainsi que d'augmenter les performances globales et l'évolutivité. Vous trouverez ci-dessous la liste des améliorations OLTP en mémoire disponibles dans SQL Server 2016 CTP3.

Améliorations Transact-SQL :

Surface de requête dans les modules natifs pour :

  • Disjonction (OU, PAS)
  • UNION et UNION TOUS
  • SÉLECTIONNER DISTINCT
  • JOINTURE EXTERNE
  • Sous-requêtes dans les instructions SELECT (EXISTS, IN, sous-requêtes scalaires)
  • Exécution imbriquée (EXECUTE) de modules compilés nativement
  • Fonctions table (TVF) inline compilées nativement
  • Prise en charge d'EXECUTE AS CALLER :la clause EXECUTE AS n'est plus requise pour les modules natifs
  • Fonctions de sécurité intégrées et prise en charge accrue des fonctions mathématiques intégrées

Prise en charge des tables à mémoire optimisée :

  • Contraintes FOREIGN KEY entre les tables à mémoire optimisée
  • Contraintes CHECK
  • Contraintes UNIQUES
  • Déclencheurs (AFTER) pour les opérations INSERT/UPDATE/DELETE. Les déclencheurs sur les tables optimisées en mémoire sont compilés nativement et utilisent donc WITH NATIVE_COMPILATION.

Prise en charge d'ALTER et de sp_recompile pour les procédures, fonctions et déclencheurs compilés en natif

Prise en charge d'ALTER TABLE pour les modifications de schéma et d'index
La nouvelle syntaxe ALTER TABLE … ADD/DROP/ALTER INDEX est introduite pour les changements d'index sur les tables optimisées en mémoire.

Prise en charge complète des classements et des pages de code :

  • Les colonnes (var)char peuvent utiliser n'importe quelle page de code prise en charge par SQL Server
  • Les colonnes de caractères dans les clés d'index peuvent utiliser n'importe quel classement SQL Server
  • Les expressions dans les modules compilés en mode natif, ainsi que les contraintes sur les tables à mémoire optimisée, peuvent utiliser n'importe quel classement SQL Server

Fonctions scalaires définies par l'utilisateur pour l'OLTP en mémoire

Améliorations des performances et de la mise à l'échelle :

  • Augmentation de la taille des données :une base de données peut désormais contenir jusqu'à 2 téraoctets de données utilisateur dans des tables à mémoire optimisée avec SCHEMA_AND_DATA
  • Améliorations de l'évolutivité dans la couche de persistance
  • Prise en charge du plan parallèle pour l'accès aux tables optimisées en mémoire à l'aide de Transact-SQL interprété
  • Prise en charge de l'analyse parallèle pour les index HASH

Améliorations dans SQL Server Management Studio :

  • Le rapport d'analyse des transactions ne nécessite plus la configuration des collecteurs de données ou de l'entrepôt de données de gestion. Le rapport peut maintenant être exécuté directement sur une base de données de production. Faites simplement un clic droit sur la base de données et sélectionnez Rapports -> Rapports standard -> Rapport d'analyse des performances des transactions.
  • Applet de commande PowerShell pour l'évaluation de la migration pour évaluer l'aptitude à la migration de plusieurs objets dans une base de données SQL Server.
  • Générez des listes de contrôle de migration en cliquant avec le bouton droit sur une base de données et en sélectionnant Tâches -> Générer des listes de contrôle de migration OLTP en mémoire

Prise en charge de plusieurs fonctionnalités :

  • Les connexions MARS (Multiple Active Result Sets) peuvent désormais accéder aux tables à mémoire optimisée et aux procédures stockées compilées en mode natif
  • Prise en charge du chiffrement transparent des données. Si une base de données est configurée pour ENCRYPTION, les fichiers du groupe de fichiers MEMORY_OPTIMIZED_DATA sont désormais également chiffrés.
  • Prise en charge de l'utilisation de la gestion temporelle des versions du système avec l'OLTP en mémoire. Pour plus d'informations, consultez Tables temporelles versionnées par le système avec des tables optimisées en mémoire
  • Prise en charge du magasin de requêtes pour le code compilé en mode natif à partir de charges de travail OLTP en mémoire. Pour plus d'informations, consultez Utilisation du magasin de requêtes avec OLTP en mémoire.
  • Sécurité au niveau des lignes dans les tables optimisées en mémoire

Il y a plus à venir !