Re: Performance Probleme mit Nav 4.0

13. März 2013 16:19

vsnase hat geschrieben:- Was wenn ich ein Raid 5 aus 6 Platten habe und darauf 3 Partitionen anlege? Wenn man nun die DB auf alle 3 Partitionen verteilt gewinnt man doch gar nichts. Ich vermute eher eine noch schlechtere Performance, da die Leseköpfe ständig für jede Datenbankdatei neu positioniert werden müssen.

Volker


Wobei RAID 5 jetzt kein gutes Beispiel für Navision ist.

mfg,
winfy

Re: Performance Probleme mit Nav 4.0

13. März 2013 18:02

Das würde ich so nicht unterschreiben.
- Wer packt eine Datenbank auf eine einzelne Platte statt einem Raid?
- Was wenn ich ein Raid 5 aus 6 Platten habe und darauf 3 Partitionen anlege? Wenn man nun die DB auf alle 3 Partitionen verteilt gewinnt man doch gar nichts. Ich vermute eher eine noch schlechtere Performance, da die Leseköpfe ständig für jede Datenbankdatei neu positioniert werden müssen.


Mit einer Platte meinte Timo sicherlich eine logische Platte, die natürlich auf einem RAID (am besten 1 oder 10) liegen sollte. Ein RAID 5 erzeugt zwar mehr Plattenplatz, ist aber bei der Zugiffs- Geschwindigkeit nicht unbedingt besser.

Ob man jetzt 3 Datenbankteile auf 3 logischen Laufwerken mit 6 jeweils als RAID 1 konfigurierten Platten verteilt oder als eine DB- Datei auf einem RAID 10 aus 6 Platten muss man testen, das hängt sehr von der Hardware ab (Cache- Controller, Plattengeschwindigkeit,DB- Cache,..).
Ich hatte den Eindruck, das letzters etwas performanter ist, weil weniger Verwaltungsaufwand für den NAV- Server anfällt (nur ein DB-Teil), und man die Zugriffe auf die physikalischen Platten dem RAID-Controller überlässt, der sollte das besser können.

Gruß, Fiddi

Re: Performance Probleme mit Nav 4.0

13. März 2013 18:40

Timo Lässer hat geschrieben:
Sebastian Pfliegel hat geschrieben:Cache erhöhen und defragmentieren klingt aber vernünftig.
Vorsicht! Die Defragmentierung der NAV-Datenbank kann sogar zu erheblichen Performance-Einbußen führen, wenn die Datenbank bereits über mehrere Festplatten verteilt liegt.
(Dabei ist es egal, ob mittels Defrag.exe oder innerhalb von NAV über Datei -> Datenbank -> Information -> Tabellen -> Optimieren)
Im Laufe der Zeit hat NAV die Daten wild über alle Festplatten (auf welche die DB aufgeteilt ist) verteilt, so dass die Datenzugriffe mittels mehrerer Schreib-/Leseköpfe gleichzeitig erfolgen kann.
Durch die Defragmentierung werden diese Daten wieder hintereinander geschrieben, so dass nicht mehr mehrere Köpfe gleichzeitig lesen können.

Beispiel:
Datenbank ist auf drei Festplatten verteilt.
Die Daten von Verkaufskopf und Verkaufszeile liegen über alle 3 Festplatten verstreut, somit können die Leseköpfe aller drei Platten parallel arbeiten.
Wird die Datenbank nun defragmentiert, so liegen die Daten der beiden genannten Tabellen nur noch auf der ersten Festplatte, wodurch die Leseköpfe der Platten 2 und 3 nicht helfen können.
In diesem Fall sinkt die Performance auf bis zu 1/3 der vorherigen Leistung!


Also die Optimierungsfunktion in NAV und defrag.exe sind doch 2 paar Schuhe. Während sich die Optimierungsfunktion alle DB-Teile gleichzeitig anguckt ist defrag.exe pro Laufwerk anzuwenden.
Der Unterschied ist aber bei beiden Funktionen doch wie "optimiert" wird. Defrag fügt doch nur verstreute Sektoren einer Datei zusammen, um dann eine Datei "am Stück" zu haben. Dabei ist es dem Programm doch egal ob da in dem Speicher eine 0 oder 1 gespeichert ist. Das System sieht nur "50 GB fdb Datei". Was dadrin vorgeht oder wie die Daten in der fdb dort aufgeteilt sind, oder wieviel von dem verbrauchten Speicher von der DB wirklich aktiv benutzt wird, ist defrag doch egal.
Ob defrag nun Vorteil oder Nachteil in der Performance bringt, hängt wohl hauptsächlich damit zusammen, wie stark die Datei an sich fragmentiert ist.
Stark fragmentierte fdbs sollten nach einem defrag performanter sein, da die Leseköpfe nicht 3000 mal springen müssen um eine einzelne Sales Line zu laden bzw. zu speichern.

Da es aber scheinbar dediziierte Partitionen für die fdbs sind, ist die Fragmentierung eher gering. Ich kann mir auch nicht vorstellen, dass dies das Problem ist.