Интервал носителя Mysql по сравнению с международной производительностью

У меня есть простая пользовательская таблица, я предполагаю максимальных пользователей, которых я собираюсь иметь, 300,000.

В настоящее время я использую:

 CREATE TABLE users
 (
         id INT UNSIGNED AUTOINCREMENT PRIMARY KEY,
         ....

Конечно, у меня есть много других таблиц, для которых пользователей (идентификатор) FOREIGN KEY.

Я считал, что, так как идентификатор не собирается использовать полный максимум INT, который лучше использовать: MEDIUMINT и это дадут лучшую производительность.

Действительно ли это верно?

(Я использую mysql на Windows Server 2008),

6
задан Brian Tompsett - 汤莱恩 3 January 2017 в 20:53
поделиться

2 ответа

Разницы в производительности быть не должно, единственное преимущество, которое вы получите, это немного меньший размер таблицы. В любом случае, для 300'000 строк это не должно вас волновать.

3
ответ дан 8 December 2019 в 12:58
поделиться

Это называется микро-оптимизацией и не является проблемой.
Старайтесь задавать (себе в первую очередь) вопросы производительности, основываясь только на реальном опыте, а не на воображении. А профилирование всегда в помощь, чтобы отличить одно от другого.

Что касается "300k max" - в реальной жизни цифры имеют свойство неожиданно расти. Зачем копать себе подводные камни?

5
ответ дан 8 December 2019 в 12:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: