Я думаю, что «почти уникальный» — это отвлекающий маневр. Данные либо уникальны, либо нет, но это не определяет, хотите ли вы индексировать их из соображений производительности.
Отвечать:
5000 записей действительно совсем немного, и независимо от того, есть ли у вас индекс, поиск все равно будет быстрым. При таком количестве вставок вам потребуется 3 года, чтобы получить 10 000 записей, что тоже немного.
Лично я не стал бы добавлять индекс, но это не имело бы значения, если бы вы это сделали.
Объяснение:
При принятии решения о добавлении индекса вам следует подумать о компромиссе между скоростью вставки и скоростью выбора.
Без индекса выполнение select
в этом поле означает, что MySQL должен пройти по каждой отдельной строке и прочитать каждое отдельное поле. Добавление индекса предотвращает это.
Недостатком индекса является то, что каждый раз, когда данные вставляются, БД должна обновлять индекс в дополнение к добавлению данных. Обычно это небольшие накладные расходы, но вы бы действительно заметили это, если бы у вас было множество индексов и вы выполняли много операций записи.
К тому времени, как вы получите столько строк в своей базе данных, вам все равно понадобится индекс, так как в противном случае ваш выбор займет весь день, но это просто то, о чем нужно знать, чтобы вы не добавили индексы к полям «просто». на случай, если мне это понадобится"
person
Orion Edwards
schedule
12.11.2008