Tecnologias e sistemas de banco de dados em memória

Aplica-se a:SQL Server

Esta página destina-se a servir como uma página de referência para recursos e tecnologias em memória no SQL Server. O conceito de um sistema de banco de dados em memória refere-se a um sistema de banco de dados que foi projetado para aproveitar capacidades de memória maiores disponíveis em sistemas de banco de dados modernos. Um banco de dados em memória pode ser relacional ou não relacional por natureza.

Frequentemente assume-se que as vantagens de desempenho de um sistema de banco de dados em memória se devem principalmente ao fato de ele ser mais rápido para acessar os dados residentes na memória em vez de os dados localizados até mesmo nos subsistemas de discos mais rápido disponíveis (por várias ordens de magnitude). No entanto, muitas cargas de trabalho do SQL Server podem se ajustar a todo o conjunto de trabalho na memória disponível. Muitos sistemas de banco de dados em memória podem persistir dados em disco e nem sempre podem ser capazes de se ajustar a todo o conjunto de dados na memória disponível.

Um cache volátil rápido que traz uma mídia consideravelmente mais lenta, mas durável, era predominante para cargas de trabalho de banco de dados relacional. Ele precisa de abordagens específicas para o gerenciamento de carga de trabalho. As oportunidades apresentadas por taxas de transferência de memória mais rápidas, maior capacidade ou até mesmo a memória persistente facilitam o desenvolvimento de novos recursos e tecnologias que podem estimular novas abordagens ao gerenciamento de carga de trabalho de banco de dados relacional.

Pool de buffers híbrido

Aplica-se a:SQL Server

O pool de buffers híbrido expande o pool de buffers para arquivos de banco de dados que residem em dispositivos de armazenamento de memória persistente endereçáveis por byte para plataformas Windows e Linux com o SQL Server 2019 (15.x).

Metadados do tempdb com otimização de memória

Aplica-se a:SQL Server

O SQL Server 2019 (15.x) apresenta um novo recurso, os metadados do tempdb com otimização de memória, que remove efetivamente alguns gargalos de contenção e desbloqueia um novo nível de escalabilidade para cargas de trabalho com uso intenso do tempdb.

Para obter mais informações sobre melhorias recentes do tempdb, incluindo metadados otimizados para memória no SQL Server 2019 (15.x) e recursos mais recentes, confira Melhorar a escalabilidade com aprimoramentos de simultaneidade da trava da página do sistema no SQL Server 2022 e assista a Aprimoramentos de simultaneidade da trava da página do sistema (Ep. 6) | Dados expostos.

OLTP na memória

Aplica-se a:SQL Server

O OLTP in-memory é uma tecnologia de banco de dados disponível no SQL Server e no Banco de dados SQL para otimizar o desempenho do processamento de transações, a ingestão de dados, o carregamento de dados e cenários de dados transitórios.

Configurando o suporte de memória persistente para Linux

Aplica-se a:SQL Server – Linux

O SQL Server 2019 (15.x) descreve como configurar a PMEM (memória persistente) usando o utilitário ndctl de memória persistente.

Buffer de log persistente

O Service Pack 1 do SQL Server 2016 (13.x) introduziu uma otimização de desempenho para cargas de trabalho com uso intensivo de gravação que foram associadas por esperas de WRITELOG. A memória persistente é usada para armazenar o buffer de log. Esse buffer, que é pequeno (20 MB por banco de dados de usuário), deve ser liberado para o disco para que as transações gravadas no log de transações sejam protegidas. Para cargas de trabalho OLTP com uso intensivo de gravação, esse mecanismo de liberação pode se tornar um gargalo. Com o buffer de log na memória persistente, o número de operações necessárias para proteger o log é reduzido, aprimorando os tempos de transação gerais e aumentando o desempenho da carga de trabalho. Esse processo foi introduzido como Final do cache de log. No entanto, houve um conflito percebido com Backups de log de transações final e o entendimento tradicional de que a parte final do log foi a porção do log de transações protegida, mas ainda não foi feito backup. Como o nome do recurso oficial é um buffer de log persistente, esse é o nome usado aqui.

Confira Adicionar buffer de log persistente a um banco de dados.