Maksymalizowanie wydajności w celu zwiększenia szybkości i wydajności

Ukończone

Program SQL Server 2025 zawiera ulepszenia przetwarzania zapytań i optymalizacji wydajności. W tej lekcji omówiono funkcje przetwarzania zapytań, zarządzanie zasobami i możliwości konserwacji.

Optymalizowanie przetwarzania zapytań przy użyciu protokołu IQP

Program SQL Server 2025 przenosi inteligentne przetwarzanie zapytań (IQP) na następny poziom, łącząc tradycyjną optymalizację planu ze szczegółowymi informacjami opartymi na sztucznej inteligencji i obsługą nowoczesnych typów danych. Te ulepszenia umożliwiają aparatowi dynamiczne dostosowywanie się do wzorców obciążeń, optymalizowanie zapytań obejmujących pliki JSON i RegEx, a nawet precyzyjne dostosowywanie strategii wykonywania przy użyciu uczenia maszynowego. Dla deweloperów i administratorów baz danych oznacza to szybsze zapytania, lepszą współbieżność oraz zwiększoną wydajność analizy w czasie rzeczywistym i dane o luźnej strukturze — wszystko to bez potrzeby ręcznej konfiguracji.

Procesor zapytań optymalizuje plany wykonywania na podstawie wzorców obciążeń i zasobów systemowych. Najważniejsze ulepszenia obejmują:

Funkcja Description Korzyść
Zoptymalizowane blokowanie Ulepszone mechanizmy kontroli współbieżności Ulepszony dostęp wielu użytkowników
Ochrona halloweenowa Usprawnione operacje aktualizacji/usuwania Zmniejszenie obciążenia związanego z modyfikacjami
Planowanie ponownego użycia Lepsza implementacja sp_executesql Bardziej spójna dynamiczna wydajność sql
Wykonywanie adaptacyjne Korekty planu czasu wykonania Optymalna wydajność dla różnych danych
Opcjonalna optymalizacja planu parametrów (OPPO) Wybiera optymalny plan w czasie wykonywania na podstawie parametrów NULL a NIE NULL Poprawia wydajność zapytań przy użyciu parametrów opcjonalnych
Informacja zwrotna dotycząca szacowania kardynalności (CE) dla wyrażeń Uczy się z poprzednich wykonań w celu uszczegółowienia oszacowań kardynalności dla powtarzających się wyrażeń. Dokładniejsze oszacowania, lepszy wybór planu
OPTIMIZED_SP_EXECUTESQL Zmniejsza liczbę burz kompilacji, traktując sp_executesql jak procedury składowane na potrzeby kompilacji Zwiększa stabilność i wydajność w przypadku dużych obciążeń zapytań

Monitorowanie wydajności za pomocą magazynu zapytań

Magazyn zapytań pomaga śledzić wydajność zapytań w czasie i wykrywać problemy z regresją.

Możliwości magazynu zapytań w programie SQL Server 2025 obejmują:

  • Monitorowanie wydajności replik pomocniczych

    • Śledzenie wydajności zapytań na czytelnych replikach wtórnych
    • Obsługa zawsze włączonych grup dostępności
    • Spójne monitorowanie w środowiskach rozproszonych
  • Automatyczna optymalizacja zapytań

    • Wykrywanie i poprawianie regresji zapytań
    • Rekomendacje dotyczące indeksowania oparte na wzorcach zapytań
    • Planowanie sugestii dotyczących ulepszeń
  • Szczegółowe informacje o rozproszonym obciążeniu

    • Monitorowanie zapytań między bazami danych
    • Śledzenie wydajności na różnych replikach
    • Analiza użycia zasobów

Wskazówka

Włącz magazyn zapytań w najbardziej aktywnych bazach danych, aby utworzyć punkt odniesienia wydajności i zidentyfikować możliwości optymalizacji.

Implementowanie zaawansowanych funkcji zapytań

Program SQL Server 2025 sprawia, że zaawansowane funkcje zapytań są proste i zaawansowane. Te ulepszenia obejmują optymalizację planu wrażliwego na parametry, opinie zwrotne dotyczące szacowania kardynalności, adaptacyjną równoległość oraz ulepszenia trybu wsadowego na potrzeby analizy. Deweloperzy uzyskują również bardziej precyzyjną kontrolę przy użyciu opcjonalnych planów parametrów i nowych wskazówek dotyczących zapytań, zmniejszając interwencję ręczną przy jednoczesnym zapewnieniu wydajnego uruchamiania zapytań w różnych obciążeniach.

Użyj tych funkcji, aby rozwiązać określone scenariusze wydajności w aplikacjach bazy danych.

Program SQL Server 2025 zawiera następujące ulepszenia przetwarzania zapytań:

  • Optymalizacja planu wrażliwego na parametry (PSP): Automatycznie tworzy i utrzymuje wiele planów wykonywania na podstawie wzorców wartości parametrów, zwiększając wydajność zapytań z różnymi wartościami parametrów.
  • Stopień równoległości (DOP) włączony domyślnie: Automatycznie dostosowuje ustawienia wykonywania równoległego na podstawie historycznej wydajności zapytań, optymalizując wykorzystanie zasobów.
  • Optymalizacje trybu wsadowego na potrzeby analizy: Poprawiają wydajność zapytań analitycznych dzięki ulepszonym operacjom wektoryzowanym i lepszemu wykorzystaniu pamięci
  • Opcjonalna optymalizacja planów parametrów: Generuje wydajne plany wykonywania zapytań z opcjonalnymi parametrami, co zmniejsza potrzebę dynamicznego kodu SQL
  • ABORT_QUERY_EXECUTION wskazówki dotyczące zapytania: Zapewnia szczegółową kontrolę nad wykonywaniem zapytań, umożliwiając celowe zakończenie określonych operacji

Zarządzanie zasobami i konserwacją

Nowe możliwości, które mają na celu zwiększenie niezawodności, szybkości i łatwości konserwacji, jednocześnie dając administratorom baz danych większą kontrolę i redukując pracę ręczną. Dzięki tym funkcjom administratorzy baz danych mają większą kontrolę nad zasobami systemowymi, automatyzują rutynowe zadania i minimalizują przestoje podczas nieoczekiwanych zdarzeń.

Razem te funkcje zapewniają większą wydajność i odporność dla nowoczesnych środowisk danych.

  • Zarządzanie zasobami przestrzeni tempdb: Kontrolowanie i ograniczanie użycia przestrzeni tempdb dla grupy obciążeń, zapobiegając przypadkom, gdzie zapytania zużywają nadmierną ilość magazynu tymczasowego.
  • Przyspieszone odzyskiwanie bazy danych (ADR) w bazie danych tempdb: Szybkie odzyskiwanie bazy danych tempdb po nieoczekiwanych zamknięciach, zmniejszenie przestojów bazy danych i zwiększenie dostępności systemu
  • Obsługa bazy danych tempdb w systemie Linux: Używanie tymczasowych systemów plików opartych na pamięci w systemie Linux w celu zwiększenia wydajności bazy danych tempdb i mniejszego opóźnienia we/wy
  • Ulepszenia konserwacji indeksów kolumnowych: Ulepszone operacje konserwacyjne dla indeksów kolumnowych, w tym lepsza kompresja i wydajniejsza eliminacja segmentów
  • Zautomatyzowane czyszczenie śledzenia zmian: Automatyczna konserwacja tabel śledzenia zmian, zmniejszenie obciążenia ręcznego i zapewnienie optymalnej wydajności
  • Usuń In-Memory OLTP z bazy danych: Uproszczony proces usuwania tabel zoptymalizowanych pod kątem pamięci i natywnie skompilowanych modułów z baz danych, gdy nie są już potrzebne