A Lap Around Columstore Martin Catherall SQL Saturday #464, Melbourne 20 th February 2016.

Slides:



Advertisements
Similar presentations
Dos and don’ts of Columnstore indexes The basis of xVelocity in-memory technology What’s it all about The compression methods (RLE / Dictionary encoding)
Advertisements

IIS Server ETL IIS Server This is OPERATIONAL ANALYTICS.
PowerBuilder Online Courses - by Prasad Bodepudi
SQL Server Indexes Indexes. Overview Indexes are used to help speed search results in a database. A careful use of indexes can greatly improve search.
David Dye.  Introduction  Introduction to PowerPivot  Working With PowerPivot.
SQL Server 2005 Engine Optimistic Concurrency Tony Rogerson, SQL Server MVP Independent Consultant 26 th.
INTRODUCING SQL SERVER 2012 COLUMNSTORE INDEXES Exploring and Managing SQL Server 2012 Database Engine Improvements.
Sofia Event Center November 2013 Margarita Naumova SQL Master Academy.
Table Structures and Indexing. The concept of indexing If you were asked to search for the name “Adam Wilbert” in a phonebook, you would go directly to.
5 Trends in the Data Warehousing Space Source: TDWI Report – Next Generation DW.
October 15-18, 2013 Charlotte, NC Accelerating Database Performance Using Compression Joseph D’Antoni, Solutions Architect Anexinet.
Boosting DWH-Performance with SQL Server 2016 ColumnStore Index.
--A Gem of SQL Server 2012, particularly for Data Warehousing-- Present By Steven Wang.
 CONACT UC:  Magnific training   
October 15-18, 2013 Charlotte, NC SQL Server Index Internals Tim Chapman Premier Field Engineer.
Execution Plans Detail From Zero to Hero İsmail Adar.
SQL 2016 – WHAT’S NEW? David Cobb Daveslog.com.
Oracle Announced New In- Memory Database G1 Emre Eftelioglu, Fen Liu [09/27/13] 1 [1]
Doing fast! Optimizing Query performance with ColumnStore Indexes in SQL Server 2012 Margarita Naumova | SQL Master Academy.
SQL Server 2016: Real-time operational analytics
Best Practices for Columnstore Indexes Warner Chaves SQL MCM / MVP SQLTurbo.com Pythian.com.
[Automated] TDD with SQL Server and nUnit Daniel de Sousa SQL Saturday #468, Sydney 27 th February 2016.
Are You High? Can You Recover? Robert Douglas SQL Saturday #468, Sydney 27 th February 2016.
Introducing Hekaton The next step in SQL Server OLTP performance Mladen Prajdić
SQL Saturday #509 | Brisbane 2016 #509 | Brisbane 2016 Martin Catherall Moving from Profiler to Extended Events.
IIS Server ETL Key Issues  Complex Implementation  Requires two Servers (CapEx and OpEx)  Data Latency in Analytics  More businesses demand/require.
Review DirectQuery in SSAS 2016, best practices and use cases
Enable Operational Analytics (HTAP) in SQL Server 2016 and Azure SQL Database Sunil Agarwal Principal Program Manager, SQL Server Product Tiger Team
In-Memory Capabilities
Temporal Databases Microsoft SQL Server 2016
Introduction to Tabular Data Models
5/25/2018 5:29 AM BRK3081 Delivering High Performance Analytics with Columnstore Index on Traditional DW and HTAP Workloads Sunil Agarwal (Microsoft) Aaron.
Operational Analytics in SQL Server 2016 and Azure SQL Database
Prepared by : Moshira M. Ali CS490 Coordinator Arab Open University
Microsoft Ignite /11/2018 1:18 AM BRK4017
6/12/2018 2:19 PM BRK3245 DirectQuery in Analysis Services: best practices, performance, and use cases Marco Russo SQLBI © Microsoft Corporation. All rights.
Solving the Hard Problems
[Automated] TDD with SQL Server using nUnit
Columnstore Index - is it the DW "Faster" switch you are looking for?
SQL Server Integration Services
Introduction to SQL Server Management for the Non-DBA
Hustle and Bustle of SQL Pages
Four Rules For Columnstore Query Performance
The Five Ws of Columnstore Indexes
Database Administration for the Non-DBA
Blazing-Fast Performance:
Please support our sponsors
PREMIER SPONSOR GOLD SPONSORS SILVER SPONSORS BRONZE SPONSORS SUPPORTERS.
In-Memory OLTP (IMOLTP) What Can It Do For Me?
ColumnStore Index Primer
Introduction to columnstore indexes
<Enter course name here>
TechEd /20/ :49 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
20 Questions with Azure SQL Data Warehouse
11/29/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
TechEd /2/2018 7:32 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
The Five Ws of Columnstore Indexes
Realtime Analytics OLAP & OLTP in the mix
Indexing For Optimal Performance
Sunil Agarwal | Principal Program Manager
Moving from SQL Profiler to xEvents
Four Rules For Columnstore Query Performance
Clustered Columnstore Indexes (SQL Server 2014)
Fewer cursors since SQL Server 2012 Came Along
Bulk Load and Minimal Logging
Using Columnstore indexes in Azure DevOps Services. Lessons learned
Using Columnstore indexes in Azure DevOps Services. Lessons learned
SQL Server 2016 High Performance Database Offer.
Using Columnstore indexes in Azure DevOps Services. Lessons learned.
Sunil Agarwal | Principal Program Manager
Presentation transcript:

A Lap Around Columstore Martin Catherall SQL Saturday #464, Melbourne 20 th February 2016

Mobile Phones please set to “stun” during sessions Evaluations complete online to be in the draw for fantastic prizes Wifi Details EDUROAM - Login: ext-sqlsat Password: sqlsat2016 SESSIONSEVENT sessions/sessionevaluation.aspx eventeval.aspx Housekeeping

Connect with the Community Event staff, volunteers and speakers are here to help and answer questions. Scan the QR code on the speaker badges to connect and network with them. I attack SQL challenges by dropping onto them from above.

About Me  Melbourne based SQL Server Consultant with RockSolid SQL  Data Platform MVP  PASS Regional Mentor - APAC  SQL Saturday Organiser  South Island New Zealand (formerly SQLSat Christchurch)  Christchurch SQL User Group Lead 

A Lap Around Columnstore Indexing - Agenda  A tour of the evolution of Columnstore.  > >2016  Real-Time Operational Analytics.  Storage format and Internals  DMV’s / extended events  for monitoring and learning

Let’s take a step back….why?  New syntax & new functionality  Columnstore  Batch mode - new addition to operators in query plans…More on this later. Scales well  But along with columnstore came some unfamiliar language for existing functionality.  Rowstores.  Row Mode.  CLUSTERED does not mean sorted.  Not like a Clustered Rowstore Index.

Some Additional Terms  Vertipaq – xVelocity.  Used with PowerPivot, Tabular also.  In-memory Analytics – The Marketing Term  Columnstore - The Technology Term  Operation Analytics - “the ability to run performant real-time analytics on a transactional workload.”  In memory (as a general term)  In-memory OLTP  Columnstore  Also, BPE, Delayed Durability..

A Quick Overview.  So, what does columnstore give us?  Compression.  Performance.  But didn’t we have these things anyway?  How often is row / page compression used?  Lets do a quick comparison.

Rowstores  Complete row stored on page.  So when we read a row – ALL columns from the row read into memory.  Rows stored in B-Tree format (both clustered and non clustered)  Compression (not on by default – you have to ask for it)  ROW  PAGE  Compression is mostly a good thing – but maybe not always.  Columnstore indexes are ALWAYS compressed.  Data is ORDERed in the index.  Additional columns can be INCLUDEd  Indexes can be filtered.

A Quick (very general) Overview.

Comparison  As the name suggests data is held in columular format.  As there is likely a lot of duplication - opportunities for compress are high.  Columnstore compression comes by default – you have to have it.  You can not disable it.

SQL Server 2012  Introduced columnstore  Specifically Non Clustered Columstore Index  NOTE – the NONCLUSTERED keyword was NOT required.  What was the promise  More compact storage.  Faster querying.  What was the reality?  Table still stored as a ‘Rowstore’ or a heap.  Index was NOT updateable.  Very few operators supported Batch Mode  So queries often fell back to Row Mode.  NOTE :- no ordering of columstore is required.

SQL Server 2014  Introduced CLUSTERED columnstore indexes.  Remember the CLUSTERED keyword (although confusion is unlikely)  Introduced Clustered Columnstore.  These could be updated.  NONCLUSTERED COLUMNSTORE still read-only.  No mixing the two types.  With CLUSTERED columnstore certain datatypes disallowed.  No additional constraints supported on CCI table.  More operators supported for batch mode.  Introduced COLUMNSTORE_ARCHIVE for increased compression.  Save diskspace v performance (data accessed rarely)

SQL Server 2016 (CTP 3.3)  Built on the 2012 / 2014 features.  Introduced updatable NCCI  Additional indexes / constraints supported.  Filtered Columstore indexes  More data types supported.  More operators supported for “Batch Mode”

Creating Columnstore Indexes  Through the GUI or directly through TSQL  Or script off from the GUI

Columnstore format.  Immutable Data in Columnstore.  Delete bitmap. (Deletes tracked / Soft delete)  Delta store (Inserts stored here)  How are updates handled. (Delete plus Insert)  BULK Inserts  TRICKLE Inserts  The Tuple Mover – updates the CS.

Columnstore format.

SQL Server 2016 – Operational Analytics. “the ability to run performant real-time analytics on a transactional workload.”  Real time analytics queries on OLTP system.  Ad-hoc queries.  Will this mean Cubes are going…going …gone?  Any need for pre-aggregated cube queries?  Will this remove Analysis services from the equation?

Modes (Row and Batch)

References.  Niko Neugebauer -  Multi-part series on Columnstore internals.  PASS 2014 / 2015 Presentations.  Sunil Agarwal – MS PM – Columnstore team.  Anything from Sunil – (Ignite / PASS sessions)  SQL CAT – PASS 2015 presentation.  Customer Scenarios and Best Practices. 

That’s all folks - Questions? Please make sure you visit our fantastic sponsors:

How did we do? Please complete an online Evaluation to be included the draw for a fantastic prize! There is a prize for each session timeslot and for the overall event survey – so the more feedback you provide the more chances you have. Session Surveys sessions/sessionevaluation.aspx Post-Event Survey eventeval.aspx