Dat hangt af van wat je doet:
- Als snelheid de belangrijkste zorg is, dan is een gewone oude
intis waarschijnlijk groot genoeg. - Als je echt meer dan 2 miljard (met een B;) ) records hebt, gebruik dan
bigintof een sequentiële gids. - Als u gemakkelijk wilt kunnen synchroniseren met records die op afstand zijn gemaakt, dan
Guidis echt geweldig.
Bijwerken
Enkele aanvullende (minder voor de hand liggende) opmerkingen over gidsen:
- Ze kunnen moeilijk zijn voor indexen, en dat raakt de kern van de databaseprestaties
- Je kunt sequentiële richtlijnen gebruiken om een deel van de indexeringsprestaties terug te krijgen, maar geef een deel van de willekeur op die in punt twee wordt gebruikt.
- Guids kunnen moeilijk handmatig te debuggen zijn (
where id='xxx-xxx-xxxxx'), maar je krijgt er ook een deel van terug via sequentiële gidsen (where id='xxx-xxx' + '123'). - Om dezelfde reden kunnen Guids ID-gebaseerde beveiligingsaanvallen moeilijker maar niet onmogelijk maken. (Je kunt niet zomaar
'https://example.com?userid=xxxx'typen en verwacht een resultaat te krijgen voor het account van iemand anders).