InformatikKFM 17 Geschrieben 13. September 2011 Melden Teilen Geschrieben 13. September 2011 Moin, ich habe hier einen SQL 2005 Standard auf einem 2003er Standard Server. Diese Datenbank wird mittels Frontendapplikation bearbeitet. Wenn ich jetzt Daten abrufe (z.B. Auftraege) dauert der Abruf bis zu 20 Sekunden bis diese mir im Client angezeigt wird. Ich hab jetzt mittels SQLProfiler herausgefunden, dass zwischen jedem Abruf des Datensatz ein TRANSACTION LOCK und TIMEOUT gesetzt wird. Der Hersteller stelt sich in der Sache leider etwas quer. Wir haben das nun schon mit div. Hardware und auch sehr potenter Hardware auf einem 2008er Enterprise mit einer Eval Version vom 2008er SQL getestet. Keine Besserung. Ich denke das liegt an den vielen kleinen Paketen. Gibt es in der Richtung noch optimierungsbedarf die man seitens des Servers oder am Client einstellen kann? Ist ein Gigabit-Netzwerk, haben auch schon direkt peer-to-peer verbunden .. Zitieren Link zu diesem Kommentar
Greg 10 Geschrieben 14. September 2011 Melden Teilen Geschrieben 14. September 2011 Guten Morgen InformatikKFM Hat sich das Verhalten plötzlich, sprich nach irgend einer Änderung eingestellt, oder hat sich die Performance stetig über einen längeren Zeitraum verschlechtert? Gruss Greg Zitieren Link zu diesem Kommentar
InformatikKFM 17 Geschrieben 14. September 2011 Autor Melden Teilen Geschrieben 14. September 2011 Es wurde von Zeit zu Zeit immer langsamer ... Zitieren Link zu diesem Kommentar
tysako 10 Geschrieben 14. September 2011 Melden Teilen Geschrieben 14. September 2011 Ich gehe davon aus das deine Datenbank mit der Zeit "zu groß" geworden ist und somit sehr lange beim Datenabruf brauch. Versuche doch mal die Datenbank zu spliten und mit kleinen Datensätzen an zu fangen und danach immer größer zu werden. Kommt natürlich drauf an wie groß die Datenbank ist. Aber ein Versuch wäre es wert. Gruß Ty Zitieren Link zu diesem Kommentar
InformatikKFM 17 Geschrieben 14. September 2011 Autor Melden Teilen Geschrieben 14. September 2011 Die Datenbank ist nur 120MB groß. Jeden Tag wird der Inhalt geleert und baut sich ueber den Tag neu auf. Da ist nichts zu groß .. Zitieren Link zu diesem Kommentar
tysako 10 Geschrieben 14. September 2011 Melden Teilen Geschrieben 14. September 2011 Kurze Frage: Mit was rufst du die DB ab? Zitieren Link zu diesem Kommentar
Greg 10 Geschrieben 14. September 2011 Melden Teilen Geschrieben 14. September 2011 Hallo Die Ursachen zu Deinem Problem können vielfältig sein. Du musst über den Profiler herausfinden, was der SQL Server während den langen Antwortzeiten so macht. Im Profiler kannst du genau herausfinden ob und welche Abfragen lange dauern. Wie man das macht, findest Du in folgendem Ebook Seite 85 in den einzelnen Kapiteln. Du brauchst dazu nicht das ganze Buch zu lesen. Hilfreich dabei ist auch die Verbindung der Profiler Daten mit dem Performance Monitor Seite (171). Mastering-Profiler-eBook-NEW.pdf (Gratis: Einfach den Begriff bei Google oder Bing eingeben. Dann findest Du es in Anuj Gakhars Blog) Gruss Greg Zitieren Link zu diesem Kommentar
InformatikKFM 17 Geschrieben 14. September 2011 Autor Melden Teilen Geschrieben 14. September 2011 Kurze Frage: Mit was rufst du die DB ab? Ist eine in .NET geschriebene Anwendung, aber nicht von uns .. Gruß PS: Das eBook schau ich mir mal an. Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 14. September 2011 Melden Teilen Geschrieben 14. September 2011 Moin, was du oben beschrieben hast, deutet eher auf Probleme in der Abfragelogik (also im Code) hin als auf ein Hardwareproblem. Das kommt bei Datenbanken durchaus oft vor. Eine Analyse per Profiler kann dich da weiterbringen, setzt allerdings tiefe Detailkenntnisse des SQL Server einerseits und der Applikation andererseits voraus. Du darfst da keine schnellen Ergebnisse erwarten (das wäre dann eher ein Glückstreffer). Gruß, Nils Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.