Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Ajudaria adicionar índice à coluna BIGINT no MySQL?


Se você tiver uma tabela muito grande, pesquisar valores que não estão indexados pode ser extremamente lento. Em termos do MySQL, esse tipo de consulta acaba sendo uma "varredura de tabela", que é uma maneira de dizer que deve testar em cada linha da tabela sequencialmente. Obviamente, esta não é a melhor maneira de fazê-lo.

Adicionar um índice ajudará com ler velocidades, mas o preço que você paga é um pouco mais lento gravar velocidades. Sempre há uma compensação ao fazer uma otimização, mas no seu caso a redução no tempo de leitura seria imensa, enquanto o aumento no tempo de gravação seria marginal.

Lembre-se de que adicionar um índice a uma tabela grande pode levar um tempo considerável, portanto, teste isso em relação aos dados de produção antes de aplicá-lo ao seu sistema de produção. A tabela provavelmente será bloqueada pela duração do ALTER TABLE declaração.

Como sempre, use EXPLAIN em suas consultas para determinar sua estratégia de execução. No seu caso seria algo como:
EXPLAIN SELECT * FROM table1 WHERE my_big_number=19287319283784