Moin zusammen!
ich hab eine Frage an die Datenbank Experten.
Für ein anstehendes Projekt würde ich gerne Datenbank weit generierte Hexadezimale Hashes anstelle von Auto-Increment Integern verwenden. Das Generieren ist nicht das Problem, dies wird auf Seiten von PHP geschehen.
Meine Frage zu dem Thema zielt in Richtung Performance. Ich möchte natürlich die Hashes nicht als CHAR oder VARCHAR speichern, weil die Indizierung etc. bei Char Feldern viel zu lahm ist. Deswegen möchte ich die Daten Binär speichern.
Nun gibt es hier zwei Möglichkeiten. Als CHAR (32) BINARY oder als BINARY (32). Welches von den beiden ist performanter? Ich würde tendenziell gerne den Binary Char verwenden, da die IDs dann noch in der Datenbank lesbar sind und ich mir bei Ein- und Ausgabe die Casts sparen kann. Letzteres wäre mir sehr lieb, da ich dafür das Eloquent ORM von Laravel anpassen müsste und ich noch nicht genau weiß wie viele Stellen das betrifft.
Habt ihr da Erfahrung mit oder relevante Links?
Viele Grüße
Bodo06
ich hab eine Frage an die Datenbank Experten.
Für ein anstehendes Projekt würde ich gerne Datenbank weit generierte Hexadezimale Hashes anstelle von Auto-Increment Integern verwenden. Das Generieren ist nicht das Problem, dies wird auf Seiten von PHP geschehen.
Meine Frage zu dem Thema zielt in Richtung Performance. Ich möchte natürlich die Hashes nicht als CHAR oder VARCHAR speichern, weil die Indizierung etc. bei Char Feldern viel zu lahm ist. Deswegen möchte ich die Daten Binär speichern.
Nun gibt es hier zwei Möglichkeiten. Als CHAR (32) BINARY oder als BINARY (32). Welches von den beiden ist performanter? Ich würde tendenziell gerne den Binary Char verwenden, da die IDs dann noch in der Datenbank lesbar sind und ich mir bei Ein- und Ausgabe die Casts sparen kann. Letzteres wäre mir sehr lieb, da ich dafür das Eloquent ORM von Laravel anpassen müsste und ich noch nicht genau weiß wie viele Stellen das betrifft.
Habt ihr da Erfahrung mit oder relevante Links?
Viele Grüße
Bodo06