Ein schlechtes logisches Datenbank Design führt zu einem schlechten physikalischen Datenbank Design. Falls man eine Datenbank von Beginn an designen soll, muß zunächst einmal das logischen Design stimmig sein. Erst dann geht es an die physikalische Implementierung. Diese braucht ebenfalls Zeit. Nur wenn sowohl logisches als auch physikalisches Design stimmig sind, kann man eine gute Performance der Datenbank erwarten. Und erst dann sollte man auch mit der Entwicklung der Applikation beginnen. Ein schlechtes logisches Design und das daraus resultierende schlechte physikalische Design kann unter Umständen eine Zeitlang durch leistungsfähige Hardware überspielt werden. Irgendwann einmal ist damit aber auch Schluß. Und dann ist es dann viel zu spät und zu kostspielig, etwas am Datenbank Design und an der Applikation zu ändern.
*****
Die Beachtung der allgemein anerkannten Empfehlungen zur Normalisierung von OLTP Datenbanken ist an und für sich schon ein Garant für eine gute Performance einer Datenbank. Hier sind einige Gründe, warum:
*****
Die Entwicklung einer Applikation und einer OLTP Datenbank sollte man nicht bereits mit dem Hintergedanken einer Denormalisierung beginnen. Das oberste Ziel während des Designprozesses sollte es sein, die Datenbank in die 3. Normalform zu bringen. Falls man sich umsicher, was genau dies bedeutet, sollte man in der einschlägigen Literatur nachlesen. Ist die Datenbank erst einmal in der 3. Normalform, kann man sie einem Belastungstest unter realistischen Bedingungen aussetzen. Stellt man an diesem Zeitpunkt fest, daß die Performance durch eine Denormalisierung deutlich verbessert werden kann, dann, und nur dann, sollte man dies zum Anlass nehmen, hier bewußt gegen die Normalisierungsregeln zu verstoßen.
*****