A documentação para estados sp_WhoIsActive
As mais confusas dessas colunas são aquelas relacionadas a tempdb . Cada uma das colunas informa um número de páginas de 8 KB. A coluna [tempdb_allocations] é coletada diretamente dos DMVs relacionados ao tempdb e indica quantas páginas foram alocadas no tempdb devido a tabelas temporárias, tipos de LOB, spools ou outros consumidores. A coluna [tempdb_current] é calculada subtraindo as informações de páginas desalocadas relatadas pelos DMVs tempdb do número de alocações. Ver um grande número de alocações com uma pequena quantidade de páginas atuais significa que sua consulta pode estar prejudicando o tempdb, mas não está fazendo com que ele cresça. Ver um grande número de páginas atuais significa que sua consulta pode ser responsável por todos os crescimentos automáticos que você percebe.
tempdb_current
é a coluna que me confundiu. Meu entendimento simples em inglês é que uma página só pode ser alocada ou desalocada, o que significa que subtrair um número do outro não deve produzir nada útil. Claramente, estou errado. O que pode ser uma página se não for alocada nem desalocada?
Os dados vêm daqui
sys.dm_db_task_space_usage
Isto é para a consulta atual da sessão. A ideia é que se a consulta alocou 1.000 páginas e desalocou 800 páginas, então ainda existem 200 páginas alocadas.