Lista kontrolna analizowanie wolno działającymi kwerendami
Kwerendy lub aktualizacji, które trwa dłużej niż powinno wykonać może wynikać z różnych powodów.Spowolnienie wykonywania kwerend może być spowodowane przez problemy z wydajnością związane z sieci lub komputera w przypadku gdy SQL Server jest uruchomiony.Wolno działającymi kwerendami również może być spowodowane przez problemy z fizycznej bazy danych projektu.
Istnieje kilka przyczyn wolno działającymi kwerendami i aktualizacje:
Spowolnienie komunikacji sieciowej.
Nieodpowiednie pamięci w komputerze serwera lub za mało pamięci dla SQL Server.
Brak przydatnych statystyk
Brak przydatnych indeksów.
Brak przydatne Widoki indeksowane.
Brak rozkładanie użytecznych danych.
Brak przydatne partycjonowanie.
Gdy kwerenda lub aktualizacja trwa dłużej niż oczekiwano, zadaj sobie następujące pytania, których przyczyny wolno działającymi kwerendami, wymienione w poprzedniej sekcji adresu:
Porada |
---|
Aby zaoszczędzić czas, skontaktuj się z tej listy kontrolnej przed kontaktu dostawca pomocy technicznej. |
Problemy z wydajnością powiązany jest składnik inny niż kwerendy?Na przykład jest wydajność sieci powolne problem?Czy istnieją inne składniki, które może być przyczyną lub przyczyniających się do zmniejszenia wydajności?
Monitor systemu Windows może służyć do monitorowania wydajności SQL Server i -SQL Server pokrewne składniki.Aby uzyskać więcej informacji, zobacz Monitorowanie wykorzystania zasobów (Monitor systemu).
Jeśli dotyczy problemu z wydajnością kwerend, które kwerendy lub zestaw kwerend jest powiązany?
Użyj SQL Server Profiler do identyfikowania powolne kwerendy lub kwerend.Aby uzyskać więcej informacji, zobacz Za pomocą SQL Server Profiler.Użyj sys.dm_exec_query_stats i sys.dm_exec_requests dynamicznego zarządzania widoki, aby znaleźć podobne kwerend, które wspólnie zajmują dużej liczby zasobów.Aby uzyskać więcej informacji, zobacz Znajdowanie i dostrajania podobnych kwerend za pomocą kwerendy i kwerendy Plan mieszania.
Jak analizować wydajność wolno działającymi kwerendami?
Po zidentyfikowaniu spowolnić działanie kwerendy lub kwerend można dalej analizować wydajność kwerendy przez produkujące Showplan, który może być tekst, XML lub graficzna reprezentacja plan wykonania kwerend, który generuje optymalizator kwerendy.Można utworzyć za pomocą Showplan Transact-SQL USTAWIĆ opcje, SQL Server Management Studio, lub SQL Server Profiler.
Aby uzyskać informacje dotyczące korzystania z Transact-SQL Ustaw opcje wyświetlania tekstu i XML wykonanie planów, zobacz Wyświetlanie wykonanie planów przy użyciu opcji zestaw Showplan (Transact-SQL).
Aby uzyskać informacje dotyczące korzystania z SQL Server Management Studio do wyświetlania graficznego wykonanie planów, zobacz Wyświetlanie graficznego wykonanie planów (SQL Server Management Studio).
Aby uzyskać informacje dotyczące korzystania z SQL Server Profiler do wyświetlania tekstu i XML wykonanie planów, zobacz Wyświetlanie wykonanie planów przy użyciu klas zdarzeń programu SQL Server Profiler.
Informacje zebrane przez te narzędzia pozwala określić, jak kwerenda jest wykonywana przez SQL Server optymalizator kwerendy i indeksy, które są używane.Wykorzystując te informacje, można określić, jeśli wydajności mogą być dokonywane przez poprawiania kwerendy, zmiana indeksów w tabelach lub prawdopodobnie modyfikowanie projektu bazy danych.Aby uzyskać więcej informacji, zobacz Analizowanie kwerendy.
Kwerenda została zoptymalizowana ze statystykami przydatne?
optymalizator kwerendy używa statystyki do tworzenia planów kwerend, które poprawiają wydajność kwerendy.Większość kwerend optymalizator kwerendy generuje już niezbędne dane statystyczne dla planu kwerend wysokiej jakości; w niektórych przypadkach trzeba utworzyć dodatkowe statystyki lub zmodyfikować projekt kwerendy, aby uzyskać najlepsze wyniki.
Aby uzyskać więcej informacji, zobacz Aby poprawić wydajność kwerendy przy użyciu statystyk.Ten temat zawiera wskazówki dotyczące poprawy skuteczności statystyki wydajności kwerendy.Następujące wytyczne:
Przy użyciu opcji statystyki całej bazy danych.Na przykład, należy upewnić się, że automatyczne tworzenie statystyk, AUTO_CREATE_STATISTICS i automatyczne aktualizacja statystyki, AUTO_UPDATE_STATISTICS, opcje całej bazy danych są na.Jeśli są one wyłączone, planów kwerend może być warunkami panującymi i może zmniejszyć wydajność kwerendy.
Określanie, kiedy tworzenie statystyk.W kilku przypadkach planów kwerend można poprawić, tworząc dodatkowe statystyki z Tworzenie statystyk (Transact-SQL) instrukcja.Te dodatkowe statystyki można przechwycić korelacji statystycznych, które optymalizator kwerendy nie uwzględniać podczas tworzenia statystyk dla indeksów lub pojedynczej kolumny.
Określanie, kiedy aktualizacji statystyk.W niektórych przypadkach można poprawić planu kwerend i zatem zwiększyć wydajność kwerendy aktualizując częściej niż kiedy jest AUTO_UPDATE_STATISTICS na statystyki.Można zaktualizować statystyki z aktualizacja statystyki instrukcja lub procedura składowana sp_updatestats.
Projektowanie kwerendy Statystyka ta skutecznie.Niektóre implementacje kwerendy, takie jak zmienne lokalne i złożonych wyrażeń w predykacie kwerendy może prowadzić do planów kwerend warunkami panującymi.Aby tego uniknąć może pomóc w następujących wskazówki dotyczące projektu kwerendy dla skutecznego przy użyciu statystyk.
Dostępne są odpowiednie indeksy?Dodawanie jednego lub kilku indeksów poprawiające wydajność kwerendy?Aby uzyskać więcej informacji, zobacz Projekt indeksu ogólne wytyczne, Znajdowanie Brak indeksów, i Doradca dostrajania aparatu bazy danychOmówienie.Aparat baz danych Dostrajanie klasyfikatora można też zalecić tworzenia niezbędne dane statystyczne.
Czy istnieją żadnych punktów aktywnych danych lub indeks?Należy rozważyć użycie rozkładanie.Rozkładanie można zaimplementować za pomocą RAID (redundant array of independent disks) poziom 0, gdy dane są przesyłane na kilku dyskach.Aby uzyskać więcej informacji, zobacz Korzystanie z plików i aplikacjami i RAID.
optymalizator kwerendy znajduje najlepszą możliwość Optymalizacja złożonych kwerend?Aby uzyskać więcej informacji, zobacz Dostrajanie zalecenia kwerendy.
Jeśli masz dużą ilość danych, czy trzeba ją podzielić na partycje?Łatwość zarządzania danych jest największą zaletą partycjonowanie, ale jeśli tabel i indeksów na nich są odseparowane podobnie, partycje może również zwiększyć wydajność kwerendy.Aby uzyskać więcej informacji, zobacz Opis partycji i Dostrajanie fizycznego projektu bazy danych.
Zobacz także