@apptimeru

Очень много строк в таблице за день, поле ID делать int или varchar?

Друзья добрый день, вопрос по оптимизации, если ли принципиальная разница, какой тип использовать для индекса таблицы? Например в день в таблицу добавляется около 1000-5000 строк, в int ограничение в 11 символов, у варчара значительно больше, понимаю что такое число не скоро забьется, но все же когда нибудь это случится, можно ли использовать varchar вместо int и на сколько это повлияет на производительность?
  • Вопрос задан
  • 426 просмотров
Пригласить эксперта
Ответы на вопрос 5
Stalker_RED
@Stalker_RED
При пяти тысячах в день вы достигните 10 миллионов записей примерно через шесть лет. А 214748364 - через 120 лет.
Ответ написан
Комментировать
@lega
int - не 11 символов, а 4 байта, весит меньше, работает быстрее, но разницу вы не заметите.
Ответ написан
@apptimeru Автор вопроса
И еще один смежный вопрос если позволите, тип int занимает 4 байта, а bigint 8 я так понимаю что одно и тоже число например: 999 будет занимать в int (4+4+4 = 12 байт) а в bigint (8+8+8 = 24 байт)? ход моих мыслей правилен, или нет?
Ответ написан
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
5000 *1000 = 5 миллионов записей за примерно 3 года, для нормально индексированной таблицы это не нагрузка от слова "вообще".
Ответ написан
Комментировать
@Andrey001
Если данные только численные, то хранить всегда только в числовом виде (для целочисленных значений int, bigint и др.). Это сократит занимаемое место (в большинстве ситуаций), упростит и ускорит индексацию, ускорит логические (<,>,вхождение в диапазон и т.д.) и арифметические (+,-,*,/,...) операции.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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