Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Baza danych SQL w usłudze Microsoft Fabric
Rodzina funkcji inteligentnego przetwarzania zapytań (IQP) obejmuje funkcje o szerokim wpływie, które zwiększają wydajność istniejących obciążeń przy minimalnym wysiłku implementacji do wdrożenia. Poniższa grafika zawiera szczegółowe informacje o rodzinie funkcji IQP i ich pierwszym wprowadzeniu dla programu SQL Server. Wszystkie funkcje IQP są dostępne w usłudze Azure SQL Managed Instance i usłudze Azure SQL Database. Niektóre funkcje zależą od poziomu zgodności bazy danych.
Obejrzyj ten film wideo, aby uzyskać omówienie inteligentnego przetwarzania zapytań:
Aby zapoznać się z pokazami i przykładowym kodem funkcji inteligentnego przetwarzania zapytań (IQP), zobacz przykładowe repozytorium GitHub.
Można automatycznie umożliwić obciążeniom kwalifikowanie się do inteligentnego przetwarzania zapytań, włączając odpowiedni poziom zgodności bazy danych. Można to ustawić przy użyciu języka Transact-SQL. Przykład:
ALTER DATABASE [WideWorldImportersDW]
SET COMPATIBILITY_LEVEL = 170;
Poniższa tabela zawiera szczegółowe informacje o wszystkich inteligentnych funkcjach przetwarzania zapytań wraz z wszelkimi wymaganiami dotyczącymi poziomu zgodności bazy danych. Aby uzyskać szczegółowe informacje na temat wszystkich funkcji IQP, w tym informacji o wersji i bardziej szczegółowych opisów, zobacz Funkcje inteligentnego przetwarzania zapytań szczegółowo.
Funkcje IQP dla usług Azure SQL Database i SQL Server 2025
| Funkcja IQP | Obsługiwane w usłudze Azure SQL Database | Obsługiwane w programie SQL Server 2025 (17.x) | Description |
|---|---|---|---|
| Opcjonalna optymalizacja planu parametrów (OPPO) | No | Tak, począwszy od programu SQL Server 2025 (17.x) z poziomem zgodności 170 | Wykorzystuje infrastrukturę optymalizacji planu adaptacyjnego (Multiplan), która została wprowadzona z ulepszeniem w zakresie optymalizacji planu czułej na parametry (PSPO), który generuje wiele planów z pojedynczego zapytania. Funkcja może wybrać bardziej optymalny plan w czasie wykonywania na podstawie tego, czy parametr ma wartość NULL OR NOT NULL, co poprawia wydajność zapytań, które w przeciwnym razie mogłyby domyślnie działać nieoptymalnie dla takich wzorców zapytań. |
| Informacja zwrotna dotycząca szacowania kardynalności (CE) dla wyrażeń | No | Tak, począwszy od programu SQL Server 2025 (17.x) z poziomem zgodności 160 | Rozszerza informacje zwrotne CE w celu poprawy oszacowań kardynalności dla powtarzających się wyrażeń w różnych zapytaniach, ucząc się na podstawie poprzednich wykonań i automatycznie stosując odpowiednie wybory modelu CE do przyszłych wykonań tych wyrażeń. |
| OPTIMIZED_SP_EXECUTESQL | Yes | Tak, począwszy od programu SQL Server 2025 (17.x) | Skutecznie zmniejszać wpływ problemów z kompilacją. Burza kompilacji to sytuacja, w której jest kompilowana jednocześnie duża liczba zapytań, co prowadzi do problemów z wydajnością i rywalizacji o zasoby. Włącz tę funkcję, aby wywołania sp_executesql zachowywały się jak obiekty, takie jak procedury składowane i wyzwalacze, z perspektywy kompilacji. |
Funkcje protokołu IQP dla usług Azure SQL Database i SQL Server 2022
| Funkcja IQP | Obsługiwane w usłudze Azure SQL Database | Obsługiwane w programie SQL Server 2022 (16.x) i nowszych wersjach | Description |
|---|---|---|---|
| Sprzężenia adaptacyjne (tryb wsadowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Tak, począwszy od programu SQL Server 2017 (14.x) z poziomem zgodności bazy danych 140 | Sprzężenia adaptacyjne dynamicznie wybierają typ sprzężenia w czasie wykonywania na podstawie rzeczywistych wierszy wejściowych. |
| Przybliżone zliczanie różnych | Yes | Tak, począwszy od programu SQL Server 2019 (15.x) | Zapewnij przybliżone COUNT DISTINCT w scenariuszach big data, o wysokiej wydajności i przy niskim zużyciu pamięci. |
| Przybliżony percentyl | Tak, począwszy od poziomu zgodności bazy danych 110 | Tak, począwszy od programu SQL Server 2022 (16.x) z poziomem zgodności 110 | Szybkie obliczanie percentyli dla dużego zestawu danych z akceptowalnymi granicami błędów opartymi na klasyfikacji, aby pomóc w podejmowaniu szybkich decyzji przy użyciu przybliżonych funkcji agregacji percentylu. |
| Tryb wsadowy w Rowstore | Tak, począwszy od poziomu zgodności bazy danych 150 | Tak, począwszy od programu SQL Server 2019 (15.x) z poziomem zgodności 150 | Zapewnij tryb wsadowy dla obciążeń relacyjnych usługi DW powiązanych z procesorem CPU bez konieczności stosowania indeksów magazynu kolumn. |
| szacowania kardynalności (CE) opinii | Tak, począwszy od poziomu zgodności bazy danych 160 | Tak, począwszy od programu SQL Server 2022 (16.x) z poziomem zgodności 160 | Automatycznie dostosowuje szacunki kardynalności dla powtarzających się zapytań, aby zoptymalizować obciążenia, w których nieefektywne założenia CE powodują niską wydajność zapytań. Opinie CE identyfikują i wykorzystują założenie modelu, które lepiej pasuje do danej dystrybucji zapytań i danych w celu poprawy jakości planu wykonywania zapytań. |
| stopień równoległości (DOP) opinii | Tak, począwszy od poziomu zgodności bazy danych 160 | Tak, począwszy od poziomu zgodności bazy danych 160 | Automatycznie dostosowuje stopień równoległości dla powtarzających się zapytań, aby zoptymalizować obciążenia, w których nieefektywna równoległość może wpływać na wydajność. Wymaga włączenia magazynu zapytań. |
| Przeplatane wykonywanie | Tak, począwszy od poziomu zgodności bazy danych 140 | Tak, począwszy od programu SQL Server 2017 (14.x) z poziomem zgodności bazy danych 140 | Używa rzeczywistej kardynalności funkcji tabeli z wieloma instrukcjami napotkanych podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
| Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Tak, począwszy od programu SQL Server 2017 (14.x) z poziomem zgodności bazy danych 140 | Jeśli zapytanie w trybie wsadowym zawiera operacje, które przelewają się na dysk, należy dodać większą ilość pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Informacja zwrotna o przydziale pamięci (tryb wiersza) | Tak, począwszy od poziomu zgodności bazy danych 150 | Tak, począwszy od programu SQL Server 2019 (15.x) z poziomem zgodności bazy danych 150 | Jeśli zapytanie w trybie wiersza zawiera operacje, które rozlają się na dysk, dodaj więcej pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Informacja zwrotna dotycząca przydziału pamięci (Procentyl) | Tak, włączone we wszystkich bazach danych | Tak, począwszy od programu SQL Server 2022 (16.x)) z poziomem zgodności bazy danych 140 | Rozwiązuje istniejące ograniczenia dotyczące przekazywania opinii dotyczących przyznawania pamięci w sposób nieinwazyjny, włączając wcześniejsze wykonywanie zapytań w celu uściślinia opinii. |
| Trwałość przekazywania opinii do pamięci | Tak, włączone we wszystkich bazach danych | Tak, począwszy od programu SQL Server 2022 (16.x)) z poziomem zgodności bazy danych 140 | Zapewnia nową funkcjonalność do zachowywania informacji zwrotnych dotyczących przyznawania pamięci. Aby baza danych działała w trybie READ_WRITE, wymagane jest włączenie magazynu zapytań. |
| Trwałość informacji zwrotnej CE | Tak, począwszy od poziomu zgodności bazy danych 160 | Tak, począwszy od programu SQL Server 2022 (16.x)) z poziomem zgodności bazy danych 160 | Aby baza danych działała w trybie READ_WRITE, wymagane jest włączenie magazynu zapytań. |
| Zoptymalizowany plan wymuszający z użyciem magazynu zapytań | Yes | Tak, począwszy od programu SQL Server 2022 (16.x)). | Zmniejsza obciążenie kompilacji w przypadku powtarzania wymuszonych zapytań. Aby uzyskać więcej informacji, zobacz Zoptymalizowany plan wymuszania z użyciem magazynu zapytań. |
| Scalar UDF Inlining | Tak, począwszy od poziomu zgodności bazy danych 150 | Tak, począwszy od programu SQL Server 2019 (15.x) z poziomem zgodności bazy danych 150 | Skalarne funkcje użytkownika są przekształcane w równoważne wyrażenia relacyjne, które są wstawiane w zapytanie wywołujące, często powodując znaczne poprawy wydajności. |
| Optymalizacja planów wrażliwych na parametry | Tak, począwszy od poziomu zgodności bazy danych 160 | Tak, począwszy od programu SQL Server 2022 (16.x) z poziomem zgodności bazy danych 160 | Optymalizacja planu zależnego od parametru dotyczy scenariusza, w którym pojedynczy buforowany plan zapytania sparametryzowanego nie jest optymalny dla wszystkich możliwych wartości parametrów przychodzących, na przykład nierównomiernych rozkładów danych. |
| Kompilacja odroczona zmiennej tabeli | Tak, począwszy od poziomu zgodności bazy danych 150 | Tak, począwszy od programu SQL Server 2019 (15.x) z poziomem zgodności bazy danych 150 | Używa rzeczywistej kardynalności zmiennej tabeli napotkanej podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
Funkcje protokołu IQP dla usługi Azure SQL Managed Instance
| Funkcja IQP | Obsługiwane w usłudze Azure SQL Managed Instance | Description |
|---|---|---|
| Sprzężenia adaptacyjne (tryb wsadowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Sprzężenia adaptacyjne dynamicznie wybierają typ sprzężenia w czasie wykonywania na podstawie rzeczywistych wierszy wejściowych. |
| Przybliżone zliczanie różnych | Yes | Zapewnij przybliżone COUNT DISTINCT w scenariuszach big data, o wysokiej wydajności i przy niskim zużyciu pamięci. |
| Przybliżony percentyl | Tak, począwszy od poziomu zgodności bazy danych 110 | Szybkie obliczanie percentyli dla dużego zestawu danych z akceptowalnymi granicami błędów opartymi na klasyfikacji, aby pomóc w podejmowaniu szybkich decyzji przy użyciu przybliżonych funkcji agregacji percentylu. |
| Tryb wsadowy w Rowstore | Tak, począwszy od poziomu zgodności bazy danych 150 | Zapewnij tryb wsadowy dla obciążeń relacyjnych usługi DW powiązanych z procesorem CPU bez konieczności stosowania indeksów magazynu kolumn. |
| szacowania kardynalności (CE) opinii | Tak, począwszy od poziomu zgodności bazy danych 160 | Automatycznie dostosowuje szacunki kardynalności dla powtarzających się zapytań, aby zoptymalizować obciążenia, w których nieefektywne założenia CE powodują niską wydajność zapytań. Opinie CE identyfikują i wykorzystują założenie modelu, które lepiej pasuje do danej dystrybucji zapytań i danych w celu poprawy jakości planu wykonywania zapytań. |
| stopień równoległości (DOP) opinii | Tak, począwszy od poziomu zgodności bazy danych 160 w usłudze Azure SQL Managed Instance z SQL Server 2025 lub zawsze aktualnąpolityką aktualizacji. Nie, dla zasad aktualizacji programu SQL Server 2022. | Automatycznie dostosowuje stopień równoległości dla powtarzających się zapytań, aby zoptymalizować obciążenia, w których nieefektywna równoległość może wpływać na wydajność. Wymaga włączenia magazynu zapytań. |
| Przeplatane wykonywanie | Tak, począwszy od poziomu zgodności bazy danych 140 | Używa rzeczywistej kardynalności funkcji tabeli z wieloma instrukcjami napotkanych podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
| Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Jeśli zapytanie w trybie wsadowym zawiera operacje, które przelewają się na dysk, należy dodać większą ilość pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Informacja zwrotna o przydziale pamięci (tryb wiersza) | Tak, począwszy od poziomu zgodności bazy danych 150 | Jeśli zapytanie w trybie wiersza zawiera operacje, które rozlają się na dysk, dodaj więcej pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Informacja zwrotna dotycząca przydziału pamięci (Procentyl) | Tak, począwszy od poziomu zgodności bazy danych 160 | Rozwiązuje istniejące ograniczenia dotyczące przekazywania opinii dotyczących przyznawania pamięci w sposób nieinwazyjny, włączając wcześniejsze wykonywanie zapytań w celu uściślinia opinii. |
| Trwałość opinii na temat przyznawania pamięci, CE i DOP | Tak, począwszy od poziomu zgodności bazy danych 160 | Zapewnia nową funkcjonalność do zachowywania informacji zwrotnych dotyczących przyznawania pamięci. Informacja zwrotna CE i DOP jest zawsze zapisywana. Aby baza danych działała w trybie READ_WRITE, wymagane jest włączenie magazynu zapytań. |
| Zoptymalizowany plan wymuszający z użyciem magazynu zapytań | Nie | Zmniejsza obciążenie kompilacji w przypadku powtarzania wymuszonych zapytań. Aby uzyskać więcej informacji, zobacz Zoptymalizowany plan wymuszania z użyciem magazynu zapytań. |
| Scalar UDF Inlining | Tak, począwszy od poziomu zgodności bazy danych 150 | Skalarne funkcje użytkownika są przekształcane w równoważne wyrażenia relacyjne, które są wstawiane w zapytanie wywołujące, często powodując znaczne poprawy wydajności. |
| Optymalizacja planów wrażliwych na parametry | Tak, począwszy od poziomu zgodności bazy danych 160 | Optymalizacja planu wrażliwości parametrów dotyczy scenariusza, w którym pojedynczy plan w pamięci podręcznej dla zapytania sparametryzowanego nie jest optymalny dla wszystkich możliwych wartości przychodzących parametrów, na przykład nierównomiernych dystrybucji danych. |
| Kompilacja odroczona zmiennej tabeli | Tak, począwszy od poziomu zgodności bazy danych 150 | Używa rzeczywistej kardynalności zmiennej tabeli napotkanej podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
Funkcje protokołu IQP dla programu SQL Server 2019
| Funkcja IQP | Obsługiwane w programie SQL Server 2019 (15.x) | Description |
|---|---|---|
| Sprzężenia adaptacyjne (tryb wsadowy) | Tak, począwszy od programu SQL Server 2017 (14.x) z poziomem zgodności bazy danych 140 | Sprzężenia adaptacyjne dynamicznie wybierają typ sprzężenia w czasie wykonywania na podstawie rzeczywistych wierszy wejściowych. |
| Przybliżone zliczanie różnych | Yes | Zapewnij przybliżone COUNT DISTINCT w scenariuszach big data, o wysokiej wydajności i przy niskim zużyciu pamięci. |
| Tryb wsadowy w Rowstore | Tak, począwszy od poziomu zgodności bazy danych 150 | Zapewnij tryb wsadowy dla obciążeń relacyjnych usługi DW powiązanych z procesorem CPU bez konieczności stosowania indeksów magazynu kolumn. |
| Przeplatane wykonywanie | Tak, począwszy od poziomu zgodności bazy danych 140 | Użyj rzeczywistej kardynalności funkcji tabeli z wieloma instrukcjami napotkanych podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
| Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Jeśli zapytanie w trybie wsadowym zawiera operacje, które przelewają się na dysk, należy dodać większą ilość pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Informacja zwrotna o przydziale pamięci (tryb wiersza) | Tak, począwszy od poziomu zgodności bazy danych 150 | Jeśli zapytanie w trybie wiersza zawiera operacje, które rozlają się na dysk, dodaj więcej pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
| Scalar UDF Inlining | Tak, począwszy od poziomu zgodności bazy danych 150 | Skalarne funkcje użytkownika są przekształcane w równoważne wyrażenia relacyjne, które są wstawiane w zapytanie wywołujące, często powodując znaczne poprawy wydajności. |
| Kompilacja odroczona zmiennej tabeli | Tak, począwszy od poziomu zgodności bazy danych 150 | Użyj rzeczywistej kardynalności zmiennej tabeli napotkanej podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
Funkcje protokołu IQP dla programu SQL Server 2017
| Funkcja IQP | Obsługiwane w programie SQL Server 2017 (14.x) | Description |
|---|---|---|
| Sprzężenia adaptacyjne (tryb wsadowy) | Tak, począwszy od programu SQL Server 2017 (14.x) z poziomem zgodności bazy danych 140 | Sprzężenia adaptacyjne dynamicznie wybierają typ sprzężenia w czasie wykonywania na podstawie rzeczywistych wierszy wejściowych. |
| Przybliżone zliczanie różnych | Yes | Zapewnij przybliżone COUNT DISTINCT w scenariuszach big data, o wysokiej wydajności i przy niskim zużyciu pamięci. |
| Przeplatane wykonywanie | Tak, począwszy od poziomu zgodności bazy danych 140 | Użyj rzeczywistej kardynalności funkcji tabeli z wieloma instrukcjami napotkanych podczas pierwszej kompilacji zamiast stałego odgadnięcia. |
| Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | Tak, począwszy od poziomu zgodności bazy danych 140 | Jeśli zapytanie w trybie wsadowym zawiera operacje, które przelewają się na dysk, należy dodać większą ilość pamięci do kolejnych wykonań. Jeśli zapytanie marnuje > 50% przydzielonej pamięci, zmniejsz rozmiar przydziału pamięci dla kolejnych wykonań. |
Wymaganie dotyczące Query Store
Kilka z zestawów inteligentnych funkcji przetwarzania zapytań wymaga włączenia magazynu zapytań w celu skorzystania z bazy danych użytkownika. Aby włączyć magazyn zapytań, zobacz Włączanie magazynu zapytań.
| Funkcja IQP | Wymaga włączenia magazynu zapytań i READ_WRITE |
|---|---|
| Sprzężenia adaptacyjne (tryb wsadowy) | No |
| Przybliżone zliczanie różnych | No |
| Przybliżony percentyl | No |
| Tryb wsadowy w Rowstore | No |
| szacowania kardynalności (CE) opinii | Yes |
| stopień równoległości (DOP) opinii | Yes |
| Przeplatane wykonywanie | No |
| Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | No |
| Informacja zwrotna o przydziale pamięci (tryb wiersza) | No |
| Informacja zwrotna dotycząca przydzielania pamięci (tryb percentylu i trwałości) | Yes |
| Zoptymalizowany plan wymuszający z użyciem magazynu zapytań | Yes |
| Scalar UDF Inlining | No |
| Optymalizacja planów wrażliwych na parametry | Nie, ale zalecane |
| Kompilacja odroczona zmiennej tabeli | No |
Treści powiązane
- Szczegółowe funkcje inteligentnego przetwarzania zapytań
- Sprzężenia (SQL Server)
- Tryby wykonywania
- przewodnik po architekturze przetwarzania zapytań
- Odwołanie do operatora logicznego i fizycznego planu wykonania
- Co nowego w programie SQL Server 2017
- Co nowego w programie SQL Server 2019
- Co nowego w programie SQL Server 2022
-
Memory udziela opinii - Przedstawianie Inteligentnego Przetwarzania Zapytan
- Stałe składanie i obliczanie wyrażeń
- Pokazy inteligentnego przetwarzania zapytań w usłudze GitHub
- Performance Center dla aparatu bazy danych SQL Server i usługi Azure SQL Database
- Monitorowanie wydajności za pomocą magazynu zapytań
- Najlepsze rozwiązania dotyczące monitorowania obciążeń za pomocą magazynu zapytań