Melhorias no gerenciamento de memoria SQL Server 2012

Ola pessoal,

Uma das melhorias no gerenciamento de memoria que temos na nova versão do SQL Server foi a configuração da quantidade de memoria a ser disponibilizada para buffer cache do SQL Server. No SQL Server 2008 é possível que você configure a quantidade de memoria que você bem entender na opção Max Server Memory, ou seja, se o espertinho achar que 16MB de memoria já é o suficiente para a instancia do SQL Server ele consegue configurar, porem a partir do SQL Server 2012 foi adotado um padrão de que o Max Server Memory nao poderá ter o valor configurado abaixo de 128MB.

Apenas para comprovar a teoria vamos realizar um pequeno teste.

sp_configure ‘max server memory (MB)’, 64
GO
RECONFIGURE

Nao que seja uma GRANDE MELHORIA, mas com certeza ira ajudar muito os DBA’s a não encontrarem aquelas supresinhas desagradáveis quando se deparam com um novo ambiente. Eu particularmente ainda acho pouco, deveria ser no minimo 512MB para começar a brincadeira, mas para quem não tinha nada antes isso já é um bom começo.

Update: Em um dos comentários Erickson (Twitter|Blog) falou que a partir do SQL Server 2012 o Max Server Memory passará a controlar toda a memoria que o SQL Server ira utilizar, e nao somente o Buffer Pool. Com certeza essa sim é uma grande melhoria do SQL Server.

Bom, créditos ao  Erickson por essa dica🙂

Espero que tenham gostado dessa melhoria.

Att,
Marcos Freccia
[MCTS|MCITP|MCT SQL Server 2008]

Sobre Marcos Freccia

MVP em SQL Server (Data Plataform) , especialista em SQL Server, e atualmente trabalhando com Microsoft Azure!

Publicado em fevereiro 26, 2012, em Administração, SQL Server 2012, VirtualPass e marcado como , , . Adicione o link aos favoritos. 6 Comentários.

  1. Cleiton Domazak

    Ctz, isso e a implementação de SEQUENCE nessa versão, que era uma dor de cabeça em sistemas que suportam vários SGBDs. Além disso acho de que deveria ter um valor minimo para os data files, principalmente de LOG🙂, dias atrás quase quebrei a cabeça com Transaction Log full até descobrir que algum artista tinha definido o tamanho como 1mb hehehe.

  2. Marcos,

    Até mais importante que o limite mínimo de memória, que também ajuda, é saber que agora a configuração MAX SERVER MEMORY é de fato toda memória que o SQL Server vai utilizar, não sendo mais limitada a controlar somente o Buffer Pool. Isso pra mim foi umas das melhorias mais importantes no gerenciamento de memória no SQL Server 2012.

    Abraços,
    Erickson

  3. Marcos, acho que vale a pena agregar o comentário do Erickson ao post. Apesar do usuário não perceber isso, essa mudança altera todo o comportamento do SQL Server desde o SQL 7.0 com relação a hierarquia de memória e faz um “downgrade” do Buffer Cache. Isso irá facilitar a vida do DBA ao dimensionar o parâmetro Max Server Memory.

    Abraços e continue com esses posts,
    Fabricio.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: