AGUARDE... CARREGANDO...

Usa o SQL Server Express? Por que ainda não migrou para a versão 2016? É de graça!

Fala Pessoal,

Semana passada eu atendi uma empresa que utilizava o SQL Express para sua aplicação.

Eles utilizavam a versão 2014 e já estavam com a base em 6 GB. Fiz um atendimento rápido para eles e deixei como dica migrarem para a versão Express do SQL Server 2016, já que não terão nenhum custo com licença para isso.

Mas por que eu devo ter todo esse trabalho de migrar Fabrício? Me convence!

Vamos lá. Segue alguns argumentos para realizar essa migração.

Os limites de Hardware ainda não mudaram… Mas…

Memória: 1410 MB para o buffer cache. Lembrando que os outros caches podem usar mais memória. Esse cliente que peguei tinha muita consulta Adhoc e estava usando 3 GB de cache apenas para o plano de execução dessas consultas.

Agora no SQL Express 2016 SP1 também existe a possibilidade de usar memória para ColumStore e para Tabelas em memória (In-Memory). Na prática, acho difícil o pessoal usar isso para essas aplicações menores, mas…

CPU: Podemos usar até 4 cores. Tem cliente que acha que só pode usar uma CPU no Express. Você pode usar 1 socket e esse socket pode ter até 4 cores que o SQL Express vai reconhecer.

Disco: O limite do tamanho da base continua 10 Gb, mas no SQL Server Express 2016 SP1 podemos usar compressão de dados como vamos ver mais na frente.

Compressão de Dados

Já utilizei a compressão de dados no SQL Server com resultados muito significativos na redução de espaço utilizado pelo banco.

Em um banco Protheus da Totvs por exemplo, já reduzi em 80% o tamanho do banco. Na sua empresa será um pouco menos que isso, pois o recorde é da Totvs devido a forma como criam e armazenam os dados.

O quanto seu banco vai compactar depende do tipo de informação que você armazena.

Com essa redução que a compressão proporciona, você conseguirá armazenar mais dados que conseguia até versões anteriores ao SQL Server 2016 SP1.

Mas Fabrício, qual o custo disso?

Temos um consumo um pouco maior de CPU, contudo, o ganho que temos com acesso a disco e uma melhor utilização da memória, na grande maioria dos casos compensa. Suas páginas ficam armazenadas compactadas no Buffer Cache, logo, você consegue manter muito mais páginas em memória (que vale ouro!!) reduzindo o acesso a disco (que é lento!!).

Normalmente CPU é menos crítico que disco e memória para um banco de dados.

Em um ambiente Express, 4 cores de CPU normalmente não é problema, agora 1.410 MB de memória, se tiver várias bases, pode ser problema. A compactação ajuda com isso.

Utilização do Query Store

Sabe aquele problema onde o SQL Server estava funcionando perfeitamente e do nada ficou lento?

Isso pode ser algum parâmetro diferente que foi passado em uma query que fez o SQL usar um plano diferente que não é o melhor para a maioria das chamadas. O Query Store será nosso grande amigo para analisar esse tipo de problema.

Vamos conseguir ver os planos diferentes de uma query e forçar o SQL a usar o plano com melhor performance.

Também vamos conseguir monitorar de forma mais simples as TOP queries que mais demoram, mais consomem CPU, disco e memória. Dentre outras informações que o Query Store nos proporciona para nos ajudar no nosso Tuning.

Mas Fabrício, temos isso no SQL Express???

Sim. Temos:

Caso use o Query Store no Express, instale o update mais recente visto que existe um problema no query store para as versões Standard e Express que já foi corrigido.

https://support.microsoft.com/en-us/help/3178297/query-store-automatic-data-cleanup-fails-on-editions-other-than-enterprise-and-developer-edition-of-sql-server-2016

Melhorias da Engine do SQL 2016

Como ja disse nesse post: Tem SQL Server Standard na sua empresa? Hora de planejar a migração para o SQL Server 2016!!!

O funcionamento interno do SQL Server 2016 foi o que teve mais melhorias dentre as últimas versões do SQL que foram liberadas. A microsoft investiu bastante reescrevendo como ele funciona internamente para torná-lo mais rápido. Só de você desinstalar uma versão antiga e instalar o SQL Server 2016 em um mesmo hardware ele já ficará mais rápido.

Segue abaixo um vídeo do BobWard falando sobre os detalhes dessas melhorias internas do SQL Server. Vale a pena assistir:

Vídeo: https://channel9.msdn.com/Events/Ignite/2016/BRK3043-TS

Outras novas funcionalidades do SQL Express 2016 SP1

Segue abaixo um quadro com outras funcionalidades que você pode passar a utilizar migrando seu SQL Server Express para a versão 2016 SP1.

Destaque para:

Row-level security, Dynamic Data Masking e Always Encrypted.

Conclusão

Espero que tenha conseguido te convencer a migrar seu SQL server Express para a nova versão do 2016.

Até quem tem um Standard já tem muitos motivos para migrar, imagina quem tem Express que não paga nada por isso.

Gostou dessa Dica?

Curta, comente, compartilhe…

Assine meu canal no Youtube e curta minha página no Facebook para receber Dicas de Leituras, Vídeos e Eventos sobre SQL Server.

Até a próxima.

Fabrício Lima

MCITP – Database Administrator

Consultor e Instrutor SQL Server

Trabalha com SQL Server desde 2006

Deixe uma resposta

%d blogueiros gostam disto: