Hat jemand jemals die Leistung von Sequential Guid vs. Standard Guid gemessen, wenn sie als Primärschlüssel in einer Datenbank verwendet werden?
Ich sehe keine Notwendigkeit dafür, dass eindeutige Schlüssel erratbar oder nicht erratbar sein müssen. Sie von einer Web-Benutzeroberfläche oder an anderer Stelle zu übergeben, scheint an sich schon eine schlechte Praxis zu sein und ich sehe nicht, wie die Verwendung eines Guid die Dinge verbessern kann (wenn dies der Fall ist, verwenden Sie einen echten Zufallszahlengenerator mit den richtigen Kryptofunktionen des Frameworks).
Die anderen Punkte sind durch meinen Ansatz abgedeckt, ein Sequential Guid kann aus dem Code generiert werden, ohne auf die Datenbank zugreifen zu müssen (auch wenn dies nur für Windows gilt) und er ist eindeutig in Zeit und Raum.
Und ja, die Frage wurde gestellt, um sie zu beantworten, um denjenigen, die Guids für ihre PK gewählt haben, einen Weg zu geben, die Datenbanknutzung zu verbessern (in meinem Fall hat dies den Kunden ermöglicht, eine viel höhere Arbeitslast zu bewältigen, ohne die Server ändern zu müssen).
Es scheint, dass Sicherheitsbedenken eine Rolle spielen, in diesem Fall verwenden Sie keine Sequential Guid oder, noch besser, verwenden Sie Standard Guid für PKs, die von Ihrer Benutzeroberfläche hin und her übergeben werden, und Sequential Guid für alles andere. Wie immer gibt es keine absolute Wahrheit, ich habe auch die Hauptantwort bearbeitet, um dies widerzuspiegeln.