Сколько шаблонов существует в «сокращенном URL»?

С помощью алфавита (прописные и строчные буквы) + цифры [a-zA-Z0-9]^5, используя хэши, выдается 916 132 832 возможных путей.
Хеш-значение, полученное из URL, соответствует переменной части сокращенного URL.

Хэш-функция разработана таким образом, что хэш-значение принимает как можно более уникальное значение.
Тем не менее, если длина (информационное содержание) исходной строки не ограничена, могут возникать конфликты (т.е. одно и то же хэш-значение для разных URL).
Существует несколько обходных путей, один из которых заключается в использовании следующего значения в качестве хэш-значения

Одним из обходных путей является использование следующего значения в качестве хэш-значения. «А что если следующее значение будет использовано?» — это правда, но хэш-функции разработаны таким образом, чтобы максимально разбросать значения при вводе похожих данных, так что при возникновении коллизии следующее значение часто оказывается свободным.

При создании сокращенного URL-адреса процесс выглядит следующим образом

1. Из строки URL создайте хэш-значение, которое укладывается в 5-значное шестнадцатеричное число (916,132,832).
2. Зарегистрируйте хэш-значение и URL в таблице со столбцами (столбец хэш-значения является первичным ключом).
3. Если URL уже зарегистрирован в таблице
a. Если URL уже зарегистрирован, используется хэш-значение.
b. Если URL не зарегистрирован, увеличьте значение хэша на единицу и попытайтесь зарегистрировать его.

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

Поскольку этот процесс выполняется при поиске свободного места в регистрационной таблице, она не исчерпает 916 132 832 места, пока все они не будут использованы, но если будет много коллизий хэша, производительность снизится.
Однако эта «производительность» связана только с регистрацией сокращенных URL и никак не влияет на процесс поиска, поэтому в силу природы сервиса ее хватает до тех пор, пока не будут использованы все 9,1 миллиарда комбинаций.

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