Szczegółowe informacje o zapytaniach w magazynowaniu danych w sieci szkieletowej
Dotyczy:✅ punkt końcowy analizy SQL i magazyn w usłudze Microsoft Fabric
W usłudze Microsoft Fabric funkcja szczegółowych informacji o zapytaniach jest skalowalnym, zrównoważonym i rozszerzalnym rozwiązaniem, które usprawnia środowisko analizy SQL. Korzystając z danych historycznych zapytań, zagregowanych szczegółowych informacji i dostępu do rzeczywistego tekstu zapytania, możesz analizować i dostosowywać wydajność zapytań. Qi udostępnia informacje na temat zapytań uruchamianych tylko w kontekście użytkownika, zapytania systemowe nie są brane pod uwagę.
Funkcja szczegółowych informacji o zapytaniach zapewnia centralną lokalizację danych historycznych zapytań i szczegółowe informacje umożliwiające podejmowanie akcji przez 30 dni, co ułatwia podejmowanie świadomych decyzji w celu zwiększenia wydajności punktu końcowego usługi Warehouse lub analizy SQL. Gdy zapytanie SQL jest uruchamiane w usłudze Microsoft Fabric, funkcja szczegółowych informacji o zapytaniach zbiera i konsoliduje swoje dane wykonywania, zapewniając cenne informacje. Pełny tekst zapytania można wyświetlić dla ról Administrator, Członek i Współautor.
- Dane zapytań historycznych: funkcja szczegółowych informacji o zapytaniach przechowuje historyczne dane dotyczące wykonywania zapytań, umożliwiając śledzenie zmian wydajności w czasie. Zapytania systemowe nie są przechowywane w szczegółowych danych zapytań.
- Zagregowane szczegółowe informacje: funkcja szczegółowych informacji dotyczących zapytań agreguje dane wykonywania zapytań w celu uzyskania szczegółowych informacji, które są bardziej przydatne, takie jak identyfikowanie długotrwałych zapytań lub najbardziej aktywnych użytkowników. Te agregacje są oparte na kształcie zapytania i wyjaśniono dalej w temacie Jak podobne zapytania są agregowane w celu generowania szczegółowych informacji?.
Zanim rozpoczniesz
Musisz mieć dostęp do punktu końcowego analizy SQL lub magazynu w obszarze roboczym pojemności Premium z uprawnieniami współautora lub wyższymi uprawnieniami.
Kiedy potrzebujesz szczegółowych informacji o zapytaniach?
Funkcja szczegółowych informacji o zapytaniach dotyczy kilku pytań i problemów związanych z wydajnością zapytań i optymalizacją bazy danych, w tym:
Analiza wydajności zapytań
- Jaka jest historyczna wydajność naszych zapytań?
- Czy istnieją długotrwałe zapytania, które wymagają uwagi?
- Czy możemy zidentyfikować zapytania powodujące wąskie gardła wydajności?
Optymalizacja zapytań i dostrajanie
- Które zapytania są często uruchamiane i czy można zwiększyć ich wydajność?
- Czy możemy zidentyfikować zapytania, które zakończyły się niepowodzeniem lub zostały anulowane?
- Czy możemy śledzić zmiany w wydajności zapytań w czasie?
- Czy istnieją zapytania, które stale działają słabo?
Monitorowanie aktywności użytkownika
- Kto przesłał określone zapytanie?
- Kto jest najbardziej aktywnymi użytkownikami lub użytkownikami z najbardziej długotrwałymi zapytaniami?
Istnieją trzy widoki systemowe umożliwiające uzyskanie odpowiedzi na następujące pytania:
queryinsights.exec_requests_history (Transact-SQL)
- Zwraca informacje o każdym ukończonym żądaniu/zapytaniu SQL.
queryinsights.long_running_queries (Transact-SQL)
- Zwraca informacje o zapytaniach według czasu wykonywania zapytania.
queryinsights.frequently_run_queries (Transact-SQL)
- Zwraca informacje o często uruchamianych zapytaniach.
Gdzie można zobaczyć szczegółowe informacje o zapytaniach?
Automatycznie wygenerowane widoki znajdują się w schemacie queryinsights
w punkcie końcowym analizy SQL i magazynie. Na przykład w Eksploratorze sieci szkieletowej magazynu znajdź widoki szczegółowych informacji o zapytaniach w obszarze Schematy, queryinsights, Views.
Po zakończeniu wykonywania zapytania zobaczysz jego dane wykonywania w queryinsights
widokach punktu końcowego magazynu lub analizy SQL, z którym nawiązano połączenie. Jeśli uruchomisz zapytanie obejmujące wiele baz danych w kontekście WH_2
, zapytanie zostanie wyświetlone w szczegółowych danych zapytania .WH_2
Wykonywanie zapytań może potrwać do 15 minut w szczegółowych danych zapytań w zależności od wykonywanego współbieżnego obciążenia. Czas potrzebny na pojawienie się zapytań w szczegółowych danych zapytań zwiększa się wraz ze wzrostem liczby wykonywanych zapytań współbieżnych.
W jaki sposób podobne zapytania są agregowane w celu generowania szczegółowych informacji?
Zapytania są traktowane tak samo przez szczegółowe informacje o zapytaniach, jeśli zapytania mają ten sam kształt, nawet jeśli predykaty mogą być inne.
Kolumnę query hash
w widokach można użyć do analizowania podobnych zapytań i przechodzenia do szczegółów poszczególnych wykonań.
Na przykład następujące zapytania są traktowane tak samo po sparametryzowanym predykacie:
SELECT * FROM Orders
WHERE OrderDate BETWEEN '1996-07-01' AND '1996-07-31';
oraz
SELECT * FROM Orders
WHERE OrderDate BETWEEN '2000-07-01' AND '2006-07-31';
Przykłady
Identyfikowanie zapytań uruchamianych przez Ciebie w ciągu ostatnich 30 minut
Poniższe zapytanie używa funkcji queryinsights.exec_requests_history
i wbudowanej USER_NAME()
funkcji, która zwraca bieżącą nazwę użytkownika sesji.
SELECT * FROM queryinsights.exec_requests_history
WHERE start_time >= DATEADD(MINUTE, -30, GETUTCDATE())
AND login_name = USER_NAME();
Identyfikowanie najczęściej uruchamianych zapytań przy użyciu podciągu w tekście zapytania
Poniższe zapytanie zwraca najnowsze zapytania pasujące do określonego ciągu uporządkowane według liczby pomyślnych wykonań malejących.
SELECT * FROM queryinsights.frequently_run_queries
WHERE last_run_command LIKE '%<some_label>%'
ORDER BY number_of_successful_runs DESC;
Identyfikowanie długotrwałych zapytań przy użyciu podciągów w tekście zapytania
Poniższe zapytanie zwraca zapytania zgodne z określonym ciągiem uporządkowanym przez średni czas wykonywania zapytania malejąco.
SELECT * FROM queryinsights.long_running_queries
WHERE last_run_command LIKE '%<some_label>%'
ORDER BY median_total_elapsed_time_ms DESC;