Speaker

Milos Radivojevic

Milos Radivojevic

Head of MSSQL Database Engineering at Entain

Vienna, Austria

Actions

Milos Radivojevic is database consultant located in Vienna, Austria. He is Head of MSSQL Database Engineering at Entain. He is very active in the SQL Server community: he is co-founder of the SQL Pass Austria and speaks regularly at local and international database conferences. He is also co-author of three SQL Server books: Mastering SQL Server 2017, SQL Server 2017 Developer’s Guide and SQL Server 2016 Developer’s Guide.

Awards

  • Most Active Speaker 2023

Area of Expertise

  • Information & Communications Technology

Topics

  • performance tuning
  • Database Design
  • Microsoft SQL Server

Intelligent Query Processing in SQL Server: Pros and Cons

In this session, I will elaborate on the pros and cons of each feature within the Intelligent Query Processing package. I will briefly present cases where a feature can be beneficial for your workload, but you can also see potential issues you can have with it and how to mitigate them, including my experience from the production system on critical and less critical servers (for IQP features in SQL Server 2017 and 2019, and at that point most probably in SQL Server 2022 too).

Depending on your workload, the way your team develops SQL projects, or even your knowledge, an IQP feature can significantly improve the performance of one of your applications, but the very same feature can cause performance degradation in another. When the Compatibility Level for a database is set to 150 or 160, all available IQP features are enabled by default. Therefore, you have to decide whether a particular feature should be enabled or disabled for each database. You might have databases where it is better to disable one or even more IQP features. After this session, you will be better prepared for the challenges associated with this decision.

It would be great if the attendees would actively participate in the discussion and share their own experience, excitement, or concerns.

Intelligent Query Processing in SQL Server 2022

This session will introduce you to the most significant enhancements and improvements in SQL Server 2022, and, as the title suggests, it will focus on features from the Intelligent Query Processing package.

We'll look at new features from that package (CE & DOP Feedback, PSP Optimization and Optimized Plan Forcing), improvements to the existing ones (MGF Percentile & Persistence), but we'll also look at IQP best practices and discuss whether we still need to tune our queries or in the very near future this task will be taken over by SQL Server itself, enhanced with various AI tools and services.

The session is intended as an open discussion, exchange of opinions, skepticism, and expectations, and it would be nice if attendees take an active part in it.

Intelligent Query Processing in SQL Server 2019

SQL Server 2017 started with query processing improvements called Adaptive Query Processing. In SQL Server 2019 there are additional improvements and all of them are packed in a feature with the most promising name - Intelligent Query Processing.

The intention of these improvements is to fix poor performing queries due to wrong cardinality estimations and other sub-optimal plan decisions, and hereby enhance query performance with almost no code changes.

This session will cover briefly all these features: Batch and Row Mode Memory Grant Feedback, Batch Mode Adaptive Join and Interleaved Execution, Table Variable Deferred Compilation, Approximate Query Processing, Batch Mode Rowstore and Inlining of scalar UDFs.

Better cardinality estimations should bring better plans, so one of the questions that inevitably arise is do you still need to tune your queries, does an intelligent query processor really needs my help, does it also solve parameter sniffing issues and so on.

The session will address such questions, and also suggest how much improvements you should expect in real workloads with this very promising set of features.

Improving Query Performance without Changing Code

As the session title suggests, we will talk about techniques, tricks, objects, tools, settings, and other magic that allow us to improve the performance of Transact-SQL queries and commands, without changing the code.

Sometimes you have no access to the code cause you bought a 3rd party tool with no source control, sometimes Transact-SQL code is in the application as ad-hoc, which means that you have to look for it somewhere in the code repository, and provided you have access there, you are still not sure whether you are pulling the right version so that by changing the code, you might accidentally make additional changes and break other functionalities.

In incident situations, even if you have access to the code (in sensitive applications or apps and services in companies and institutions that are sensitive to changes) you are often forced to wait for approvals for the change, and most often from people who have no clue about what you plan to do.

In the mentioned situations, the examples covered in this session will be of great help to the people in charge of performance tuning.

Dealing with Very Large Tables in SQL Server

Inaccuracies, discrepancies, and small errors in queries using small and moderate tables can present serious challenges and problems when it comes to large tables.

What challenges do you face when dealing with tables that are over a terabyte in size? How do you index them? What do their statistics look like? How do you update them, and how do you fight against index fragmentation? How does all of this affect the estimation of the amount of data and how to tune queries involving very large tables?

If you are interested in answers to all these questions from someone who has experience managing many large tables in a production environment, come to this session.

Demystifying Query Store Plan Forcing

In this session, you will see Query Store in action and learn from many real-world examples, the author experienced in the last three years in the complex SQL Server production environment with heavy workloads.

Plan forcing is a very powerful feature, but a bit controversial. This session will demystify it; you’ll see what Query Store exactly does when an execution plan is forced when it is respected, when and why isn’t, and the most important – when you have to force a plan in the production system, and when forcing can bring additional troubles.

We’ll also cover in detail is automatic tuning. You will understand benefits and potential issues you can have with this feature and how to leverage it with no or minimal risk.

Database Development in a 24/7 Environment

There are countless articles, blog posts, messages, and even conference sessions glorifying new features, services, and versions, urging you to embrace innovations and implement them in your production environment to stay current with evolving technologies.

However, in a world where downtime is not an option, developing and maintaining databases in a 24/7 environment presents a significant challenge. How can you ensure seamless updates without compromising performance? What techniques are essential for indexing and managing statistics in constantly active databases? Who writes the code that ends up on production servers, and how can you be sure their expertise is sufficient? How should you prepare for an upgrade to a new version, decide which new features to enable, and determine which databases need them and which might suffer from them? What should be done before the upgrade and what afterward? Who should be involved?

This session will delve into these questions and more, offering insights and strategies from real-world experience in developing and managing MS SQL Server databases that never sleep.

Database Design - najčešće greške programera

Dejtabejz dizajn je veoma bitna faza u razvoju softvera, kojoj se u poslednje vreme koje je obeleženo sintagmama Agile i Continuous Delivery posvećuje još manje pažnje nego ranije. Podsetićemo se zašto je db dizajn bitan i sa kojim posledicama možemo da računamo ako ga potcenimo. Inicijalne db dizajn greške najčešće ostaju u sistemu zauvek, a mnoge od njih nije teško izbeći ako se samo malo duže razmišlja prilikom dizajniranja tabela.

U ovoj sesiji predstavićemo tipične greške koje prave programeri prilikom dizajniranja baza i kreiranja tabela i kako te naizgled male greške kasnije dolaze na naplatu u osetljivijim i skupljim fazama projekta.

Biće reči i o trendovima koji sve učestalije i intenzivnije ističu važnost drugih kvaliteta za uspeh projekta pritom zanemarujući znanje i kako će se to obijati o glave u teškim i nesigurnim godinama koje dolaze.

Ask the Expert

Ask anything our top experts!

5 common database design mistakes

In this short session, I will address five common mistakes developers make in database and table design and examine their impact on business logic decisions and overall system performance.

Parameter Sniffing in SQL Server 2022

In this session, we'll quickly review Parameter Sniffing issues in the previous SQL Server versions and then focus on changes and enhancements in SQL Server 2022 Public CTP edition.
We'll see if Microsoft finally solved this problem after all these years, can we still have PS issues even in this version and how much we have to pay for these enhancements.

SQL Konferenz 2023 Sessionize Event

September 2023 Hanau am Main, Germany

Data Saturday Rheinland 2023 Sessionize Event

June 2023 Sankt Augustin, Germany

Data Saturday Croatia 2023 Sessionize Event

June 2023 Zagreb, Croatia

SQL Saturday New York City 2023 Sessionize Event

May 2023 New York City, New York, United States

Init 2022 Dev Conference Sessionize Event

September 2022 Banja Luka, Bosnia and Herzegovina

Sql Friday Season 5 (August - December 2022) User group Sessionize Event

August 2022

DataSaturday Croatia 2022 Sessionize Event

June 2022 Zagreb, Croatia

SQLBits 2022 Sessionize Event

March 2022 London, United Kingdom

Sql Friday Season 4 (Feb - Jun 2022) Sessionize Event

February 2022

Data Saturday Portugal 2021 Sessionize Event

December 2021

Data Saturday Slovenia 2021 Sessionize Event

December 2021

#DataWeekender v4.2 Sessionize Event

November 2021

Data Saturday Sofia Sessionize Event

October 2021 Sofia, Bulgaria

DataSaturday Croatia 2021 Sessionize Event

September 2021 Zagreb, Croatia

DataMinutes #1 Sessionize Event

June 2021

Humanitarian conference for earthquake victims in Croatia Sessionize Event

January 2021

9. MSCOMMUNITY BiH Konferencija Sessionize Event

October 2020

#DataWeekender #TheSQL Sessionize Event

October 2020

Data Community Weekender Europe Sessionize Event

May 2020

Intelligent Cloud Conference 2019 Sessionize Event

April 2019 Copenhagen, Denmark

Milos Radivojevic

Head of MSSQL Database Engineering at Entain

Vienna, Austria

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top