Tag Archive: adaptive query processing

Adaptive Query Processing – Memory Grant Feedback

SQLServerMemoryGrantFeedback_00
Follow me

Adrian Chodkowski

SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Kontynuujemy naszą małą serię związaną z Adaptive Query Processing czyli elastycznym dostosowaniu zapytania w trakcie jego wykonania. Do tej pory udało mi się opisać dwa mechanizmy wchodzące w skład AQP i były to Interleaved Execution oraz Adaptive Join, dziś opowiemy sobie o kolejnym, który został wprowadzony w SQL Server 2017 i ulepszony w wersji SQL Server 2019 o dosyć ciekawie brzmiącej nazwie tj. Memory Grant Feedback, serdecznie zapraszam do lektury. Na wstępie powiedzmy sobie kilka słów o tym czym jest  Memory Grant i od czego zależy. Jak sama nazwa wskazuje jest to nic innego jak przydział pamięci nadawany przez SQL…
Read more

Adaptive Query Processing – Adaptive Join

SQLServerAdaptiveJoin_00
Follow me

Adrian Chodkowski

SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Jakiś czas temu pisałem już o tym, że SQL Server 2017 wprowadził (a raczej zapoczątkował) sporo zmian jeśli chodzi o wykonywanie zapytań z wydajnościowego punktu widzenia. Chodzi mianowicie o rodzinę mechanizmów nazwanych Adaptive Query Processing. Pod tą nazwą kryją się możliwości dostosowania planu zapytania w zależności od okoliczności podczas wykonywania zapytania. Technologia ta z produkcyjnego punktu widzenia obecnie składa się z trzech elementów tj. Interleaved Execution (o którym pisałem już tutaj), Memory Grant Feedback oraz Adaptive Join.Ciekawe w tym wszystkim jest to, że dla developerów jest to właściwie transparentne i działa bez żadnych zmian w kodzie. Ponadto wraz z SQL…
Read more

Adaptive Query Processing – Interleaved execution

Follow me

Adrian Chodkowski

SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Wraz z SQL Server 2017 wprowadzono szereg ulepszeń w przetwarzaniu zapytań. Jedną z najbardziej spektakularnych jest bez wątpienia tzw. Adaptive Query Processing czyli tłumacząc na nasz język możliwość dostosowywania przez optymalizator sposobu wykonania zapytań w trakcie przetwarzania. Adepci optymalizacji zapytań powinni w tej chwili się zastanowić i zadać pytanie czy to w ogóle możliwe? Przecież to całkowicie zmienia schemat działania optymalizatora! Odpowiedź jest jednoznaczna i brzmi: tak można – od SQL Server 2017. Już na samym wstępie chciałbym zaznaczyć, że nie oznacza to, iż teraz optymalizator będzie zmieniał plan wykonania po każdym operatorze, a jedynie dostosowywał odpowiednie elementy planu w…
Read more