Я создаю сайт, который позволяет пользователям обмениваться определенными страницами с общественностью.Это похоже на то, как jsbin.com позволяет создавать общедоступный URL-адрес сценария, над которым вы работаете.Базовая таблица MySQL, с которой я сейчас работаю:
CREATE TABLE IF NOT EXISTS `lists` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`hash` varchar(6) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `hash` (`hash`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Поле key
- это столбец, содержащий случайную строку, которую пользователь напечатает в конце URL-адреса.Так, например, если пользователь опубликовал там свою страницу со значением хеш-функции a1b2c3
, тогда URL-адрес будет http://mysite.com/a1b2c3
ОК, извините, описание заняло столько времени.У меня вопрос, должен ли я индексировать хэш-столбец?Будет ли это ускорять запросы, так как я собираюсь искать строки по их хэш-значениям?
Кроме того, у меня есть другая таблица, которая имеет отношение внешнего ключа к этой.Имеет ли смысл с точки зрения производительности связывать его с хеш-столбцом?
Спасибо за помощь.