Einzelnen Beitrag anzeigen
  #2  
Alt 08.01.2009, 11:59:48
schrubba schrubba ist offline
Anfänger
 
Registriert seit: May 2008
Beiträge: 110
AW: MySQL-Leistungsfrage

Hi,

was Du meinst, ist der Vergleich von normalisierten Tabellen und denormalisierten Tabellen. Wenn Du danach im Netz suchst, dann wirst Du massenhaft endlose Diskussionen darüber finden und nicht wirklich schlauer danach sein.

Nach meiner doch eher mageren Erfahrung kann man das nicht pauschal beantworten, es kommt ganz auf den Einsatz an. Hier mal meine Erkenntnisse aus persönlichen Testungen.

1. Ein z.B. "SELECT * FROM ..." ist der Performancekiller schlechthin bei denormalisierten Tabellen. Solltest Du Dich also für denormalisierte Tabellen entscheiden, vermeide das unbedingt.

2. Eine Anwendung basierend auf denormalisierten Tabellen hat einen noch, für mich persönlich entscheidenen Nachteil, sie sind schlecht bzw. nur mit erhöhtem Aufwand erweiterbar. D.h. willst Du ein neues Feature in Dein Projekt einbauen, musst Du an jede Abfrage ran, die auf diese Tabelle zugreift, bei normalisierten Tabellen hast Du dieses Problem nicht bzw. nicht in diesem Ausmaß.

3. Auf der anderen Seite erweist sich (unter Umständen) bei normalisierten Tabellen der PHP-Code etwas umfangreicher und dadurch träger, langsamer, aber das hängt auch stark von der Art des Projektes ab.

4. Zu stark normaliserte DB können auch durch die etlichen JOINS an Performance verlieren.


Wie gesagt, das ist nur meine Erfahrung und mein Projekt besteht aus einer gemischten DB, mit ca. 70% normalisierten Tabellen und der Rest ist denormalisiert.

Gruß
schrubba
Mit Zitat antworten