Ich erstelle eine Plattform, mit der Benutzer Seiten in einem AWS S3-Bucket speichern können. Die Seite wird so viele statische Informationen enthalten wie möglich, aber ich benötige immer noch die Seite, um eine Abfrage (AJAX) auszugeben, die meinen Server berührt. Diese Abfrage kann alle benötigten Informationen aus einer einzigen Tabelle mit einer Ausnahme, einem vollständigen Namen, abrufen. Um dies zu tun, brauche ich die Abfrage, um einer zweiten Tabelle beizutreten.Optimierung/Skalierung Anwendungsfall für eine SQL RDMS-Verknüpfung
Ich habe gelesen, dass Joins nicht serverintensiv sind, und dann einen anderen Artikel finden, der besagt, dass sie das sind. Wenn diese Abfragen häufig ausgeführt werden, sagen wir hunderttausende Male, sollte ich nur diesen vollständigen Namen in die ursprüngliche Tabelle aufnehmen, damit ich den Join nicht benötige? Wie viel Optimierung würde dies basierend auf der obigen Metrik ergeben?
MYSQL Schema -
TABLE: pet
pet_key, int, pk
pet_type_key, int
pet_name, varchar
color, varchar
weight, decimal
user_key
TABLE: user
user_key
full_name
email_address
password
konnte ich das Schema neu erstellen, damit ich einen Join nicht brauchen -
TABLE: pet
pet_key, int, pk
pet_type_key, int
pet_name, varchar
color, varchar
weight, decimal
user_key
user_full_name, varchar // duplicate data, but faster to retrieve
TABLE: user
user_key
full_name
email_address
password
Markieren Sie die verwendeten dbms. Zeigen Sie uns auch die zwei alternativen Tabellenentwürfe. – jarlh
Was ist mit dem Passwort und der E-Mail-Adresse passiert? Hast du sie vergessen, oder hast du dich nicht richtig gefühlt, sie im Tiertisch zu verstauen ;-) – wildplasser
Bleib beim aktuellen Design. – jarlh