Criando e gerenciando armazenamento para objetos com otimização de memória

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

O mecanismo OLTP in-memory é integrado ao SQL Server, o que permite que você tenha tabelas com otimização de memória e tabelas baseadas em disco (tradicionais) no mesmo banco de dados. No entanto, a estrutura de armazenamento para tabelas com otimização de memória é diferente daquela para tabelas baseadas em disco.

O armazenamento de tabela com base em disco tem os seguintes atributos de chave:

  • Mapeado para um grupo de arquivos, e o grupo de arquivos contém um ou mais arquivos.

  • Cada arquivo é dividido em extensões de 8 páginas e cada página tem tamanho de 8 Kb.

  • Uma extensão pode ser compartilhada entre várias tabelas, mas há mapeamento de 1 para 1 entre uma página alocada e a tabela ou índice. Em outras palavras, uma página não pode ter linhas de duas ou mais tabelas ou índices.

  • Os dados são movidos para a memória (pool de buffers) conforme necessário e as páginas modificadas ou recém-criadas assincronamente são gravadas no disco, gerando principalmente E/S aleatória.

O armazenamento de tabelas com otimização de memória tem os seguintes atributos de chave:

  • Todas as tabelas com otimização de memória são mapeadas para um grupo de arquivos de dados com otimização de memória. Esse grupo de arquivos usa sintaxe e semântica semelhantes às do Filestream.

  • Não existem páginas e os dados são persistentes como uma linha.

  • Todas as alterações em tabelas com otimização de memória são armazenadas, sendo anexadas a arquivos ativos. A leitura e a gravação de arquivos são sequenciais.

  • Uma atualização é registrada como uma exclusão seguida de uma inserção. As linhas excluídas não são removidas imediatamente do armazenamento. As linhas excluídas são removidas por um processo em segundo plano chamado MERGE, com base em uma política conforme descrito em Durabilidade de tabelas com otimização de memória.

  • Ao contrário das tabelas baseadas em disco, o armazenamento para tabelas com otimização de memória não é compactado. Ao migrar uma tabela baseada em disco compactada (ROW ou PAGE) para tabela com otimização de memória, você precisará levar em conta a alteração no tamanho.

  • Uma tabela com otimização de memória pode ser durável ou não durável. Você precisa configurar o armazenamento de tabelas com otimização de memória duráveis.

Esta seção descreve os pares do arquivo do ponto de verificação e outros aspectos do armazenamento de dados em tabelas com otimização de memória.

Tópicos desta seção:

Confira também

OLTP na memória (otimização na memória)