UUID türü
16 bayt olarak saklanan 128 bitlik benzersiz tanımlayıcı. Merkezî bir sıra gerektirmediği için dağıtık sistemlerde yaygın bir birincil anahtar (PK) türüdür. UUID v4 rastgeledir; v7 (2024’te standartlaştı) zaman damgası + rastgele değerdir.
PK olarak v4’ün sorunu: rastgele ekleme B-ağacının parçalanmasına yol açar ve ekleme verimi zamanla düşer. v7 bunu çözer — zamana göre ardışıktır, B-ağacı konumluluğuna dosttur. 7 bayt zaman damgası ve 9 bayt rastgele değer yeter.
PostgreSQL’de yerleşik uuid-ossp + uuid_generate_v4() vardır; v7 için eklenti gerekir (PG 18’den önce gen_random_uuid() yalnızca v4 verir). BIGINT’e göre depolama iki kat büyüktür, v7’de indeks performansı kabaca aynıdır. 1 milyon satırda indeks boyutu: BIGINT ~10 MB, UUID v7 ~20 MB. Snowflake ID, Twitter’dan benzer bir fikirdir.