Technologies des systèmes de base de données en mémoire

S’applique à :SQL Server

Cette page constitue une référence pour les fonctionnalités et les technologies en mémoire disponibles dans SQL Server. Le concept de système de base de données en mémoire fait référence à un système qui a été conçu pour tirer parti des capacités de mémoire plus importantes qu’offrent les systèmes de base de données modernes. Une base de données en mémoire peut être de nature relationnelle ou non relationnelle.

Il est souvent supposé que les performances d’un système de base de données en mémoire sont principalement dues au fait qu’il est plus rapide d’accéder aux données résidant en mémoire qu’aux données qui se trouvent sur des sous-systèmes de disque, même les plus rapides (selon plusieurs ordres de grandeur). Toutefois, de nombreuses charges de travail SQL Server peuvent faire rentrer l’intégralité de leur ensemble de travail dans la mémoire disponible. De nombreux systèmes de base de données en mémoire peuvent conserver les données sur le disque et ne pas toujours être en mesure de faire rentrer l’ensemble des données dans la mémoire disponible.

Pour les charges de travail de bases de données relationnelles, c’est un cache volatile rapide qui est principalement utilisé sur les appareils beaucoup plus lents mais durables. Cela nécessite des approches particulières quant à la gestion des charges de travail. Des taux de transfert de mémoire plus rapides, une plus grande capacité ou même une mémoire persistante peuvent faciliter le développement de nouvelles fonctionnalités et technologies et favoriser l’apparition de nouvelles approches concernant la gestion des charges de travail de base de données relationnelle.

Pool de tampons hybride

S’applique à :SQL Server

Le pool de mémoires tampons hybride développe le pool de mémoires tampons pour les fichiers de base de données résidant sur des périphériques de stockage de mémoire persistante pouvant être adressables par octets pour les plateformes Windows et Linux avec SQL Server 2019 (15.x).

Métadonnées tempdb à mémoire optimisée

S’applique à :SQL Server

SQL Server 2019 (15.x) introduit une nouvelle fonctionnalité qui est des métadonnées tempdb optimisées en mémoire, ce qui supprime efficacement certains goulots d’étranglement de contention et déverrouille un nouveau niveau d’extensibilité pour tempdbles charges de travail lourdes.

Pour plus d’informations sur les améliorations récentes tempdb , notamment les métadonnées optimisées en mémoire dans SQL Server 2019 (15.x) et les fonctionnalités plus récentes, consultez Améliorer l’extensibilité avec les améliorations de la concurrence des verrous de page système dans SQL Server 2022 et regardez les améliorations de l’accès concurrentiel de latch de page système (Ep. 6) | Données exposées.

OLTP en mémoire

S’applique à :SQL Server

OLTP en mémoire est une technologie de base de données disponible dans SQL Server et SQL Database pour optimiser les performances du traitement des transactions, de l’ingestion des données, de la charge des données et des scénarios de données temporaires.

Configuration de la prise en charge de la mémoire persistante pour Linux

S’applique à :SQL Server - Linux

SQL Server 2019 (15.x) décrit comment configurer la mémoire persistante (PMEM) à l’aide de la mémoire persistante de l’utilitaire ndctl.

Mémoire tampon du journal persistant

Service Pack 1 de SQL Server 2016 (13.x) a introduit une optimisation des performances pour les charges de travail nécessitant beaucoup d’écriture qui étaient liées par des attentes WRITELOG. La mémoire persistante est utilisée pour stocker la mémoire tampon du journal. Cette mémoire tampon, qui est de petite taille (20 Mo par base de données utilisateur), doit être vidée sur le disque afin que les transactions écrites dans le journal des transactions soient renforcées. Pour les charges de travail OLTP gourmandes en écriture, ce mécanisme de vidage peut devenir un goulot d’étranglement. Lorsque la mémoire tampon du journal se trouve dans la mémoire persistante, le nombre d’opérations nécessaires pour renforcer le journal est réduit, ce qui améliore les temps de transaction globaux et augmente les performances des charges de travail. Ce processus s’est d’abord appelé mise en cache de la fin du journal. Toutefois, une contradiction était perçue entre les sauvegardes de fin de journal et la compréhension traditionnelle selon laquelle la fin du journal correspond à la partie du journal des transactions qui est renforcée, mais pas encore sauvegardée. Étant donné que le nom officiel de cette fonctionnalité est Mémoire tampon du journal persistant, c’est lui que nous avons utilisé dans cet article.

Consultez Ajouter une mémoire tampon de journal persistant à une base de données.