23. Januar 2009 11:03
23. Januar 2009 13:51
23. Januar 2009 14:56
23. Januar 2009 15:54
Paul_D hat geschrieben:Wir hatten heute folgenden Fall: Eine Mitarbeiterin ging auf PC1 in Navision in die Übersicht der Buchungssätze, bis diese erschienen vergingen ca. 10 Minuten, bei jedem Buchen eines Buchungssatzen vergingen auch noch einma ca. 3 - 5 Minuten. Die Kollegin wechselte dann an PC2 an diesem erschienen alle Buchungssätze sofort und auch das Buchen war kein Problem mehr.
Auf beiden PCs ist die selbe Build von Navision installiert, sie war bei beiden PCs mit dem selben Login angemeldet. PC1 war ein P4 3Ghz mit 512 MB Ram und PC2 war ein C2D mit 2x3,1Ghz und 2GB Ram.
Jetzt wäre die Frage ob es am PC liegen kann das die Abfragen so lange dauern.
Paul_D hat geschrieben:Denn laut Task Manager etc. ist so gut wie keine Last zu bemerken.
Paul_D hat geschrieben:Allerdings gehen in beiden Fällen die Festplattenzugriffe auf dem SQL Server SAN enorm nach oben.
Paul_D hat geschrieben:Gibt es eine optimale Anforderung für Navision? (Quad Core für alle die größere Buchungen / Zugriffe) vornehmen? Oder kann es sein das auf 2 unterschiedlichen PCs mit gleicher Version die SQL Anfragen unterschiedlich generiert werden? Dadurch das, wie ich denke, die Systemleistung des SQL Server ausreichen sollte, die Festplatten lange Warteschlangenzeiten aufbauen. Befürchte ich das die SQL Abfragen falsch oder suboptimal gestellt werden. Ähnlich einem anderen Beitrag in dem erst ein "Pointer/cursor" erst vollgeladen wurde und dann die Suche statt fand.
Paul_D hat geschrieben:Gibt es eine Möglichkeit sich die an den SQL Server gestellten Abfragen anzeigen zu lassen? So dass ich diese gegebenfalls hier Posten könnte um Sie einmal nach falschen oder unnötigen Einträgen zur Schau zu stellen?
23. Januar 2009 17:08
Mit NAV 4.0 SP3 sollte man mindestens Update 6.9 (Build 26565) oder höher einsetzen. SQL Server 2005 solle mindestens Update 4 sein (Build 3200) oder höher.
In NAV ist unbedingt darauf zu achten, dass das "Default Index Hinting" deaktiviert ist.
Wie ist der SQL Server ausgestattet, CPU/RAM? Bei 91GB mit 30 Usern sollte es 1 x QuadCore oder 2 x DualCore CPU sein mit mindestens 8GB RAM (besser 16GB und mehr)!
... u.U. kann es helfen, das entsprechende Benutzer-Profil aufzuräumen oder neu zu erstellen ...
Und: es muss sicher gestellt sein, dass der NAV Object-Cache auf 32.000KB konfiguriert ist.
Auch keine Swapping-Aktivitätetn? Netzwerk?
Ein SAN muss KORREKT für den SQL Server Betrieb konfiguriert sein!
Yo, dafür ist der "SQL Server Profiler" bestens geeignet! Alles was mehr als 1000 "Reads" erzeugt und/oder länger als 50 msec "Duration" hat kann als Problem betrachtet werden ...
Aber auch von Applikationsseite gäbe es noch einiges zu tun ... in höchster Priorität sollte das System soz. ent-SIFT-et werden; d.h. die Anzahl der Buckets muss reduziert werden (siehe mein BLOG). Auch periodische SIFT Wartung ist Pflicht (ACHTUNG: erfordert NAV Buils 26565+). Und dann wäre noch die DB Konfiguration, tempdb, etc. ...
23. Januar 2009 19:37
Paul_D hat geschrieben:Ich habe eine aktuellere Version von Navision vorliegen (Build 27256) jedoch wurde mir gesagt, dass ich diese Nicht installieren kann da diese Version andere Abfragekriterien nutzt und dadurch das System noch langsamer wird. Bzw. das dann erst am SQL Server eine andere optimiertere Build eingespielt werden müsste.
Paul_D hat geschrieben:In NAV ist unbedingt darauf zu achten, dass das "Default Index Hinting" deaktiviert ist.
Wo kann man das nachschauen?
USE [Navision] --- change DB name here
GO
CREATE TABLE [$ndo$dbconfig] (config VARCHAR(1024))
GRANT SELECT ON [$ndo$dbconfig] TO [public]
GO
INSERT INTO [$ndo$dbconfig] VALUES('IndexHint=No')
Paul_D hat geschrieben:System Manufacturer: MAXDATA
System Model: PLATINUM 5220 I
BIOS: SE7520AF20 v10.00, P
Processor: Intel(R) Xeon(TM) CPU 3.20GHz (4 CPUs), ~3.2GHz
Memory: 3584MB RAM
Page File: 3253MB used, 4284MB available
Der neue steht schon bereit und wird anfang März ins Produktivsystem gehen:
System Manufacturer: HP
System Model: ProLiant DL380 G5
BIOS: Default System BIOS
Processor: Intel(R) Pentium(R) III Xeon-Prozessor (4 CPUs), ~2.5GHz
Memory: 4094MB RAM
Page File: 554MB used, 5324MB available
Also ziehe ich da schonmal ein Fazit - Wir brauchen mehr Arbeitsspeicher. Allerdings läuft der jetzige noch auf einem 32 Bit Betriebssystem der neue ist ein Windows 2003 Server 64Bit.
Paul_D hat geschrieben:Das lokale / serverseitig- gespeicherte Benutzerprofil ? oder kann sich ein Navisionprofil auch zumüllen?
Paul_D hat geschrieben:Der [Object Cache] wird bei uns über das Icon auf 64.000 eingestellt. Schlimm wenn es mehr ist?
Paul_D hat geschrieben:[SAN:] Was genau gibt es da für optimal Vorgaben? Blockgröße? Anzahl an Platten? Etc. Wir haben immoment 3 Raids, jeweils für Log, Backup und Daten. 10 der Festplatten sind für die Daten, also die Datenbanken.
Paul_D hat geschrieben:Könnten Sie mir mitteilen wie ich den SQL Server Profiler einstelle um einmal zu betrachten / mitzuloggen wo Probleme auftreten?
Paul_D hat geschrieben:Ich weiß leider nicht in wiefern Ihnen das etwas sagt doch ich befürchte aufgrund der Tatsache das wir auch mit 2 NAS Anwendung arbeiten und einem EDAP wird unsere jetzige Serverkapazität wohl Performanceseitig am Limit sein.
26. Januar 2009 10:15
0 NTS config 1 IndexHint=No
2 100 Servicemandant SWL config 1 IndexHint=Yes;Company="100 Servicemandant SWL";Table="Gen. Journal Line";Key="Journal Template Name","Journal Batch Name","Account Type","Account No.","Issued Invoice No.","Line No.";Search Method=;Index=7
3 100 Servicemandant SWL config 1 IndexHint=Yes;Company="100 Servicemandant SWL";Table="Payment Line";Key="Payment No.","Account No.","VU Banking Account ID","Umlage geb. Abrechnung Nr.","Umlage geb. Abrechnung Lfd-Nr.";Search Method=;Index=1
4 100 Servicemandant SWL config 1 IndexHint=Yes;Company="100 Servicemandant SWL";Table="Payment Line";="Payment No.","Line No.";Search Method=;Index=2
10 100 Servicemandant SWL config 1 IndexHint=Yes;Company="100 Servicemandant SWL";Table="Reg. VU Abrechnungskopf";Key="Status","Buchungsdatum","Bis-Datum";Search Method=;Index=5
11 100 Servicemandant SWL config 1 IndexHint=Yes;Company="100 Servicemandant SWL";Table="Reg. VU Abrechnungszeile";Key="Rechnungsnr.","Betragsberechnungsart";Search Method=;Index=3
26. Januar 2009 10:41
Paul_D hat geschrieben:Guten Morgen erstmal,
wünsche ein schönes Wochenende gehabt zu haben.
Paul_D hat geschrieben:Also ich habe gerade mal in die "$ndo$dbconfig" hineingeschaut und folgendes stand in den ersten Zeilen:
Also primär scheint IndexHint ausgeschaltet zu sein, aber für manche Tabellen im nachhinein wieder eingeschaltet worden zu sein.
Paul_D hat geschrieben:Ich habe hier stellenweise Einträge mit 25.000 Reads und einer Duration von 100 oder aber Einträge mit 1.500 Reads und einer Duration von 15.000.
Ist das Normal? Heute kamen wieder erste Leute an und beschwerten sich, diesmal nichtmal über Performance sondern über einen fast totalstillstand :(
Paul_D hat geschrieben:Bitte die Datei in .htm umbennen, dass ist der Mitschnitt aus dem PerfMon.
26. Januar 2009 11:11
26. Januar 2009 12:07
4. Februar 2009 13:11
6. Februar 2009 23:07
7. Februar 2009 10:48
walterotto hat geschrieben:Nun hab ich ca. 300Tausend Artikel in der Tabelle 27. Meine dbconfig sieht wie folgt aus:
IndexHint=No
IndexHint=Yes;Company="MandantName";Table="Item";Key="No.";Search Method=;Index=0;
UseRecompileForTable="Item";Company="MandantName";RecompileMode=1;
walterotto hat geschrieben:So, filtern die jungs direkt nach einer Artikelnummer (alle 15 Stellen) geht das fix. Filtern diese Deppen aber z.B. nach den letzen 4 Stellen (Hersteller) braucht das System ewig bis es mal die Daten zurückliefert (weißer Bildschirm).Schauch ich mir im Profiler den SQL query an, sieht der wie folgt aus:
SELECT *,DATALENGTH("Picture") FROM "Datenbank"."dbo"."Mandant$Item" WITH (INDEX("Mandant$Item$0")) WHERE (("No_" LIKE @P1)) AND "No_">=@P2 ORDER BY "No_" (und noch das recompile)
walterotto hat geschrieben:Die Reads sind 256780!!!!! Also quasie die ganze Tabelle einmal durch (was ich theoretisch auch verstehe, da der Index ja 15Stellen aufnimmt und nicht teilbereiche)
Der Ausführungplan zeigt mir
Clusterd Index Insert (tempdb.dbo.CWT_PrimaryKey] 6% <- Compute scalar 0% <- Compute scalar 0% <- Clustert index seek (was ja eigentlich super ist) 94%
walterotto hat geschrieben:Der Witz ist ja, führe ich diesen SQL Query direkt im Quary analyzer aus, sind die Daten sofort da.
walterotto hat geschrieben:Also was nun ??? Hat jemand ne Idee?
walterotto hat geschrieben:Ach ja Jörg, super Buch und super BLOG
7. Februar 2009 11:19