Я создаю приложение, которое требует, чтобы я однозначно идентифицировал каждого пользователя, чтобы они не могли регистрироваться несколько раз в одной службе. Для этого мне нужно будет искать личные данные пользователя против существующих в базе данных, чтобы увидеть, есть ли дубликаты.Уникальные ограничения идентификации пользователя
У меня уже есть уникальное ограничение на имя пользователя и адрес электронной почты, однако процедура требует от меня проверки следующих 9 полей, поскольку они проверяются во время процедуры KYC (Know Your Client), поэтому у меня есть «определенность», что они точны.
- FirstName
- MiddleName
- Фамилия
- DateOfBirth
- Пол
- Страна
- Адрес1
- Адрес2
- Address3
Я построил уникальное ограничение индекса (MySQL) для этого процесса, однако, учитывая довольно большое количество полей, я размышлял над тем, может ли быть разумнее просто проверять с серверной стороны и отказаться от уникального индекса в целом.
Принимая во внимание, что эти поля будут запрашиваться только при регистрации, KYC и финансовых транзакциях. Какова наилучшая практика, когда дело доходит до создания уникального индекса в большом количестве полей и какое влияние на производительность он может иметь в системе?