August 2019
Beginner to intermediate
696 pages
15h 45m
English
SQL Server starts creating the columnar storage by first splitting the data into rowgroups. The maximum number of rows per rowgroup is 1,048,576. The idea here is that the time-consuming row rearranging is done on smaller datasets, just like how the hash join algorithm splits the data into buckets and then performs smaller joins on portions of the data. SQL Server performs row rearranging in each of the groups separately. Then SQL Server encodes and compresses each column. Each column's data in each rowgroup is called a segment. SQL Server stores segments in blobs in database files. Therefore, SQL Server leverages the existing storage for columnar storage.
The following figure shows the process:
Read now
Unlock full access