PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : postgreSQL auf SuSE 8.0 optimieren



rens
30.08.02, 18:14
tach zusammen,
habe eine postgreSQL_DB auf SuSE 8.0 laufen.
kennt jmd paar nette tricks, um die performance des systems bzw. der DB
zu erhöhen? (abgesehen von Kernelkompilierung)

danke im voraus und thx

rens;)

Harry
30.08.02, 21:07
Hallo Rens,


Original geschrieben von rens
kennt jmd paar nette tricks, um die performance des systems bzw. der DB
zu erhöhen? (abgesehen von Kernelkompilierung)


- Redundanzen in den DB-Strukturen vermeiden (-> normalisieren)
- Indizes auf häufig benutzte Felder legen
- Queries in den Applikationen optimieren

Die Performance einer DB-Anwendung bemißt sich in der Praxis leider nicht in erster Linie an der Hardware und der DB-Software auf dem Server sondern sehr oft an wenig intelligent aufgebauten DB-Strukturen und Queries.
Soll heißen: Durch Optimierung der DB-Strukturen und der Queries erzielt man in der Regel recht hohe Optimierungsraten. Wenn Du den Server dann noch optimieren möchtest (die Laufzeitumgebung), dann wühl' Dich etwas durch die Postgres-Doku; dort findest Du sicherlich den einen oder anderen Hinweis dazu.

Harry

AliBaba
30.08.02, 23:21
@harry:


Original geschrieben von Harry

- Redundanzen in den DB-Strukturen vermeiden (-> normalisieren)
- Indizes auf häufig benutzte Felder legen
- Queries in den Applikationen optimieren


Hmmm... ich habe da nicht so riesig viel Ahnung, bin aber mal neugierig: Ich dachte bisher eigentlich, dass Normalisieren durch das Vermeiden von Redundanzen zwar Speicherplatz spart und hilft Inkonsistenzen zu vermeiden, aber auf die Performance eigentlich eher negative Auswirkungen hat, weil man sich seine Daten ja jetzt aus mehreren Tabellen "zusammenselecten" muss. Deswegen ist es sinnvoll, je nach Anwendung einen vernünftigen Mittelweg zu gehen und zum Teil Redundanzen durchaus zuzulassen, weil dann selects eben schneller sind.
Ich lasse mich aber gerne eines besseren Belehren, wollte halt mal nachfragen, ob ich das bis jetzt falsch verstanden habe.

Harry
30.08.02, 23:43
Hallo AliBaba,


Original geschrieben von AliBaba
Ich dachte bisher eigentlich, dass Normalisieren durch das Vermeiden von Redundanzen zwar Speicherplatz spart und hilft Inkonsistenzen zu vermeiden, aber auf die Performance eigentlich eher negative Auswirkungen hat, weil man sich seine Daten ja jetzt aus mehreren Tabellen "zusammenselecten" muss. Deswegen ist es sinnvoll, je nach Anwendung einen vernünftigen Mittelweg zu gehen und zum Teil Redundanzen durchaus zuzulassen, weil dann selects eben schneller sind.

ich denke, Du hast mit Deiner Aussage durchaus Recht. Je nach Anwendung und verwendeter DB kann auch eine Query auf eine große Tabelle schneller ein Ergebnis liefern, als eine Query, die über mehrere kleinere Tabellen einer normalisierten DB läuft.

Ich weiß jedoch nicht, ob eine solche Aussage generell korrekt ist; dies hängt von zu vielen Unbekannten ab und sollte vielleicht jeweils an einem konkreten Beispiel überprüft werden.

Harry