Criar UserID, apesar de nomes de usuário exclusivos?

Meu aplicativo da web terá vários tipos de usuários: um usuário root, administradores de sistema, clientes, contratados, etc. Gostaria de ter uma tabela "Usuário" que terá as colunas "Nome de usuário", "Senha" e " Papel "com papel sendo um dos papéis acima mencionados. Por exemplo, também terei uma tabela chamada "Cliente" para armazenar atributos específicos do cliente.

Aqui está a minha pergunta. Como todos os nomes de usuários serão exclusivos, eu poderia usar o nome de usuário como a chave primária para a tabela Usuário. Seria mais sensato, no entanto, criar uma coluna "User ID" e usá-la em vez da coluna Username como PK? Existem muitas outras tabelas que usarão esta User PK como uma chave estrangeira e eu pensaria que, do ponto de vista do desempenho, será mais rápido comparar IDs de usuário em vez de strings de texto de nome de usuário.

Obrigado pela sua resposta.