sql >> Database >  >> RDS >> Mysql

MySQL-prestaties van uniek varchar-veld versus unieke bigint

Is uw hexadecimale waarde een GUID? Hoewel ik me vroeger zorgen maakte over de prestaties van zulke lange items als indexen, heb ik ontdekt dat in moderne databases het prestatieverschil op zelfs miljoenen records vrij onbeduidend is.

Een potentieel groter probleem is het geheugen dat de index in beslag neemt (16 byte vs 4 byte int, bijvoorbeeld), maar op servers die ik beheer kan ik daarvoor toewijzen. Zolang de index zich in het geheugen kan bevinden, merk ik dat er meer overhead is van andere bewerkingen dat de grootte van het indexelement geen merkbaar verschil maakt.

Aan de positieve kant, als je een GUID gebruikt, krijg je serveronafhankelijkheid voor gemaakte records en meer flexibiliteit bij het samenvoegen van gegevens op meerdere servers (waar ik om geef, aangezien ons systeem gegevens van onderliggende systemen verzamelt).

Er is een grafiek in dit artikel die mijn vermoeden lijkt te ondersteunen:Mythen, GUID vs Autoincrement



  1. Hoe Access 2019 werkt en hoe u ermee werkt

  2. Hoe te repareren "Server is niet geconfigureerd voor RPC" Msg 7411 met behulp van T-SQL

  3. 5 probleemloze tips om SQL UPDATE-instructie te gebruiken met JOIN

  4. Hoe kan ik een specifiek record bijwerken zonder SELECT-machtiging?