Mostrando postagens com marcador Perfomance. Mostrar todas as postagens
Mostrando postagens com marcador Perfomance. Mostrar todas as postagens

sexta-feira, 5 de julho de 2019

Os principais problemas de desempenho no SQL SERVER

Quais foram as causas dos últimos problemas de desempenho de SQL Server, que você enfrentou?

"Como podemos observar, os 2 problemas mais comuns são o código T-SQL e a indexação.
4 dos 6 problemas mais comuns estão todos diretamente relacionados ao T-SQL, índices, código,
e estrutura dos dados. Para obtermos melhorias em desempenho devemos olhar primeiro para área de acesso a dados, incluindo design de banco de dados, design de consulta, e design de índice.

Claro, se considerar a configuração de hardware e atualizações, podemos obter um ganho de desempenho satisfatório. No entanto, uma consulta SQL incorreta enviada pela aplicação pode consumir todos os recursos de hardware disponíveis, não importa o quanto recurso tenha."


Fonte: Grant Fritchey
Grafton, Massachusetts,

quinta-feira, 29 de novembro de 2018

SQL Server on Linux Tuning Settings

Best Settings for SQL Server


• Use (PROCESS AFFINITY) afinidade por CPUs, mesmo em harwares de uma unica NUMA.
(NUMA - Soquetes únicos).

• Configure múltiplos arquivos de TEMPdb (para uso de benchmarks vve use 1 arquivo,
por processador lógico).

• Defina um limite de memória com mssql-conf.

• Por padrão, o SQL Server no Linux usa apenas 80% da RAM física por padrão.Para alguns datacenter's com grande quantidade de memoria RAM disponível,20% pode ser um número muito significativo;

Podemos configurar o limite de memória para um valor mais alto:

Configuração do sistema operacional Linux


• Configure o Kernel para Alto Desempenho (High Performance)

• Desabilite o balanceamento automático NUMA em sistemas NUMA com vários nós.

• Aumente as configurações do kernel para endereçamento virtual. (Virtual Address)

• Habilite (THP -  Transparent Huge Pages) páginas enormes e transparentes.
Com o THP habilitado, o sistema realiza automaticamente as requisições de alocação de memória do NUMA  para quantias contínuas grandes de memória, reduzindo a contenção de bloqueio e o número de operações  de gerenciamento de memória do translation lookaside buffer (TLB) necessárias e gerando um crescente desempenho de até 20%.

• Se estiver executando o SQL Server no Linux em uma máquina virtual, corrija a quantidade de memória reservada para a máquina virtual!



Em alguns números:

180 bilhões de linhas (tabela única) digitalizadas em menos de 20 segundos!
Utilizados 480 CPUs, todos funcionando com 100% de utilização

Benchmarks Padrão da Indústria no Linux
• HPE DL380 Gen9 1 TB TPC-H1 no Red Hat Enterprise Linux
• Publicado em outubro de 2017
• 717,101 QphH @ 1.000 GB / US $ 61 US $ por QphH em 1.000 GB
• HPE DL380 Gen10 1 TB TPC-H2 no SUSE Linux Enterprise Server
• Utilizou a Tecnologia de Memória Persistente da HPE - Primeiro banco de dados sem disco!
• 1,009,065 QphH @ 1,000 GB / US $ 47 US $ por QphH em 1.000 GB
• Resultou em um aumento de 45% no desempenho, uma redução de 50% nos custos de hardware e uma redução de até 85% no espaço em rack,
quando comparado a um sistema similar baseado em SSD
E mais no pipeline para 2018 ...