Verwendeter Arbeitsspeicher Navision

18. März 2009 18:53

Hallo zusammen,

bei der damaligen Installation unseres Navision wurde der vom Navision-Server eingesetzte Arbeitsspeicher auf (ich meine mich noch daran zu erinnern) 500MB gestellt. Die damalige Datenbankgröße betrug auch nur 2GB. Heute ist die Datenbank 6GB groß und der Server hat noch jede menge freien Ram (ca. 2GB).
Von daher würde ich den Speicher, den der Nav-Server verwenden darf gerne etwas hochsetzen.
Wieviel ist sinnvoll und wo kann ich das einstellen?

Danke,
Grüße Johannes

PS: Wir benutzen die Nav-Native-DB.

Re: Verwendeter Arbeitsspeicher Navision

18. März 2009 23:35

Wenn ihr den Native-Server verwendet, dann ist es fast reine Lotterie, ob mehr RAM mehr Performance bringt, denn der Native-Server nutzt maximal 1 GB RAM, und diese bis zum Ende auszureizen ist nicht klug.

Im Falle des Native-Server solltet ihr aber darüber nachdenken, an einem Wochenende die DB zu sichern und in mehrere DB-Dateien wiederherzustellen. Damit optimiert ihr auch gleich die Schlüssel, kann durchaus helfen.

Wenn das nicht reicht, hilf eigentlich nur eine eingehende Analyse und evtl. ein Umstieg auf SQL und dann eine eingehende Analyse.

Beste Grüße
Falk

Re: Verwendeter Arbeitsspeicher Navision

19. März 2009 07:35

Guten morgen,

ich mag jetzt nicht sagen, dass die Datenbank langsam ist - sie ist sogar sehr fix - aber ich suche halt noch Wege der Optimierung.
Beim Client kann man unter Extras - Optionen einen Cache-Wert und einen DBMS-Cache sehen. Ich dachte bisher, dass der DBMS-Cache der von der Datenbank ist. Dieser steht aber auf 8000kb - hat jeder Client auch noch einen?
Wir buchen oft jede mege Daten aus Buchungsblättern, das ist natürlich immer etwas zäh und diesen Prozess würde ich gerne beschleunigen (also CPU-Last auf dem Server ist immer maximal 7%. Von daher suche nach Möglichkeiten dies zu optimieren. Bringt das erhöhen des DBMS und Cache Wertes eine Besserung (wenn diese Client-Seitig sind)?

Ich habe beim Kauf des Servers direkt einen Server mit 8 Platten gewählt:
Raid 1 für OS und Auslagerung
3x Raid1 für Die NavDB
Also die Datenbank ist somit schon in drei Teile zerlegt vom prinzip her sehr performant - mich wunderst es eher, dass die CPU-Last so gering ist und finde, dass ich daher wohl irgendwo noch etwas ausreitzen kann...

Danke,
Grüße Johannes

Re: Verwendeter Arbeitsspeicher Navision

19. März 2009 09:30

Da der Server nichts anderes zu tun hat, als Daten bereitzustellen und wieder zurückzuschreiben und da euer Server seine Datenbankdateien bereits recht geschickt verteilt, wirst du am Server selbst erstmal nichts weiter optimieren können. Erstmal! Sicher kann man immer noch ein Schräubchen finden, an dem man drehen kann, aber zuerst solltest du dir mal das Netzwerk ansehen, das ist häufig der Flaschenhals schlechthin.

Weil nämlich die gesamte Geschäftslogik auf den Clients ausgeführt, benötigen diese bei aufwändiger Logik enorm viele Daten vom Server. Der Server schafft das mitunter spielend, aber das Netzwerk muss die Daten auch übertragen und die Clients müssen die Daten verarbeiten. Also ich würde an deiner Stelle erstmal das Netzwerk und dann die Clients untersuchen.

Beste Grüße
Falk

Re: Verwendeter Arbeitsspeicher Navision

19. März 2009 10:09

Hallo Falk,

das Netzwerk habe ich bereits schon unter die Lupe genommen. Die Server und Switche sind über Gigabit mit dem Backbone-Netz verbunden - jeder Client dann mit 100Mbit am Netz. Die Backboneauslastung ist während des Arbeitstages bei etwa max 5% - wenn große Dateien kopiert werden (sehr selten) steigt sich auch manchmal auf um die 30% (backup am abend - wenn eh groß niemand mehr arbeitet). Pakete gehen auch keine verloren. Dies sollte als nicht den Flaschenhals bilden.

Das alle Geschäftsberechnungen an den Clients durchgeführt werden, war mir so nicht bewusst - ich dachte, dass viele Berechnungen über die Datenbankabfragen laufen und somit die meiste Last beim Server liegt.

Ist also die Erhöhung des lokalen Caches und des lokalen DBMS-Caches sinnvoll? Der lokale DBMS-Cache ist wsl. nur wenn ich eine lokale Datenbank habe - oder?

Grüße Johannes