Spaltet die Datenbanktabelle bis zu am häufigsten angeforderten Daten und der Rest der Daten gibt erhebliche Leistungssteigerung? Ich habe letzte Woche oder so verbracht, sehr technische Tutorials und Konferenzen zu beobachten, aber es ist mir immer noch nicht klar, wie groß die Spaltenanzahl, die Spaltenposition und die Zeilenanzahl in der Leistung sind (wenn die ganze Tabelle in den Speicher passt/RAM).Aufteilen der Datenbanktabelle in häufig abgefragte Daten + andere Daten
Ich habe 4 verschiedene Optionen skizziert. Was wären die Vor- und Nachteile für jeden Ansatz?
Einige Details:
- Meist lautet: mindestens 80% - Wert auf Leistung ist
- 10 verschiedene Kategorien - jeweils mit ~ 100K Einträgen/Reihen
- 30 Gesamtwerte in jedem Kategorie
- 5 häufig abgefragte Werte (in beiden Listen und einzelnen Postsichten verwendet)
- 25 weniger häufig abgefragte Werte (Nur in einzelnen Postansicht)
- fest: wenn ich sage Wert, ich meine Einheit/Datenbankspalte
Warum nicht einfach große Probendaten erstellen und einige Tests durchführen? –
@PaulSpiegel Ich dachte, dass vielleicht jemand auf diesem Gebiet gut genug ist und weiß, wovon er redet. Dieser Test würde große Vorbereitungen erfordern und vielleicht hat jemand anderes die gleiche Frage in der Zukunft. – Solo
Leistungsabstimmung ist keine einfache Angelegenheit und Vereinfachung schwierig; aber es ist normalerweise mehr mit der Anzahl der Zeilen als mit der Anzahl der Spalten beschäftigt. 'select *' wird nicht empfohlen und Sie sollten nur die benötigten Spalten angeben. Das Tabellendesign sollte den Regeln der Normalisierung folgen. –