Berapa banyak corak yang terdapat dalam “URL yang dipendekkan”?

Dengan abjad (huruf besar dan huruf kecil) + nombor [a-zA-Z0-9] ^ 5, 916.132.832 kemungkinan cara dikeluarkan menggunakan hash.
Nilai hash yang diperoleh dari URL sesuai dengan bahagian pemboleh ubah dari URL yang dipendekkan.

Fungsi hash dirancang sedemikian rupa sehingga nilai hash mengambil nilai yang unik.
Walaupun begitu, jika panjang (kandungan maklumat) rentetan asal tidak terhad, konflik mungkin berlaku (iaitu nilai hash yang sama untuk URL yang berbeza).
Terdapat beberapa penyelesaian, salah satunya adalah menggunakan nilai berikut sebagai nilai hash

Salah satu jalan penyelesaian adalah menggunakan nilai seterusnya sebagai nilai hash. “Bagaimana jika nilai seterusnya digunakan?” memang benar, tetapi fungsi hash dirancang untuk menyebarkan nilai sebanyak mungkin ketika data serupa dimasukkan, sehingga ketika perlanggaran berlaku, nilai berikutnya sering kali bebas.

Semasa membuat URL yang dipendekkan, prosesnya adalah seperti berikut

1. Dari rentetan URL, buat nilai hash yang sesuai dengan nombor heksadesimal 5 digit (916.132.832).
2. Daftarkan nilai hash dan URL dalam jadual dengan lajur (lajur nilai hash adalah kunci utama).
3. Sekiranya URL sudah didaftarkan dalam jadual
a. Sekiranya URL telah didaftarkan, nilai hash digunakan.
b. Sekiranya URL tidak didaftarkan, tingkatkan nilai hash satu dan cuba mendaftarkannya.

Untuk mendapatkan URL sebenar dari URL yang dipendekkan, cari saja dalam jadual.
RDB direka untuk mempercepat proses mengenal pasti rekod dari kunci utama.

Oleh kerana prosesnya dilakukan sambil mencari ruang kosong dalam jadual pendaftaran, proses tersebut tidak akan habis dari 916.132.832 sehingga semuanya habis, tetapi jika terdapat banyak perlanggaran hash, kinerjanya akan menurun.
Namun, “prestasi” ini hanya berkaitan dengan pendaftaran URL yang dipendekkan, dan tidak berpengaruh pada proses pencarian, jadi kerana sifat perkhidmatan, itu memadai sehingga semua 9.1 bilion gabungan habis.

Walaupun bilangannya habis, jumlah kemungkinan kombinasi dapat ditingkatkan dengan menambahkan satu watak lagi atau satu digit lagi.