Partilhar via


Sistemas e tecnologias 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 na memória no SQL Server. O conceito de um sistema de banco de dados in-memory refere-se a um sistema de banco de dados projetado para aproveitar as maiores capacidades de memória disponíveis em sistemas de banco de dados modernos. Um banco de dados na memória pode ser de natureza relacional ou não relacional.

Assume-se frequentemente que as vantagens de desempenho de um sistema de banco de dados na memória são principalmente devido a ele ser mais rápido para acessar dados que estão residentes na memória em vez de dados que estão sentados até mesmo nos subsistemas de disco mais rápidos disponíveis (por várias ordens de magnitude). No entanto, muitas cargas de trabalho do SQL Server podem caber todo o conjunto de trabalho na memória disponível. Muitos sistemas de banco de dados na memória podem manter os dados em disco e nem sempre podem caber todo o conjunto de dados na memória disponível.

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

Pool de buffer híbrido

Aplica-se a:SQL Server

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

Metadados do tempdb otimizados para memória

Aplica-se a:SQL Server

O SQL Server 2019 (15.x) apresenta um novo recurso que são metadados tempdb otimizados para memória, que efetivamente remove alguns gargalos de contenção e desbloqueia um novo nível de escalabilidade para tempdbcargas de trabalho pesadas.

Para obter mais informações sobre melhorias recentes tempdb, incluindo metadados otimizados para memória no SQL Server 2019 (15.x) e as funcionalidades mais recentes, consulte a Melhorar a escalabilidade com aprimoramentos de simultaneidade de trava de página do sistema no SQL Server 2022 e veja Aprimoramentos de simultaneidade de trava de página do sistema (Ep. 6) | Data Exposed.

OLTP na memória

Aplica-se a:SQL Server

OLTP na memória é 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, ingestão de dados, carga 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 memória persistente (PMEM) usando o utilitário ndctl.

Buffer de log persistente

O Service Pack 1 do SQL Server 2016 (13.x) introduziu uma otimização de desempenho para cargas de trabalho de gravação intensiva que estavam limitadas por esperas 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 no disco para que as transações gravadas no log de transações sejam reforçadas. Para cargas de trabalho OLTP de gravação intensiva, 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, melhorando os tempos gerais de transação e aumentando o desempenho da carga de trabalho. Este processo foi introduzido como Tail of Log Caching. No entanto, foi percebido um conflito com os Tail Log Backups e o entendimento tradicional de que a cauda do log era a parte do log de transações gravada, mas ainda sem backup. Como o nome oficial do recurso é Persisted Log Buffer, este é o nome usado aqui.

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