как может повлиять на производительность, когда я использую UUID в качестве моих первичных ключей в MySQL - PullRequest
0 голосов
/ 26 апреля 2011

Я хотел бы знать, как или насколько это может повлиять на производительность сервера, когда я использую UUID для своих первичных ключей в MySQL.

Ответы [ 2 ]

1 голос
/ 26 апреля 2011

Полагаю, вы используете InnoDB (вы все равно должны ...)UUID - плохой выбор с точки зрения производительности (из-за кластеризованного индекса), и у них есть эталон, чтобы доказать это.

1 голос
/ 26 апреля 2011

UUID имеет длину 36 символов, что означает 36 байтов. INT составляет 4 байта с вариациями TINYINT, MEDIUMINT и BIGINT, которые все ниже 36 байтов.

Следовательно, для каждой вставляемой записи ваш индекс будет выделять больше места. Кроме того, UUID требует больше времени для вычисления, в отличие от увеличения целого числа.

Что касается того, насколько это может повлиять на систему, то трудно назвать действительные цифры, потому что существуют различные факторы - нагрузка на систему, оборудование и т. Д.

...