Qual design de banco de dados é mais rápido: um índice exclusivo e INSERT IGNORE ou usando SELECT para localizar registros existentes?

Eu tenho uma tabela com apenas uma coluna: userid.

Quando um usuário acessa uma determinada página, seu ID do usuário é inserido na tabela. Os userids são únicos, portanto, não deve haver dois dos mesmos userids nessa tabela.

Eu estou considerando dois designs:

Tornando a coluna única e usandoINSERT comandos toda vez que um usuário acessar essa página.Verificar se o usuário já está registrado na tabela porSELECTda mesa, entãoINSERTse nenhum registro for encontrado.

Qual deles é mais rápido?

questionAnswers(6)

yourAnswerToTheQuestion