#mysql #инспекция_кода
Есть табличка, в которой primary key - это пара 32-битных ключей id1, id2.
Соответственно, все ссылки по foreign key на эту таблицу тоже идут по этой паре.
С точки зрения исходной модели у каждого ключа свой смысл, и хранить их парой конечно
же удобней с точки зрения читабельности.
Однако интересует - какова эффективность такого решения по сравнению с тем, чтобы
объединить эту пару в единый 64-х битный ключ.
Ключи эти всегда идут парой, поэтому так сделать можно.
Вопрос: даст ли это хоть какую-то выгоду с точки зрения любого аспекта производительности,
или это будет тоже самое?
Ответы
Ответ 1
Похожий вопрос поднимался на англоязычном SO: https://stackoverflow.com/questions/1460465/composite-primary-key-performance-drawback-in-mysql Если вы используете InnoDB, то разницы в производительности PK (INT) и (INT, INT) практически нет. Если еще и сами поля происходят из бизнес-модели, то видимо лучше ничего не менять.
Комментариев нет:
Отправить комментарий