Fala, galera, beleza? Hoje trouxe um desafio, onde a ideia em geral é bem simples, escrever um T-SQL que atenda o solicitado com a melhor performance possível. No final, irei postar o resultado e as melhores soluções. Update: A resposta desse desafio já foi lançada e você consegue conferir em: https://vulgomarcio.home.blog/2020/11/14/resposta-desafio-01-tsql-performance/ Espero que vocês se... Continuar Lendo →
O curioso caso, onde o SQL não usou paralelismo.
Olá, pessoal! Tudo bem? Hoje vim trazer um caso que encontrei no meu dia a dia, um tanto quanto curioso. Havia uma query que tinha um tempo de execução de aproximadamente uma hora e não executava em paralelo, quando notei, claro, verifiquei alguns pontos como: Maxdop;Cost Threshold;Utilização de funções (UDF);Entre outros... Incrível foi que mesmo... Continuar Lendo →
CPU Topando vs QueryNonSarg
Oi pessoal, tudo bem? Há algum tempo atrás passei por um cenário onde uma consulta Non-Sarg era executada constantemente, gerando um alto consumo de CPU, deixando o servidor topado. Meu objetivo hoje é demonstrar como transformei a consulta em SARG diminuindo drasticamente o consumo de CPU. *Links para os scripts no final do post. Após utilizarmos... Continuar Lendo →
Utilizando View Indexada para melhorar a performance de suas consultas
Fala pessoal, tudo bem? Há pouco tempo trabalhei em uma query em um ambiente 2008 R2 que retornava dados agregados com um tempo de execução bem alto. Indexei a query, porém, a coluna que realizava o filtro não era nem um pouco seletiva e por conta disso, não obtive ganho expressivo no tempo de execução. ... Continuar Lendo →
Removendo Operador Eager Spool
Olá pessoal, tudo bem? Hoje vim compartilhar um caso do meu dia a dia com vocês, onde o operador de EAGER SPOOL impactou na quantidade de leituras e no tempo de execução de uma query. Antes de apresentar o caso, vamos entender um pouco sobre este operador. Table Spool (Eager Spool) Este operador recebe linha por linha de... Continuar Lendo →