Stairway to Columnstore Indexes Level 10: Optimizing Queries For Batch Mode (Part 1)
In this level, Hugo Kornelis looks at how to rewrite your queries to best take advantage of batch mode.
In this level, Hugo Kornelis looks at how to rewrite your queries to best take advantage of batch mode.
Hugo Kornelis continues his exploration of the types of queries that can end up running in row mode when accessing columnstore indexes. He demonstrates how careful rewriting can often yield a logically equivalent query that runs in batch mode instead, and therefore gains the best possible performance benefit.
Earlier levels have shown how Columnstore Indexes work effectively with static data. In most tables however, data is hardly ever static. We are constantly inserting new rows, and updating or deleting existing rows. If you think about what this means for a columnstore index, you will realize that this comes with some unique challenges.
In Level 7, we looked at optimizing rowgroup elimination for a nonclustered columnstore index. For a clustered columnstore index, the same technique can be used but the steps and syntax change a bit. This will be covered later – but first, let’s take a look at another significant difference between nonclustered and clustered columnstore indexes, […]
In this level, Hugo explains what batch mode execution is, how it differs from row mode execution, and what its limitations are.
A great deal of the confusion that occurs when a database application is developed comes from a poor understanding of the basics of data. Here, Joe Celko gives a broad coverage of the difficulties you're likely to meet when handling data in databases.
A confusion about the nature of numbers can lead to a number of problems in database applications. Joe Celko gives a simple guide to the subject
Character-handling in SQL is not particularly straightforward, and confusion about collation and character encoding is a common cause of problems with searching, joining, and sorting.
Joe Celko discusses Nominal, Categorical, Absolute, Ordinal and Rank scales. These are the weakest scales we can use, starting with the weakest.
Joe Celko introduces more powerful scales such as Interval, Log interval and ratio scales; before moving on to conversions, punctuation and units. Finally he gives guidelines as to how best to use scales in a database.
By Ed Elliott
SQL Server Management Studio (SSMS) has recently added support for Github Copilot. This is...
By Steve Jones
If it fails where you thought it would fail that is not a failure....
Quite a long title for a short blog post ??While deploying a DACPAC (from...
Comments posted to this topic are about the item Don't Create Workslop
Comments posted to this topic are about the item What is the original database...
Comments posted to this topic are about the item The DBScan algorithm tutorial
What is returned when this code is run?
SELECT ORIGINAL_DB_NAME()See possible answers