Nouveautés (moteur de base de données)

Cette dernière version du moteur de base de données SQL Server introduit de nouvelles fonctionnalités et améliorations qui augmentent la puissance et la productivité des architectes, développeurs et administrateurs qui conçoivent, développent et gèrent des systèmes de stockage de données. Il s’agit des domaines dans lesquels le moteur de base de données a été amélioré.

Améliorations des fonctionnalités du moteur de base de données

Tables optimisées en mémoire

In-Memory OLTP est un moteur de base de données à mémoire optimisée intégré au moteur SQL Server. L'OLTP en mémoire est optimisé pour OLTP. Pour plus d’informations, consultez OLTP en mémoire (optimisation en mémoire).

Fichiers de données SQL Server dans Azure

SQL Server Data Files dans Azure active la prise en charge native de SQL Server fichiers de base de données stockés en tant qu’objets blob Azure. Cette fonctionnalité vous permet de créer une base de données dans SQL Server s’exécutant en local ou sur une machine virtuelle dans Azure avec un emplacement de stockage dédié pour vos données dans Stockage Blob Azure.

Héberger une base de données SQL Server dans une machine virtuelle Azure

Utilisez l’Assistant Déployer une base de données SQL Server sur une machine virtuelle Azure pour héberger une base de données à partir d’une instance de SQL Server dans une machine virtuelle Azure.

Améliorations de la sauvegarde et de la restauration

SQL Server 2014 contient les améliorations suivantes pour la sauvegarde et la restauration SQL Server :

  • Sauvegarde SQL Server vers une URL

    SQL Server sauvegarde vers l’URL a été introduit dans SQL Server 2012 SP1 CU2 pris en charge uniquement par Transact-SQL, PowerShell et SMO. Dans SQL Server 2014, vous pouvez utiliser SQL Server Management Studio pour effectuer une sauvegarde ou une restauration à partir du service Stockage Blob Azure. La nouvelle option est disponible pour les tâches de sauvegarde et les plans de maintenance à la fois. Pour plus d’informations, consultez Utilisation d’une tâche de sauvegarde dans SQL Server Management Studio, SQL Server Sauvegarde sur une URL à l’aide de l’Assistant Plan de maintenance et Restauration à partir du stockage Azure à l’aide de SQL Server Management Studio.

  • SQL Server sauvegarde managée sur Azure

    Basé sur SQL Server sauvegarde vers l’URL, SQL Server sauvegarde managée sur Microsoft Azure est un service que SQL Server fournit pour gérer et planifier les sauvegardes de bases de données et de journaux. Dans cette version, seule la sauvegarde dans le stockage Azure est prise en charge. SQL Server sauvegarde managée sur Microsoft Azure peut être configurée à la fois au niveau de la base de données et au niveau de instance, ce qui permet à la fois un contrôle granulaire au niveau de la base de données et une automatisation au niveau instance. SQL Server sauvegarde managée sur Microsoft Azure peut être configuré sur SQL Server instances s’exécutant localement et SQL Server instances s’exécutant sur des machines virtuelles Azure. Il est recommandé pour les instances SQL Server s’exécutant sur des machines virtuelles Azure. Pour plus d’informations, consultez SQL Server sauvegarde managée sur Azure.

  • Chiffrement pour les sauvegardes

    Vous pouvez maintenant choisir de chiffrer le fichier de sauvegarde pendant l'opération de sauvegarde. Plusieurs algorithmes de chiffrement sont pris en charge, dont AES 128, AES 192, AES 256, et Triple DES. Vous devez utiliser un certificat ou une clé asymétrique pour effectuer un chiffrement pendant une sauvegarde. Pour plus d’informations, voir Chiffrement de sauvegarde.

Nouvelle conception pour l'estimation de la cardinalité

La logique d’estimation de cardinalité, appelée estimateur de cardinalité, est repensée dans SQL Server 2014 pour améliorer la qualité des plans de requête et donc pour améliorer les performances des requêtes. Le nouvel estimateur de cardinalité incorpore des hypothèses et des algorithmes qui fonctionnent sur les charges de travail OLTP et de stockage de données modernes. Il repose sur la recherche détaillée des estimations de cardinalité sur les charges de travail modernes et sur nos connaissances acquises au cours des 15 dernières années sur l'amélioration de l'estimateur de cardinalité SQL Server. Les commentaires des clients indiquent que bien que la plupart des requêtes tirent parti des modifications ou demeurent inchangées, un petit nombre d'entre elles présente des régressions par rapport à l'estimateur de cardinalité précédent. Pour obtenir des recommandations en matière de réglage des performances et de test, consultez Estimation de la cardinalité (SQL Server).

Durabilité différée

SQL Server 2014 introduit la possibilité de réduire la latence en désignant certaines ou toutes les transactions comme durables différées. Une transaction durable différée restitue le contrôle au client avant l'écriture de l'enregistrement du journal des transactions sur le disque. La durabilité peut être contrôlée au niveau de la base de données, de COMMIT ou d'un bloc ATOMIC.

Pour plus d’informations, consultez la rubrique Contrôler la durabilité des transactions.

Améliorations AlwaysOn

SQL Server 2014 contient les améliorations suivantes pour les instances de cluster de basculement AlwaysOn et les groupes de disponibilité AlwaysOn :

Basculement et indexation de partitions

Les partitions individuelles de tables partitionnées peuvent maintenant être reconstruites. Pour plus d’informations, consultez ALTER INDEX (Transact-SQL).

Gestion de la priorité de verrouillage des opérations en ligne

L'option ONLINE = ON contient maintenant une option WAIT_AT_LOW_PRIORITY qui vous permet de spécifier la durée pendant laquelle le processus de reconstruction doit attendre les verrous nécessaires. L'option WAIT_AT_LOW_PRIORITY vous permet également de configurer la fin des processus de blocage liés à cette instruction de reconstruction. Pour plus d’informations, consultez ALTER TABLE (Transact-SQL) et ALTER INDEX (Transact-SQL). Les informations de résolution des problèmes relatives aux nouveaux types d’états de verrouillage sont disponibles dans sys.dm_tran_locks (Transact-SQL) et sys.dm_os_wait_stats (Transact-SQL).

Index Columnstore

Nouvelles fonctionnalités disponibles pour les index columnstore :

  • Index columnstore cluster

    Utilisez un index columnstore cluster pour améliorer la compression de données et les performances des requêtes pour les charges de travail de stockage des données qui exécutent principalement des chargements en masse et des requêtes en lecture seule. Étant donné que l'index columnstore cluster est modifiable, la charge de travail peut exécuter certaines insertions, mises à jour, et suppressions. Pour plus d’informations, consultez Index Columnstore décrits et Utilisation d’index Columnstore cluster.

  • SHOWPLAN

    SHOWPLAN affiche des informations à propos des index columnstore. Les propriétés EstimatedExecutionMode et ActualExecutionMode ont deux valeurs possibles : Batch ou Row. La propriété Storage a deux valeurs possibles : RowStore et ColumnStore.

  • Compression des données d'archive

    ALTER INDEX ... REBUILD dispose d’une nouvelle option de compression de données COLUMNSTORE_ARCHIVE qui compresse davantage les partitions spécifiées d’un index columnstore. Utilisez cette option pour l'archivage ou dans d'autres situations qui nécessitent une plus petite taille de stockage des données et qui supportent un temps de stockage et de récupération plus long. Pour plus d’informations, consultez ALTER INDEX (Transact-SQL).

Buffer Pool Extension

L’extension du pool de mémoires tampons fournit l’intégration transparente de disques SSD en tant qu’extension de mémoire aléatoire non volatile (NvRAM) au pool de mémoires tampons du moteur de base de données pour améliorer considérablement le débit d’E/S.

Statistiques incrémentielles

CREATE STATISTICS et les instructions statistiques connexes permettent désormais de créer des statistiques par partition à l'aide de l'option INCREMENTAL. Les instructions connexes autorisent ou signalent des statistiques incrémentielles. La syntaxe affectée inclut les options UPDATE STATISTICS, sp_createstats, CREATE INDEX, ALTER INDEX, ALTER DATABASE SET, DATABASEPROPERTYEX, sys.databases et sys.stats. Pour plus d’informations, consultez CREATE STATISTICS (Transact-SQL).

Optimisations du gouverneur de ressources pour le contrôle des E/S physiques

Le gouverneur de ressources vous permet de spécifier des limites sur la quantité d'UC, les E/S physiques et la mémoire que les demandes d'application entrantes peuvent utiliser avec le pool de ressources. Dans SQL Server 2014, vous pouvez utiliser les nouveaux paramètres MIN_IOPS_PER_VOLUME et MAX_IOPS_PER_VOLUME pour contrôler les E/S physiques émises pour les threads utilisateur pour un pool de ressources donné. Pour plus d’informations, consultez Resource Governor pool de ressources et CREATE RESOURCE POOL (Transact-SQL).

Le paramètre MAX_OUTSTANDING_IO_PER_VOLUME de ALTER RESOURCE GOVENOR correspond aux opérations d'E/S en attente maximales par volume disque. Utilisez-le pour ajuster la gouvernance des ressources d'E/S aux spécifications d'E/S d'un volume disque et pour limiter le nombre d'entrées/sorties émises à la limite de l'instance de SQL Server. Pour plus d’informations, consultez ALTER RESOURCE GOVERNOR (Transact-SQL).

Classe d'événements Online Index Operation Event Class

Le rapport de progression de la classe d'événements d'opération d'index en ligne présente désormais deux nouvelles colonnes de données : PartitionId et PartitionNumber. Pour plus d'informations, consultez Progress Report: Online Index Operation Event Class.

Niveau de compatibilité de la base de données

Le niveau de compatibilité 90 n’est pas valide dans SQL Server 2014. Pour plus d’informations, consultez NIVEAU DE COMPATIBILITÉ ALTER DATABASE (Transact-SQL)

Améliorations de Transact-SQL

Spécification incluse d'index CLUSTERED et NONCLUSTERED

La spécification incluse des index CLUSTERED et NONCLUSTERED n'est pas autorisée dans les tables sur disque. Créer une table contenant des index intégrés revient à émettre une instruction create table suivie des instructions CREATE INDEX correspondantes. Les colonnes incluses et les conditions de filtre ne sont pas prises en charge par les index intégrés.

SELECT ... INTO

L'instruction SELECT ... INTO est améliorée et peut maintenant se produire simultanément. Le niveau de compatibilité de la base de données doit être au moins 110.

Améliorations de Transact-SQL pour In-Memory OLTP

Pour plus d’informations sur les modifications transact-SQL pour prendre en charge In-Memory OLTP, consultez Prise en charge de Transact-SQL pour In-Memory OLTP.

Améliorations des vues système

sys.xml_indexes

sys.xml_indexes (Transact-SQL) comporte 3 nouvelles colonnes : xml_index_type, xml_index_type_descriptionet path_id.

sys.dm_exec_query_profiles

sys.dm_exec_query_profiles (Transact-SQL) surveille la progression des requêtes en temps réel pendant l’exécution d’une requête.

sys.column_store_row_groups

sys.column_store_row_groups (Transact-SQL) fournit des informations d’index columnstore cluster par segment pour aider l’administrateur à prendre des décisions de gestion système.

sys.databases

sys.databases (Transact-SQL) comporte 3 nouvelles colonnes : is_auto_create_stats_incremental_on, is_query_store_onet resource_pool_id.

Améliorations des vues système pour l'OLTP en mémoire

Pour plus d’informations sur les améliorations apportées à la vue système pour prendre en charge In-Memory OLTP, consultez Vues système, Procédures stockées, DMV et Types d’attente pour In-Memory OLTP.

Améliorations de la sécurité

Autorisation CONNECT ANY DATABASE

Nouvelle autorisation au niveau serveur. Accordez l'autorisation CONNECT ANY DATABASE à une connexion qui doit se connecter à toutes les bases de données existantes et à celles qui pourront être créées. N'accorde pas d'autorisation dans une base de données au-delà de la connexion. Combinez avec SELECT ALL USER SECURABLES ou VIEW SERVER STATE pour permettre à un processus d’audit d’afficher toutes les données ou tous les états de base de données sur le instance de SQL Server.

Autorisation IMPERSONATE ANY LOGIN

Nouvelle autorisation au niveau serveur. Lorsque cette autorisation est accordée, elle permet à un processus de niveau intermédiaire d'emprunter l'identité du compte des clients qui se connectent, à mesure qu'il se connecte aux bases de données. Si cette autorisation est refusée, une connexion dotée de privilèges élevés peut être bloquée à partir de l'emprunt d'identité d'autres connexions. Par exemple, une connexion dotée de l'autorisation CONTROL SERVER peut être bloquée à partir de l'emprunt d'identité d'autres connexions.

Autorisation SELECT ALL USER SECURABLES

Nouvelle autorisation au niveau serveur. Lorsque cette autorisation est accordée, une connexion telle qu'un auditeur peut afficher les données de toutes les bases de données auxquelles l'utilisateur se connecte.

Améliorations relatives au développement

Azure VM

Déployer une base de données SQL Server sur une machine virtuelle Microsoft Azure permet de déployer une base de données SQL Server sur une machine virtuelle Azure.

ReFS

Le déploiement de bases de données sur ReFS est désormais pris en charge.

Voir aussi

Fonctionnalités prises en charge par les éditions de SQL Server 2014