Compartilhar via


Usando In-Memory OLTP em um ambiente de VM

A virtualização do servidor pode ajudá-lo a reduzir os custos operacionais e de capital de TI e obter maior eficiência de TI com processos aprimorados de provisionamento, manutenção, disponibilidade e backup/recuperação de aplicativos. Com os recentes avanços tecnológicos, cargas de trabalho de banco de dados complexas podem ser consolidadas mais facilmente usando a virtualização. Este tópico aborda as práticas recomendadas para usar o SQL Server In-Memory OLTP em um ambiente virtualizado.

Pré-alocação de memória

Para memória em um ambiente virtualizado, melhor desempenho e suporte aprimorado são considerações essenciais. Você deve ser capaz de alocar memória rapidamente para máquinas virtuais, dependendo de seus requisitos (cargas de pico e fora do pico) e garantir que a memória não seja desperdiçada. O recurso Hyper-V Memória Dinâmica aumenta a agilidade na forma como a memória é alocada e gerenciada entre máquinas virtuais em execução em um host.

Algumas práticas recomendadas para virtualizar e gerenciar o SQL Server precisam ser modificadas ao virtualizar um banco de dados com tabelas com otimização de memória. Sem tabelas com otimização de memória, duas das práticas recomendadas são:

  • Se você usar MIN_SERVER_MEMORY, é melhor atribuir apenas a quantidade de memória necessária para que a memória suficiente permaneça para outros processos (evitando assim a paginação).

  • Não defina o valor de pré-alocação de memória muito alto. Caso contrário, outros processos podem não obter memória suficiente no momento em que precisarem, e isso pode resultar em paginação de memória.

Se você seguir as práticas acima para um banco de dados com tabelas com otimização de memória, uma tentativa de restaurar e recuperar um banco de dados poderá fazer com que o banco de dados esteja em um estado "Recuperação Pendente", mesmo que você tenha memória suficiente para recuperar o banco de dados. O motivo disso é que, ao iniciar, In-Memory OLTP traz dados para a memória de forma mais agressiva do que a alocação de memória dinâmica aloca memória para o banco de dados.

Resolução

Para atenuar isso, pré-aloque memória suficiente para o banco de dados para recuperar ou reiniciar o banco de dados, não um valor mínimo que dependa da memória dinâmica para fornecer a memória adicional quando necessário.

Consulte Também

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