При создании веб-приложения, которое каким-то образом отображает отображение уникального идентификатора для повторяющегося объекта (видеоролики на YouTube или раздел книги на моем сайте, например, мой), было бы лучше использовать единую длину идентификатор, например хэш, или уникальный ключ элемента в базе данных (1, 2, 3 и т. д.).Hashes vs Numeric id's
Помимо выявления немного, что, по моему мнению, несущественно, информация о внутренних компонентах вашего приложения, почему использование хеша лучше, чем просто использование уникального идентификатора?
Вкратце: Что лучше использовать в качестве общедоступного уникального идентификатора - значения хэша или уникального ключа из базы данных?
Edit: Я открываю этот вопрос еще раз, потому что Дмитрий принес хорошую точку, не сковывая именование к БД конкретного свойства. Будет ли такая привязка мешать мне оптимизировать/нормализовать базу данных в будущем?
Платформа использует php/python с ISAM/w MySQL.
Они согласуются, но вы правы, говоря, что они не уникальны (по определению есть столкновения). Тем не менее, столкновения можно избежать в значительной степени, добавив какую-то случайную или неопределенную соль (микро- или случайное число) перед хешированием. – Karan 2008-10-13 04:50:37
Добавление соли не будет иметь никакого отношения к числу столкновений. – 2008-10-13 04:52:09
Хорошая точка. Сотрите это. – Karan 2008-10-13 04:56:59