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

Desempenho do MySQL do campo varchar exclusivo versus bigint exclusivo


Seu valor hexadecimal é um GUID? Embora eu costumava me preocupar com o desempenho de itens longos como índices, descobri que em bancos de dados modernos a diferença de desempenho em milhões de registros é bastante insignificante.

Um problema potencialmente maior é a memória que o índice consome (16 bytes vs 4 bytes int, por exemplo), mas em servidores que eu controlo posso alocar para isso. Contanto que o índice possa estar na memória, acho que há mais sobrecarga de outras operações que o tamanho do elemento de índice não faz uma diferença perceptível.

No lado positivo, se você usar um GUID, você ganha independência do servidor para registros criados e mais flexibilidade na mesclagem de dados em vários servidores (o que é algo com o qual me importo, pois nosso sistema agrega dados de sistemas filhos).

Há um gráfico neste artigo que parece confirmar minha suspeita:Mitos, GUID vs Autoincrement