Uma das tabelas centrais do meu banco de dados possui uma varchar(25)
coluna chamada EmployeeID.
Esta coluna é usada em um índice composto e é provavelmente o índice mais usado em nosso sistema.
Recebemos uma solicitação de melhoria do lado comercial que exigiria que ampliássemos essa coluna para varchar(75)
. Os 200 milhões de linhas existentes não seriam atualizados e seus EmployeeIDs ainda teriam menos de 25 caracteres. Estaríamos apenas adicionando alguns milhares de novas linhas que podem ter EmployeeIDs excedendo 25 caracteres.
Minha pergunta é, neste caso, o alargamento da coluna EmployeeID teria impacto no desempenho deste índice?
Com base nas afirmações acima, responda à pergunta:
Será que o impacto no desempenho "atual" do índice será mínimo/insignificante, uma vez que os registros existentes permanecerão com a mesma largura - você não tornará os dados existentes mais amplos -> portanto, não causará fragmentação do índice, e não aumentaria o tamanho dos registros existentes (o que significaria aumento no espaço de armazenamento e no consumo de memória, portanto, uma consulta mais lenta do índice).
O índice começará a consumir mais armazenamento e memória ao longo do tempo (portanto, a consulta pode se tornar mais lenta) - em comparação com sua versão anterior - dependendo de quantos registros você adicionar que excedem
varchar(25)
os valores.