Mehrere Abfragen zu vermeiden Beitritt?

Habe ich bemerkt, sobald ich die zusätzlichen Verknüpfungen zu einigen meiner Fragen die Zeit, die zum ausführen dieser war mehr als nur das ausfüllen von mehreren Abfragen.

Zeit gehören das laden der Seite und gemittelt über 20-Seite geladen.

7-9 Abfragen ohne joins

159ms

3 Abfragen mit 2 Verknüpfungen

235ms

Sollte ich gehen Sie einfach weiter mit mehreren Abfragen anstelle des joins bedenkt Sie scheinen zu haben eine bedeutende Auswirkung auf die Leistung? Kann ich wohl noch optimieren, die mehrere query-Methode, da war ich auch lazy loading bei den Prüfungen.

BEARBEITEN

Werde ich einige falsche Informationen zum Wohle der Frage.

Tabelle Objekte

ID (int, identity -, PK -, clustered-index)

UserID (int, nicht gruppierter index)

CategoryID (int, nicht gruppierter index)

Tabelle Benutzer

ID (int, identity -, PK -, clustered-index)

Tabelle Kategorien

ID (int, identity -, PK -, clustered-index)

Ziemlich einfach. Es ist eine Doppel-inner-join-Abfrage auf die Objekte der Tabelle. Die Abfrage aller 3 getrennt scheint schneller zu sein als die Verknüpfung.

Den Abfrageplan für die Verknüpfung zeigt 42% getan für 2 clustered index wird versucht, die 23% ist ein clustered index scan und der rest ist eine Top N-Sortierung.

  • Vielleicht posten die lästigen Abfragen helfen würde...
  • Haben Sie getestet, die falsch-schema, das Sie uns Gaben, um sicher zu sein es auch Erfahrungen der Verlangsamung?
InformationsquelleAutor Chad Moran | 2009-02-28
Schreibe einen Kommentar