Usługa Intelligent Insights w usłudze Azure SQL Database i Azure SQL Managed Instance informuje o tym, co dzieje się z wydajnością bazy danych.
Funkcja Intelligent Insights używa wbudowanej inteligencji do ciągłego monitorowania użycia bazy danych za pomocą sztucznej inteligencji i wykrywania zdarzeń powodujących pogorszenie wydajności. Po wykryciu szczegółowa analiza jest wykonywana, która generuje dziennik zasobów usługi Intelligent Insights o nazwie SQLInsights (niezwiązany z usługą Azure Monitor SQL Insights (wersja zapoznawcza)) z inteligentną oceną problemów. Ta ocena składa się z analizy głównej przyczyny problemu z wydajnością bazy danych i, jeśli to możliwe, zaleceń dotyczących poprawy wydajności.
Co można zrobić w usłudze Intelligent Insights?
Intelligent Insights to unikatowa funkcja wbudowanej analizy platformy Azure, która zapewnia następującą wartość:
Aktywne monitorowanie
Dostosowane szczegółowe informacje o wydajności
Wczesne wykrywanie obniżenia wydajności bazy danych
Analiza głównej przyczyny wykrytych problemów
Zalecenia dotyczące poprawy wydajności
Skalowanie w poziomie możliwości na setki tysięcy baz danych
Pozytywny wpływ na zasoby metodyki DevOps i całkowity koszt posiadania
Jak działa usługa Intelligent Insights
Usługa Intelligent Insights analizuje wydajność bazy danych, porównując obciążenie bazy danych z ostatniej godziny z obciążeniem z ostatnich siedmiu dni punktu odniesienia. Obciążenie bazy danych składa się z zapytań określanych jako najważniejsze dla wydajności bazy danych, takich jak najbardziej powtarzające się i największe zapytania. Ponieważ każda baza danych jest unikatowa na podstawie struktury, danych, użycia i aplikacji, każdy wygenerowany punkt odniesienia obciążenia jest specyficzny i unikatowy dla tego obciążenia. Intelligent Insights, niezależnie od punktu odniesienia obciążenia, monitoruje również bezwzględne progi operacyjne i wykrywa problemy z nadmiernym czasem oczekiwania, krytycznymi wyjątkami i problemami z parametryzacji zapytań, które mogą mieć wpływ na wydajność.
Po wykryciu problemu z obniżeniem wydajności z wielu obserwowanych metryk przy użyciu sztucznej inteligencji jest wykonywana analiza. Dziennik diagnostyczny jest generowany przy użyciu inteligentnego wglądu w to, co dzieje się z bazą danych. Usługa Intelligent Insights ułatwia śledzenie problemu z wydajnością bazy danych od pierwszego wyglądu do momentu rozwiązania. Każdy wykryty problem jest śledzony przez jego cykl życia od początkowego wykrywania problemów i weryfikacji poprawy wydajności do jego ukończenia.
Metryki używane do mierzenia i wykrywania problemów z wydajnością bazy danych są oparte na czasie trwania zapytania, żądaniach przekroczenia limitu czasu, nadmiernym czasie oczekiwania i błędach żądań. Aby uzyskać więcej informacji na temat metryk, zobacz Metryki wykrywania.
Zidentyfikowane spadki wydajności bazy danych są rejestrowane w dzienniku usługi SQLInsights usługi Intelligent Insights z inteligentnymi wpisami, które składają się z następujących właściwości:
Właściwość
Szczegóły
Informacje o bazie danych
Metadane dotyczące bazy danych, w której wykryto szczegółowe informacje, takie jak identyfikator URI zasobu.
Obserwowany zakres czasu
Czas rozpoczęcia i zakończenia wykrytego wglądu.
Metryki, których dotyczy wpływ
Metryki, które spowodowały wygenerowanie szczegółowych informacji:
Wzrost czasu trwania zapytania [sekund].
Nadmierne oczekiwanie [sekundy].
Przekroczono limit czasu żądań [procent].
Błędnie wychodzące żądania [procent].
Wartość wpływu
Wartość mierzonej metryki.
Zapytania i kody błędów, których dotyczy problem
Skrót zapytania lub kod błędu. Mogą one służyć do łatwego korelowania z zapytaniami, których dotyczy problem. Podano metryki składające się z trwania zapytania, czasu oczekiwania, liczby limitów czasu lub kodów błędów.
Analiza głównej przyczyny problemu zidentyfikowanego w formacie czytelnym dla człowieka. Niektóre szczegółowe informacje mogą zawierać zalecenie dotyczące poprawy wydajności, jeśli to możliwe.
Opcje inteligentnego wglądu w szczegółowe informacje
Dostępne są opcje inteligentnego wglądu w szczegółowe informacje:
Opcja Inteligentne szczegółowe informacje
Obsługa bazy danych Azure SQL
Obsługa wystąpień zarządzanych Azure SQL
Konfigurowanie usługi Intelligent Insights — konfigurowanie analizy inteligentnych szczegółowych informacji dla baz danych.
Tak
Tak
Przesyłanie strumieniowe szczegółowych informacji w usłudze Azure SQL Analytics — szczegółowe informacje o strumieniu w usłudze Azure SQL Analytics.
Tak
Tak
Przesyłanie strumieniowe szczegółowych informacji do Azure Event Hubs — przesyłanie strumieniowe szczegółowych informacji do usługi Event Hubs w celu uzyskania dalszych integracji niestandardowych.
Tak
Tak
Przesyłanie strumieniowe szczegółowych informacji do usługi Azure Storage — przesyłanie strumieniowe szczegółowych informacji do usługi Azure Storage w celu dalszej analizy i długoterminowego archiwizacji.
Tak
Tak
Uwaga
Inteligentne szczegółowe informacje to funkcja w wersji zapoznawczej, niedostępna w następujących regionach: Europa Zachodnia, Europa Północna, Zachodnie stany USA 1 i Wschodnie stany USA 1.
Dane wyjściowe funkcji Intelligent Insights można przesyłać strumieniowo do jednego z kilku miejsc docelowych do analizy:
Dane wyjściowe przesyłane strumieniowo do obszaru roboczego usługi Log Analytics mogą być używane z usługą Azure SQL Analytics do wyświetlania szczegółowych informacji za pośrednictwem interfejsu użytkownika Azure Portal. Jest to zintegrowane rozwiązanie platformy Azure i najbardziej typowy sposób wyświetlania szczegółowych informacji.
Dane wyjściowe przesyłane strumieniowo do Azure Event Hubs mogą służyć do tworzenia niestandardowych scenariuszy monitorowania i alertów
Dane wyjściowe przesyłane strumieniowo do usługi Azure Storage mogą być używane do tworzenia niestandardowych aplikacji na potrzeby raportowania niestandardowego, długoterminowego archiwizowania danych itd.
Integracja Azure SQL Analytics, Azure Event Hubs, Azure Storage lub produktów innych firm do użycia jest wykonywana za pomocą pierwszego włączenia rejestrowania usługi Intelligent Insights (dziennika "SQLInsights") na stronie ustawień diagnostycznych bazy danych, a następnie konfigurowania danych dziennika usługi Intelligent Insights, które mają być przesyłane strumieniowo do jednego z tych miejsc docelowych.
Aby uzyskać więcej informacji na temat włączania rejestrowania usługi Intelligent Insights i konfigurowania danych metryk i dzienników zasobów, które mają być przesyłane strumieniowo do używanego produktu, zobacz Metryki i rejestrowanie diagnostyczne.
Konfigurowanie przy użyciu usługi Azure SQL Analytics
rozwiązanie Azure SQL Analytics zapewnia graficzny interfejs użytkownika, funkcje raportowania i zgłaszania alertów dotyczące wydajności bazy danych przy użyciu danych dziennika zasobów usługi Intelligent Insights.
Aby używać usługi Intelligent Insights z usługą Azure SQL Analytics, skonfiguruj dane dziennika usługi Intelligent Insights, które mają być przesyłane strumieniowo do obszaru roboczego usługi Azure SQL Analytics utworzonego w poprzednim kroku, zobacz Rejestrowanie metryk i diagnostyki.
W poniższym przykładzie przedstawiono usługę Intelligent Insights przeglądaną za pośrednictwem usługi Azure SQL Analytics:
Metryki używane do wykrywania modeli generujących usługę Intelligent Insights są oparte na monitorowaniu:
Czas trwania zapytania
Żądania przekroczenia limitu czasu
Nadmierny czas oczekiwania
Błędy żądań
Żądania czasu trwania zapytań i limitu czasu są używane jako podstawowe modele w wykrywaniu problemów z wydajnością obciążenia bazy danych. Są one używane, ponieważ bezpośrednio mierzą to, co dzieje się z obciążeniem. Aby wykryć wszystkie możliwe przypadki obniżenia wydajności obciążenia, nadmierne czas oczekiwania i błędnie wychodzące żądania są używane jako dodatkowe modele, aby wskazać problemy wpływające na wydajność obciążenia.
System automatycznie uwzględnia zmiany obciążenia i zmiany liczby żądań zapytań wysyłanych do bazy danych w celu dynamicznego określania normalnych i nieaktualnych progów wydajności bazy danych.
Wszystkie metryki są uwzględniane razem w różnych relacjach za pośrednictwem naukowo pochodnego modelu danych, który kategoryzuje każdy wykryty problem z wydajnością. Informacje udostępniane za pośrednictwem inteligentnych szczegółowych informacji obejmują:
Szczegóły wykrytego problemu z wydajnością.
Wykryto główną analizę przyczyny problemu.
Zalecenia dotyczące zwiększania wydajności monitorowanej bazy danych, jeśli to możliwe.
Czas trwania zapytania
Model degradacji czasu trwania zapytania analizuje poszczególne zapytania i wykrywa wzrost czasu potrzebny na skompilowanie i wykonanie zapytania w porównaniu z punktem odniesienia wydajności.
Jeśli wbudowana inteligencja wykryje znaczny wzrost czasu kompilowania zapytań lub wykonywania zapytań, który wpływa na wydajność obciążenia, te zapytania są oflagowane jako problemy z obniżeniem wydajności czasu trwania zapytania.
Dziennik diagnostyczny usługi Intelligent Insights generuje skrót zapytania zapytania obniżonej wydajności. Skrót zapytania wskazuje, czy spadek wydajności był związany ze wzrostem czasu kompilowania zapytania lub wykonywania, co zwiększa czas trwania zapytania.
Żądania przekroczenia limitu czasu
Model degradacji żądań przekroczenia limitu czasu analizuje poszczególne zapytania i wykrywa wzrost limitu czasu na poziomie wykonywania zapytania oraz ogólne limity czasu żądania na poziomie bazy danych w porównaniu z okresem odniesienia wydajności.
Niektóre zapytania mogą przekraczać limit czasu jeszcze przed osiągnięciem etapu wykonywania. Za pomocą przerwanych procesów roboczych i żądań wykonanych, wbudowanych miar analizy i analizuje wszystkie zapytania, które dotarły do bazy danych, czy dotarły do etapu wykonywania, czy nie.
Po przekroczeniu limitu czasu wykonanych zapytań lub liczbie przerwanych procesów roboczych żądań przekracza próg zarządzany przez system, dziennik diagnostyczny jest wypełniany inteligentnymi szczegółowymi informacjami.
Wygenerowane szczegółowe informacje zawierają liczbę żądań przekroczenia limitu czasu i liczbę zapytań limitu czasu. Wskazanie obniżenia wydajności jest związane ze wzrostem limitu czasu na etapie wykonywania lub zapewniany jest ogólny poziom bazy danych. Gdy wzrost limitu czasu jest uznawany za znaczący dla wydajności bazy danych, te zapytania są oflagowane jako problemy z obniżeniem wydajności przekroczenia limitu czasu.
Nadmierne czasy oczekiwania
Model nadmiernego czasu oczekiwania monitoruje poszczególne zapytania bazy danych. Wykrywa niezwykle wysokie statystyki oczekiwania zapytań, które przekroczyły progi bezwzględne zarządzane przez system. Obserwowane są następujące metryki dotyczące nadmiernego czasu oczekiwania przy użyciu statystyk oczekiwania magazynu zapytań (sys.query_store_wait_stats):
Osiąganie limitów zasobów
Osiąganie limitów zasobów puli elastycznej
Nadmierna liczba wątków procesu roboczego lub sesji
Nadmierne blokowanie bazy danych
Wykorzystanie pamięci
Inne statystyki oczekiwania
Osiągnięcie limitów zasobów lub limitów zasobów elastycznej puli oznacza, że użycie dostępnych zasobów w subskrypcji lub w puli elastycznej przekroczyło progi bezwzględne. Te statystyki wskazują na obniżenie wydajności obciążenia. Nadmierna liczba wątków procesu roboczego lub sesji oznacza warunek, w którym liczba wątków roboczych lub sesji zainicjowanych przekroczyła progi bezwzględne. Te statystyki wskazują na obniżenie wydajności obciążenia.
Nadmierne blokowanie bazy danych oznacza warunek, w którym liczba blokad w bazie danych przekroczyła progi bezwzględne. Ta statystyka wskazuje spadek wydajności obciążenia. Ciśnienie pamięci to warunek, w którym liczba wątków żądających pamięci przekracza próg bezwzględny. Ta statystyka wskazuje spadek wydajności obciążenia.
Inne wykrywanie statystyk oczekiwania wskazuje warunek, w którym różne metryki mierzone przez statystyki oczekiwania magazynu zapytań przekroczyły próg bezwzględny. Te statystyki wskazują na obniżenie wydajności obciążenia.
Po wykryciu nadmiernego czasu oczekiwania, w zależności od dostępnych danych, dziennik diagnostyczny usługi Intelligent Insights generuje skróty wpływających i dotkniętych zapytań obniżonej wydajności, szczegóły metryk, które powodują oczekiwanie zapytań w czasie wykonywania i mierzony czas oczekiwania.
Błędy żądań
Błąd model degradacji żądań monitoruje poszczególne zapytania i wykrywa wzrost liczby zapytań, które wystąpiły w porównaniu z okresem odniesienia. Ten model monitoruje również wyjątki krytyczne, które przekroczyły bezwzględne progi zarządzane przez wbudowaną inteligencję. System automatycznie uwzględnia liczbę żądań zapytań wysyłanych do bazy danych i odpowiada za wszelkie zmiany obciążenia w monitorowanym okresie.
Gdy mierzony wzrost liczby błędów żądań względem ogólnej liczby wykonanych żądań jest uznawany za znaczący dla wydajności obciążenia, zapytania, których dotyczy problem, są oflagowane, ponieważ błędy żądają obniżenia wydajności.
Dziennik Intelligent Insights generuje liczbę błędów żądań. Wskazuje, czy spadek wydajności był związany ze wzrostem błędów żądań, czy przekroczeniem monitorowanego progu wyjątku krytycznego i mierzonym czasem obniżenia wydajności.
Jeśli którykolwiek z monitorowanych wyjątków krytycznych przekracza bezwzględne progi zarządzane przez system, inteligentna analiza jest generowana z krytycznymi szczegółami wyjątków.
Dowiedz się, jak wykrywać i diagnozować typowe problemy z wydajnością przy użyciu dynamicznych widoków zarządzania w celu monitorowania Azure SQL Managed Instance firmy Microsoft.