Re: Sql-Server-Performance

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Hi,

> Was macht Dein OE da immer mit dem restlichen Text?
> Schau bitte mal bei http://www.oe-faq.de/ vorbei bezüglich
> besserer Einstellungen für den Newsreader.
> Das Umformatieren ist auf Dauer doch etwas zeitaufwändig.
danke für den Tipp, hab meinen Newsreader umgestellt, ich hoffe es funktioniert jetzt besser.

> Überprüfe bitte noch mal mit DBCC SHOWCONTIG die Fragmentierung
> der Tabellen (speziell auch SCHREIBEN, SCHREIBENBETROFFENE) und
> die Verteilung der Statistiken DBCC SHOW_STATISTICS.
> Ist der eine Server da deutlich anders als die anderen?
Gute Idee mit der Fragmentierung - danke für den Tipp - werde schauen, was an diesem einen Server anders ist.


> Bitte übe Dich mal im Lesen der Ausführungspläne, damit Du das
> nachvollziehen kannst. Mir scheint, da machst Du einen grossen
> Bogen rum.
ja, mit dem Lesen von Ausführungsplänen kenn ich mich noch nicht so gut aus. Hast du da vielleicht einen Tipp oder Link, wo man mehr
drüber erfahren kann?

lg
Peter


"Elmar Boye" <ElmarB@xxxxxxx> schrieb im Newsbeitrag news:3eggsrF30ahaU3@xxxxxxxxxxxxxxxxx
> Hallo Peter,
>
> Was macht Dein OE da immer mit dem restlichen Text?
> Schau bitte mal bei http://www.oe-faq.de/ vorbei bezüglich
> besserer Einstellungen für den Newsreader.
> Das Umformatieren ist auf Dauer doch etwas zeitaufwändig.
>
> Peter Piry <peter.piry@xxxxxxxxx> schrieb ...
> > sorry, die späte Antwort, konnte das gestern nicht ausprobieren.
> > Hat leider auch kein Ergebnis gebracht.
> >
>
> Überprüfe bitte noch mal mit DBCC SHOWCONTIG die Fragmentierung
> der Tabellen (speziell auch SCHREIBEN, SCHREIBENBETROFFENE) und
> die Verteilung der Statistiken DBCC SHOW_STATISTICS.
> Ist der eine Server da deutlich anders als die anderen?
>
> > wir haben das Problem jetzt gelöst, indem wir die Query
> > folgendermassen umgebaut haben:
>
>
> > SELECT ISNULL(count(*),0)
> > FROM ANTRAEGE, ARBEITSVERHAELTNISSE
> > WHERE ANTRAEGE.ANTRAGSSTATUS_ID=1
> > AND ANTRAEGE.ARBEITSVERHAELTNIS_ID = ARBEITSVERHAELTNISSE.ARBEITSVERHAELTNIS_ID
> > AND ANTRAEGE.GEST_ID_ARBEITSVERHAELTNIS = ARBEITSVERHAELTNISSE.GESCHAEFTSSTELLEN_ID
> > AND(ISNULL(ANTRAEGE.anzahl_bescheide, 0) > 0
> > OR CONVERT(VARCHAR, antraege.antrag_id)
> > + '_'
> > + CONVERT(VARCHAR,antraege.geschaeftsstellen_id)
> > IN (SELECT CONVERT(VARCHAR, schreiben.antrag_id)
> > + '_'
> > + CONVERT(VARCHAR,schreiben.gest_id_antrag)
> > FROM SCHREIBEN, SCHREIBENBETROFFENE
> > WHERE SCHREIBENBETROFFENE.ANTRAG_ID=ANTRAEGE.ANTRAG_ID
> > AND SCHREIBENBETROFFENE.GEST_ID_ANTRAG = ANTRAEGE.GESCHAEFTSSTELLEN_ID
> > AND SCHREIBENBETROFFENE.SCHREIBEN_ID = SCHREIBEN.SCHREIBEN_ID
> > AND SCHREIBENBETROFFENE.GEST_ID_SCHREIBEN = SCHREIBEN.GESCHAEFTSSTELLEN_ID
> > AND SCHREIBEN.SCHREIBENTYP_ID IN (4, 31, 43) ))
> > AND ARBEITSVERHAELTNISSE.INSOLVENZ_ID = 2107
> > AND ARBEITSVERHAELTNISSE.GEST_ID_INSOLVENZ = 1
> >GO
> >
> > Also statt der OR-Bedingung verwenden wir eine IN-Bedingung.
> > Diese funktioniert jetzt innerhalb von 1-2 Sekunden.
> > Ist mir trotzdem unverständlich, das die Abfrage mit OR nur auf einem
> > Server von 9 so lang braucht.
>
> Das dürfte weniger am OR liegen sondern eher daran, dass der Optimierer
> durch die zusammengesetzten und nach VARCHAR konvertierten Werte
> "erfolgreich" davon abgehalten wird, Indizes bzw. auf einen Hash
> verzichtet zu nutzen. Das kann sich aber schnell als klassischer
> Pyrussieg rausstellen, wenn die Parameter sich ändern.
>
> Bitte übe Dich mal im Lesen der Ausführungspläne, damit Du das
> nachvollziehen kannst. Mir scheint, da machst Du einen grossen
> Bogen rum.
>
> Im übrigen solltest Du etwas sauberer Casten, also in etwa
> für ein Integer:
> CAST(antraege.antrag_id AS VARCHAR(10))
> + '_'
> + CAST(schreiben.gest_id_antrag AS VARCHAR(10))
> oder (für CONVERT Liebhaber):
> CONVERT(VARCHAR(10), antraege.antrag_id)
> + '_'
> + CAST(VARCHAR(10), schreiben.gest_id_antrag)
>
> Alternativ ginge auch CHAR(10) ohne "_".
> Aber genug davon, denn besser ist wie oben geschrieben, dass solche
> (Blech oder Platin) Krücken erst gar nicht eingesetzt werden müssen.
>
> Gruss
> Elmar
>

.



Relevant Pages

  • Re: xnews error "bits index out of range"
    ... server to use 64 bit article numbers and now the boneless group ... all the servers on Usenet are going to migrate to 64 ... you will need to get your newsreader ... writing code to convert the 32 bit based data files to 64 bit data files. ...
    (news.software.readers)
  • Re: OT Order yours today!
    ... >> I use Forte Agent, a very fine newsreader, and when I downlead today's ... >> headers, yesterdays have already disappeared - so I don't see the ... >whether the messages themselves still exist on the server. ... >This "proper etiquette" of which you speak is exactly contrary to the ...
    (rec.music.makers.percussion)
  • Re: Elsethread
    ... likely to be different from what you see on your server. ... Not, as Lewis says elsethread, if your newsreader does proper ... That is the Date in the Date: header, ... thread reconstruction should be identical. ...
    (alt.usage.english)
  • Re: Help
    ... Here's information on Usenet and using a newsreader, ... Our current backup solution is simply portable hard drives (120gb ... dell for a server solution I was quoted the above server with a tape ... I have been looking into DAS ...
    (microsoft.public.windows.server.general)
  • lokaler Drucker am Client nicht gemappt
    ... Tipp NG + pers. ... Eigenschaftsänderung auf dem Server außer Kraft gesetzt ... >einen WIN2003-Terminalserver an, wird der lokale Drucker ... >man am XP-Terminalclient das Häckchen in den Optionen ...
    (microsoft.public.de.german.windows.terminaldienste)