Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Mierzenie wydajności zapytań:koszt zapytania w planie wykonania a czas potrzebny

Ślad profilera umieszcza go w perspektywie.

  • Zapytanie A:1,3 s CPU, 1,4 s czas trwania
  • Zapytanie B:2,3 sekundy procesora, 1,2 sekundy czas trwania

Zapytanie B używa równoległości:CPU> czas trwanianp. zapytanie używa 2 procesorów, średnio 1,15 s każdy

Zapytanie A prawdopodobnie nie brzmi:CPU

To wyjaśnia koszt w stosunku do partii:17% dla prostszego, nierównoległego planu zapytań.

Optymalizator stwierdza, że ​​zapytanie B jest droższe i skorzysta na paralelizmie, mimo że wymaga to dodatkowego wysiłku.

Pamiętaj jednak, że zapytanie B zużywa 100% z 2 procesorów (czyli 50% dla 4 procesorów) przez jedną sekundę. Zapytanie A wykorzystuje 100% pojedynczego procesora przez 1,5 sekundy.

Szczyt dla zapytania A jest niższy kosztem dłuższego czasu trwania. Kogo to obchodzi z jednym użytkownikiem? Przy 100 może to robi różnicę...



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zwróć wiersze zawierające znaki inne niż alfanumeryczne w SQL Server

  2. Błąd 28000:Logowanie nie powiodło się dla użytkownika DOMENA\\użytkownik z pyodbc

  3. składnia pojedynczego wiersza MERGE / upsert w SQL Server

  4. Zwróć nazwę lokalnego serwera w SQL Server z @@NAZWASERWERA

  5. Przykłady ABS() w SQL Server