Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL Database w 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) w usłudze GitHub, odwiedź stronę https://aka.ms/IQPDemos.
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 = 160;
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 protokołu IQP dla usług Azure SQL Database i SQL Server 2025 (wersja zapoznawcza)
Funkcja IQP | Obsługiwane w usłudze Azure SQL Database | Obsługiwane w programie SQL Server 2025 (wersja zapoznawcza 17.x) | Opis |
---|---|---|---|
Zoptymalizowana ochrona Halloween | Nie. | Tak, począwszy od programu SQL Server 2025 (17.x) Preview z poziomem zgodności 170 | Zmniejsza tempdb zużycie miejsca i zwiększa wydajność zapytań, nie używając puli na potrzeby ochrony Halloween. |
Opcjonalna optymalizacja planu parametrów (OPPO) | Nie. | Tak, począwszy od programu SQL Server 2025 (17.x) Preview 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 trakcie działania na podstawie tego, czy parametr jest NULL OR NOT NULL , co poprawia wydajność zapytań, które w przeciwnym razie mogłyby mieć domyślnie nieoptymalną wydajność dla takich wzorców zapytań. |
Informacja zwrotna dotycząca szacowania kardynalności (CE) dla wyrażeń | Nie. | Tak, począwszy od programu SQL Server 2025 (17.x) Preview 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 | Tak | Tak, począwszy od wersji zapoznawczej programu SQL Server 2025 (17.x) | Skutecznie zmniejszać wpływ problemów z kompilacją. Burze kompilacji odnoszą się do sytuacji, w której wiele zapytań jest kompilowanych jednocześnie, 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) | Opis |
---|---|---|---|
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 | Tak | 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, w wersji zapoznawczej, 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 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ń. |
Trwałość feedbacku DOP | Tak, w wersji zapoznawczej, 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ń | Tak | 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 | Opis |
---|---|---|
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 | Tak | 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 | Nie | 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) | Opis |
---|---|---|
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 | Tak | 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) | Opis |
---|---|---|
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 | Tak | 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) | Nie. |
Przybliżone zliczanie różnych | Nie. |
Przybliżony percentyl | Nie. |
Tryb wsadowy w Rowstore | Nie. |
szacowania kardynalności (CE) opinii | Tak |
stopień równoległości (DOP) opinii | Tak |
Przeplatane wykonywanie | Nie. |
Informacja zwrotna o przydziale pamięci (Tryb pakietowy) | Nie. |
Informacja zwrotna o przydziale pamięci (tryb wiersza) | Nie. |
Informacja zwrotna dotycząca przydzielania pamięci (tryb percentylu i trwałości) | Tak |
Zoptymalizowany plan wymuszający z użyciem magazynu zapytań | Tak |
Scalar UDF Inlining | Nie. |
Optymalizacja planów wrażliwych na parametry | Nie, ale zalecane |
Kompilacja odroczona zmiennej tabeli | Nie. |
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ń