Combien de motifs y a-t-il dans une « URL raccourcie » ?

Avec l’alphabet (majuscules et minuscules) + les chiffres [a-zA-Z0-9]^5, 916 132 832 chemins possibles sont émis en utilisant des hashs.
La valeur de hachage obtenue à partir de l’URL correspond à la partie variable de l’URL raccourcie.

La fonction de hachage est conçue de manière à ce que la valeur de hachage prenne une valeur aussi unique que possible.
Néanmoins, si la longueur (contenu informatif) de la chaîne originale n’est pas limitée, des conflits peuvent survenir (c’est-à-dire la même valeur de hachage pour différentes URL).
Il existe plusieurs solutions de contournement, dont l’une consiste à utiliser la valeur suivante comme valeur de hachage

L’une des solutions de contournement consiste à utiliser la valeur suivante comme valeur de hachage. « Et si la valeur suivante était utilisée ? » est vrai, mais les fonctions de hachage sont conçues pour disperser les valeurs autant que possible lorsque des données similaires sont entrées, de sorte que lorsqu’une collision se produit, la valeur suivante est souvent libre.

Lors de la création d’une URL raccourcie, le processus est le suivant

1. À partir de la chaîne URL, créez une valeur de hachage qui correspond à un nombre hexadécimal à 5 chiffres (916 132 832).
2. Enregistrez la valeur de hachage et l’URL dans une table à colonnes (la colonne de la valeur de hachage est la clé primaire).
3. Si l’URL est déjà enregistrée dans la table
a. Si l’URL a déjà été enregistrée, la valeur de hachage est utilisée.
b. Si l’URL n’est pas enregistrée, augmentez la valeur de hachage d’une unité et essayez de l’enregistrer.

Pour obtenir l’URL réelle à partir d’une URL raccourcie, il suffit de la consulter dans une table.
Les RDB sont conçus pour accélérer le processus d’identification des enregistrements à partir des clés primaires.

Étant donné que le processus s’effectue tout en recherchant de l’espace libre dans la table d’enregistrement, les 916 132 832 ne seront pas épuisés tant qu’ils ne seront pas tous utilisés, mais s’il y a de nombreuses collisions de hachage, les performances diminueront.
Cependant, cette « performance » est uniquement liée à l’enregistrement des URL raccourcies et n’a aucun effet sur le processus de recherche. En raison de la nature du service, elle est suffisante jusqu’à ce que les 9,1 milliards de combinaisons soient épuisées.

Même si le nombre est épuisé, le nombre de combinaisons possibles peut être augmenté en ajoutant un caractère ou un chiffre supplémentaire.