Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie kann ich UUIDs als Zahlen in MySQL speichern, um die Leistung zu verbessern?

Mary-Kate Olsen
Freigeben: 2024-11-19 08:37:03
Original
787 Leute haben es durchsucht

How Can I Store UUIDs as Numbers in MySQL for Improved Performance?

UUIDs als Zahlen in MySQL speichern

Im Thread „UUID-Leistung in MySQL“ schlug ein Benutzer vor, UUIDs als Zahlen statt als Zeichenfolgen zu speichern für eine verbesserte Leistung. In diesem Artikel wird untersucht, wie dies in Ruby erreicht werden kann, und erörtert die Vorteile der Verwendung einer binären Darstellung.

Entfernen von Bindestrichen und Konvertieren in eine hexadezimale Zeichenfolge

So konvertieren Sie eine UUID in Bei einem numerischen Format entfernen Sie zunächst die Bindestriche und stellen es als einzelne hexadezimale Zeichenfolge dar. Beispielsweise wird „110E8400-E29B-11D4-A716-446655440000“ zu „110E8400E29B11D4A716446655440000“.

Speichern als Binärdaten in MySQL

MySQL speichert Binärdaten effizienter als Saiten , wodurch es zum Speichern von UUIDs geeignet ist. Da eine UUID 128 Bit lang ist, passt sie perfekt in ein BINARY(16)-Feld. Sie können die folgende SQL-Anweisung verwenden, um eine UUID in eine Tabelle einzufügen:

INSERT INTO Table (FieldBin) VALUES (UNHEX("110E8400E29B11D4A716446655440000"))
Nach dem Login kopieren

Abrufen und Zurückkonvertieren in UUID

Um eine UUID in ihrem ursprünglichen Format abzurufen können Sie die folgende SQL-Anweisung verwenden:

SELECT HEX(FieldBin) AS FieldBin FROM Table
Nach dem Login kopieren

In Ihrem Ruby-Code können Sie die abgerufene Hex-Zeichenfolge weiterverarbeiten, indem Sie die Bindestriche an den entsprechenden Positionen erneut einfügen, um sie an das ursprüngliche UUID-Format anzupassen.

Vorteile der Binärspeicherung

Das Speichern von UUIDs als Binärdaten bietet mehrere Vorteile gegenüber Zeichenfolgen:

  • Schnellere Indizierung: MySQL Binärindizes sind effizienter als String-Indizes.
  • Reduzierter Speicherplatz: Die binäre Darstellung erfordert weniger Speicherplatz als die String-Darstellung.
  • Schnellere Vergleiche: Binärvergleiche sind schneller als Stringvergleiche.

Indem Sie diese Schritte befolgen und Binärspeicher verwenden, können Sie die Leistung Ihrer MySQL-Datenbank bei der Arbeit mit UUIDs effektiv optimieren.

Das obige ist der detaillierte Inhalt vonWie kann ich UUIDs als Zahlen in MySQL speichern, um die Leistung zu verbessern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage