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
Baza danych SQL w usłudze Microsoft Fabric (wersja zapoznawcza)
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. For example:
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 protokołu IQP dla usług Azure SQL Database i SQL Server 2025 (wersja zapoznawcza)
IQP Feature | Obsługiwane w usłudze Azure SQL Database | Obsługiwane w programie SQL Server 2025 (wersja zapoznawcza 17.x) | Description |
---|---|---|---|
Zoptymalizowana ochrona Halloween | No | 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) | No | 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ń | No | 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 | Yes | 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
IQP Feature | 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. |
Approximate Percentile | 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ń. |
Interleaved Execution | 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
IQP Feature | 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. |
Approximate Percentile | 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 zasadach aktualizacji Always-up-to-date. 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ń. |
Interleaved Execution | 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
IQP feature | 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. |
Interleaved Execution | 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
IQP feature | 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. |
Interleaved Execution | 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ń.
IQP feature | Wymaga włączenia magazynu zapytań i READ_WRITE |
---|---|
Sprzężenia adaptacyjne (tryb wsadowy) | No |
Przybliżone zliczanie różnych | No |
Approximate Percentile | No |
Tryb wsadowy w Rowstore | No |
szacowania kardynalności (CE) opinii | Yes |
stopień równoległości (DOP) opinii | Yes |
Interleaved Execution | 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 |
Related content
- Szczegółowe funkcje inteligentnego przetwarzania zapytań
- Sprzężenia (SQL Server)
- Execution modes
- 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ń