Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sunil Agarwal | Principal Program Manager

Similar presentations


Presentation on theme: "Sunil Agarwal | Principal Program Manager"— Presentation transcript:

1 Sunil Agarwal | Principal Program Manager
02 | SQL Server 2014: Column Store Index Sunil Agarwal | Principal Program Manager

2 Clustered Columnstore Index: Updatable
1/17/2019 Clustered Columnstore Index: Updatable Table consists of column store and row store “Tuple mover” converts data into columnar format once delta store is full (~1M of rows) BULK INSERT if batch < 100k, inserts go into delta store, otherwise columnstore REORGANIZE statement converts delta store into columnar storage. DML (update, delete, insert) operations leverage delta store INSERT Values Always lands into delta store DELETE (columnar storage) Logical operation Data physically remove after REBUILD operation is performed. UPDATE DELETE followed by INSERT. SELECT Unifies data from Column and Row stores - internal UNION operation. C1 C2 C3 C4 C5 C6 Delta (row) store C1 C2 C3 C4 C5 C6 Column Store tuple mover © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

3 Clustered Columnstore Index: Tuple Mover
Tech Ready 15 1/17/2019 Clustered Columnstore Index: Tuple Mover One Tuple Mover per Instance Runs every few minutes Compresses one rowgroup at a time Multiple Delta Rowgroups: waits 15 seconds to compress the next rowgroup Takes a short term SCH-M lock when switching By design to reduce excessive resource consumption by tuple mover Reorganize Explicit control to the user to move delta rowgroup(s) to columnar storage © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

4 SQL Sever 2014: Clustered Columnstore Index (CCI)
Why is clustered index important? Saves space Simplifies management – no secondary indexes to maintain PREFERRED storage engine for DW scenarios We encourage users to either move existing tables to CCI, or start using CCI for new tables Additional data types are supported High precision decimal, datatypeoffset, binary, varbinary, uniqueidentifier, etc) Unsupported types: spatial, XML, max types New Batch Mode Operators DDL supported Evolve your schema design as needed ** Space Used = Table space + Index space 91% savings

5 Clustered Columnstore Index: Improved Batchmode
Process multiple rows together for Batch hash join spilling implemented. Mixed mode (row and batch) query execution presence of row operators does not prevent operators to be executed in the batch mode Additional batch operators: joins (inner, outer) partial/global aggregates w/ and w/o group by union all operator

6 Columnstore Performance: Generic DW

7 Columnstore Performance: TPC-H

8


Download ppt "Sunil Agarwal | Principal Program Manager"

Similar presentations


Ads by Google