UUID
mengembalikan pengidentifikasi unik universal
(semoga juga unik jika diimpor ke DB lain juga).
Mengutip dari MySQL doc (penekanan milik saya):
Di sisi lain cukup INT kunci id utama (mis. AUTO_INCREMENT ) akan mengembalikan bilangan bulat unik untuk tabel DB dan DB tertentu, tetapi yang tidak unik secara universal (jadi jika diimpor ke DB lain kemungkinan akan terjadi konflik kunci utama).
Dalam hal kinerja, seharusnya tidak ada perbedaan mencolok menggunakan auto-increment melalui UUID . Sebagian besar posting (termasuk beberapa oleh penulis situs ini), menyatakan seperti itu. Tentu saja UUID mungkin memerlukan sedikit lebih banyak waktu (dan ruang), tetapi ini bukan hambatan kinerja untuk sebagian besar (jika tidak semua) kasus. Memiliki kolom sebagai Primary Key harus membuat kedua pilihan sama dengan kinerja. Lihat referensi di bawah ini:
- Ke
UUIDatau tidak keUUID? - Mitos,
GUIDvsAutoincrement - Kinerja:
UUIDvsauto-incrementdi cakephp-mysql UUIDkinerja di MySQL?- Kunci Utama:
IDs versusGUIDs (mengkode horor)
(UUID vs auto-increment hasil kinerja, diadaptasi dari Mitos, GUID vs Autoincrement
)

UUID pro / kontra (diadaptasi dari Kunci Utama:ID s versus GUID s
)
Catatan
Saya akan membaca dengan seksama referensi yang disebutkan dan memutuskan apakah akan menggunakan UUID atau tidak tergantung pada kasus penggunaan saya. Karena itu, dalam banyak kasus UUID s memang lebih disukai. Misalnya seseorang dapat menghasilkan UUID s tanpa menggunakan/mengakses database sama sekali, atau bahkan menggunakan UUID s yang telah dihitung sebelumnya dan/atau disimpan di tempat lain. Selain itu, Anda dapat dengan mudah menggeneralisasi/memperbarui skema database dan/atau skema pengelompokan tanpa harus khawatir tentang ID melanggar dan menyebabkan konflik.
Dalam hal kemungkinan tabrakan, misalnya menggunakan v4 UUIDS (acak), probabilitas untuk menemukan duplikat dalam 103 triliun UUID versi-4 adalah satu dari satu miliar.