SlideShare a Scribd company logo
Columnstore
Improvements
in SQL Server 2016
Niko Neugebauer, OH22
Please silence
cell phones
Explore Everything PASS Has to Offer
FREE ONLINE WEBINAR EVENTS FREE 1-DAY LOCAL TRAINING EVENTS
LOCAL USER GROUPS
AROUND THE WORLD
ONLINE SPECIAL INTEREST
USER GROUPS
BUSINESS ANALYTICS TRAINING
VOLUNTEERING OPPORTUNITIES
PASS COMMUNITY NEWSLETTER
BA INSIGHTS NEWSLETTERFREE ONLINE RESOURCES
Session Evaluations
ways to access
Go to passSummit.com Download the GuideBook App
and search: PASS Summit 2016
Follow the QR code link displayed
on session signage throughout the
conference venue and in the
program guide
Submit by 5pm
Friday November 6th to
WIN prizes
Your feedback is
important and valuable. 3
Niko Neugebauer
Consultant, OH22
• Microsoft Data Platform Professional
• OH22 (http://www.oh22.net)
• Data Platform MVP
• Founder of a couple of Portuguese PASS Chapters
• Creator of CISL – Free & Open Source
Columnstore Indexes Script Library
(https://github.com/NikoNeugebauer/CISL)
Place your
photo here
/WebCaravela @NikoNeugebauer www.nikoport.com
Our Today’s Columnstore Agenda p. 1
• HTAP aka Operational Analytics
• Data Warehousing (CCI)
• T-SQL
• High Availability
• Batch Mode Changes
• Data Loading (+Minimal Logging)
• Performance (Batch, SSIS)
Our Today’s Columnstore Agenda p. 2
• Memory Managment
• Change Tracking
• Maintenance
• Monitoring Improvements (DMV, Extended Events, Performance Counters)
• Configuration Improvement (Test it!)
• Indexed Views
• New Trace Flags
• Upcoming Attraction 
HTAP
Hybrid Transactional
/Analytical Processing
Analytics
Operational
What is it all about:
• Predictive Analytics, Prescriptive Analytics, Business
Analytics, Machine Learning, Data Mining
But technically it all goes down to the mining 
one thing we treasure quite a lot: the Data
Analytics
Analytics – is the process of discovery & communication
of meaningful patterns in data.
Reporting - extraction of the aggregated information for
further analysis.
Querying - data extraction process
Analytics Faces
Traditional Operational/Analytics
architecture
Key issues
Complex implementation
Requires two servers (capital
expenditures and operational expenditures)
Data latency in analytics
More businesses demand;
requires real-time analytics
IIS Server
BI analysts
• Costs
• Integration Problems (data types, constraints, network
problems, etc)
• Delay for getting the actual data
Traditional Operational Analytics
Problems:
Nothing substitutes analytics queries performance,
possible using schemas customized (Star/Snowflake) and/or
pre-aggregated cubes
Modern Operational Analytics notes:
Minimizing data latency for analytics
Benefits
No data latency
No ETL
No separate data warehouse
Challenges
Analytics queries are resource intensive and
can cause blocking
Minimizing impact on operational workloads
Sub-optimal execution of analytics on
relational schema
IIS Server
BI analysts
Optimizing data latency for analytics
BI analysts
What is operational analytics and what does it
mean to you?
Operational analytics with disk-based tables
Operational analytics with In-Memory OLTP
IIS Server
There are now 2 types of Operational Analytics:
Operational Analytics for Disk-Based
Operational Analytics for InMemory
Operational Analytics: SQL Server 2016
Updatable Columnstore SQL Server 2014
Disk-based Operational Analytics
Operational Analytics Query Processing
Operational
Analytics
Demo
Filtered Operational Analytics
Create a filtered Nonclustered Columnstore Index!
Operational
Analytics
Demo with a Filtered Index
In-Memory Operational Analytics
In-Memory Operational Analytics
sys.sp_memory_optimized_cs_migration –
compresses data from InMemory OLTP Table into
In-Memory Columnstore
Operational
Analytics
Demo Memory-Optimized
Compression
Delay
Compression Delay
Warm Data Hot Data
Recent DataArchive Data
Compressed Row Groups Delta-Stores
The Problem:
When we move a row from Delta-Store into the
compressed Row Group, it becomes compressed.
Once it is updated, the row is marked as deleted in
the Deleted Bitmap/Deleted Buffer and the new
value is inserted in Delta-Store.
The Solution is the Compression Delay
Default delay is 0 min
alter index PK_NCCi_test_inline
on dbo.ncci_test_inline
set (COMPRESSION_DELAY = 60 Minutes);
Data
Warehouse
Clustered Columnstore
Clustered Columnstore (DWH)
Nonclustered Indexes
Primary & Foreign Keys + Unique Constraints
Nonclustered Secondary Rowstore Locking
T-SQL
Columnstore in SQL 2016
New T-SQL
• Inline Table definition of Clustered Columnstore
Index
• Inline Table definition of Nonclustered
Columnstore Index
• In-Memory OLTP & Columnstore Indexes
New T-SQL for Disk-Based Columnstore
CREATE TABLE [dbo].[FactOnlineSales_CCI](
[OnlineSalesKey] [int] NOT NULL,
[StoreKey] [int] NOT NULL,
[ProductKey] [int] NOT NULL,
[PromotionKey] [int] NOT NULL,
[CurrencyKey] [int] NOT NULL,
[CustomerKey] [int] NOT NULL,
INDEX PK_FactOnlineSales_CCI CLUSTERED COLUMNSTORE
);
CREATE TABLE [dbo].[FactOnlineSales_NCCI](
[OnlineSalesKey] [int] NOT NULL,
[StoreKey] [int] NOT NULL,
[ProductKey] [int] NOT NULL,
[PromotionKey] [int] NOT NULL,
[CurrencyKey] [int] NOT NULL,
[CustomerKey] [int] NOT NULL,
INDEX PK_FactOnlineSales_CCI NONCLUSTERED COLUMNSTORE (OnlineSalesKey, CustomerKey)
);
New T-SQL for In-Memory Columnstore
CREATE TABLE [dbo].[FactOnlineSales_Hekaton](
[OnlineSalesKey] [int] NOT NULL,
[StoreKey] [int] NOT NULL,
[ProductKey] [int] NOT NULL,
[PromotionKey] [int] NOT NULL,
[CurrencyKey] [int] NOT NULL,
[CustomerKey] [int] NOT NULL,
Constraint PK_FactOnlineSales_Hekaton PRIMARY KEY NONCLUSTERED ([OnlineSalesKey]),
INDEX CCI_FactOnlineSales_Hekaton
CLUSTERED COLUMNSTORE
) WITH (MEMORY_OPTIMIZED = ON, DURABILITY = SCHEMA_AND_DATA);
ALTER TABLE dbo. FactOnlineSales_Hekaton
ADD INDEX CCI_FactOnlineSales_Hekaton
CLUSTERED COLUMNSTORE;
HA
High Availability
High Availability
High Availability
Readable Secondaries for Availability Groups through
Snapshot &
Read Committed Snapshot
Isolation Levels support
Transactional Replication
We can now control, how the HTAP
Columnstore Indexes are being replicated –
if they should be created on the Subscriber or not.
Transactional Replication
Further Columnstore Improvements
• Data Loading Improvements
• Batch Mode
• Performance Improvements
• Change Tracking
• Maintenance Improvements
• Monitoring Improvements (DMV, Extended Events, Performance Counters)
Data Loading Improvements
• Parallel Data Loading finally enabled
• SIMD support
• Delta-Stores are not Page-Compressed!!!
• Under NCCI Delta-Stores are automatically increasing their max size with
each iteration under pressure
• Compression Delay
• SSIS
• Minimal Logging
Parallel Data Loading
SIMD Improvements
Columnstore is SIMD-aware and uses it for
different purposes, such as:
- Huffman decoding
- Predicate Pushdown
- String Hash
Delta-Stores for NCCI
- Under memory pressure the size of the created
Delta-Stores for the Nonclustered Columnstore
Indexes will be doubled for each succeeding
operation from 1048576 rows to ~2 Million
Rows, ~4 Million Rows, ... 32 Million Rows
The solution: Compression Delay
Default delay is 0 min
alter index PK_NCCi_test_inline
on dbo.ncci_test_inline
set (COMPRESSION_DELAY = 60 Minutes);
SSIS 2016 Improvements
AutoAdjustBufferSize - True
Warning: It’s not enough, you will need to set up the
maximum number of rows per buffer, otherwise
your performance will be extremely slow!
DefaultBufferMaxRows = 1048576
Minimal Logging
Minimal Logging
Memory
Improvements
Dynamic Memory Grants
Trace Flag 9389 - Enables dynamic memory grant
for batch mode operators.
Memory Grant Memory Required Dynamic Memory Grant
Batch Mode
Improvements
Batch Mode Improvements
• Batch Mode support for 1 core execution plan operators
• Batch Mode support for the Sort operator
• Batch Mode support for the Multiple Distinct Count
operations
• Batch Mode support for the Left Anti-Semi Join operators
Batch Sorting Improvements
Trace Flag Description
9347 Disables batch mode sort operator
9349 Disables batch mode top sort operator
9358
Disable batch mode sort operations in a complex parallel query in SQL
Server 2016
Batch Mode
Demo
Batch Mode for Windowing Functions
Window
Batch Mode
Demo
Further Batch Improvements
• Simple Aggregate Predicate Pushdown
• Local Aggregation
• String Predicate Pushdown for Index Scan operator in
Batch Mode
Batch
Aggregation Pushdown Demo
Locally Aggregated Rows
String Predicate Pushdown
Change Tracking / CDC in SQL 2016
Columnstore Change Tracking Change Data Capture Temporal (2016+)
Clustered No No Yes
Nonclustered Yes Yes Yes
Memory-Optimized No No Yes
Maintenance Improvements
• Better ALTER INDEX … REORGANIZE
(removes deleted rows, less memory pressure)
• Self-Merging (this is when Row Group is being recompressed
eliminating obsolete row versions that are found in Deleted
Bitmap)
• Intergroup Merging (when the sum of active rows between
multiple Row Groups is less then 1048576, then their
information can be merged into a new single Row Group)
Maintenance Improvements
• Being a compressed Row Group (Delta-Stores & Tail
Row Groups are not qualified)
• A Row Group has to have at least 10% of its data being
marked as obsolete in Deleted Bitmap (for In-Memory
this threshold is set on 90%)
• – A Row Group should not being trimmed because of
the dictionary pressure.
Row Group Merging in SQL Server 2016
Columnstore Self-Merge Intergroup Merge Cleanup
Clustered Yes Yes Yes
Nonclustered Yes Yes*1 Yes
Memory-Optimized Yes*2 No Yes
New DMVs:
• sys.dm_column_store_object_pool
• sys.dm_db_column_store_row_group_physical_stats
• sys.dm_db_column_store_row_group_operational_stats
• sys.internal_partitions
Enhanced DMVs:
• sys.dm_db_index_operational_stats
• sys.dm_db_index_physical_stats
Extended Events
Extended Events Categories 2016
• Columnstore Index creation
• Batch Mode
• Tuple Mover
• Columnstore Internal Object Operations
• Columnstore Processing
• Columnstore Object Pool
• Errors
Configuration Improvement
Large Pages (Trace Flag 834)
should be supported in SQL Server 2016,
or at least the Connect Item for it is closed as fixed. 
Take them to DEV & QA Environments and let Microsoft
know the results
New Trace Flags
Trace Flag Description
9347 Disables batch mode sort operator
9349 Disables batch mode top sort operator
9358
Disable batch mode sort operations in a complex parallel query in SQL
Server 2016
9389 Enables dynamic memory grant for batch mode operators
10204 Disables merge/recompress during columnstore index reorganization
Indexed Views
SQL Server 2016 supports Indexed Views with updatable
Nonclustered Columnstore Indexes!
Resources:
My Columnstore Blogpost Series:
http://www.nikoport.com/columnstore
CISL – Open Source Columnstore Library:
https://github.com/NikoNeugebauer/CISL
Session Evaluations
ways to access
Go to passSummit.com Download the GuideBook App
and search: PASS Summit 2016
Follow the QR code link displayed
on session signage throughout the
conference venue and in the
program guide
Submit by 5pm
Friday November 6th to
WIN prizes
Your feedback is
important and valuable. 3
Thank You
Learn more from
Niko Neugebauer
n.neugebauer@oh22.net
or follow @NikoNeugebauer

More Related Content

What's hot

Scylla Summit 2018: Scylla 3.0 and Beyond
Scylla Summit 2018: Scylla 3.0 and BeyondScylla Summit 2018: Scylla 3.0 and Beyond
Scylla Summit 2018: Scylla 3.0 and Beyond
ScyllaDB
 
What is Change Data Capture (CDC) and Why is it Important?
What is Change Data Capture (CDC) and Why is it Important?What is Change Data Capture (CDC) and Why is it Important?
What is Change Data Capture (CDC) and Why is it Important?
FlyData Inc.
 
Oracle GoldenGate for MySQL Overview
Oracle GoldenGate for MySQL OverviewOracle GoldenGate for MySQL Overview
Oracle GoldenGate for MySQL Overview
Jinyu Wang
 
Gs08 modernize your data platform with sql technologies wash dc
Gs08 modernize your data platform with sql technologies   wash dcGs08 modernize your data platform with sql technologies   wash dc
Gs08 modernize your data platform with sql technologies wash dc
Bob Ward
 
An Introduction to Amazon’s DynamoDB
An Introduction to Amazon’s DynamoDBAn Introduction to Amazon’s DynamoDB
An Introduction to Amazon’s DynamoDB
Knoldus Inc.
 
SQL Explore 2012: P&T Part 3
SQL Explore 2012: P&T Part 3SQL Explore 2012: P&T Part 3
SQL Explore 2012: P&T Part 3sqlserver.co.il
 
Gab document db scaling database
Gab   document db scaling databaseGab   document db scaling database
Gab document db scaling database
MUG Perú
 
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech CycleScylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
ScyllaDB
 
Scaling MySQL using Fabric
Scaling MySQL using FabricScaling MySQL using Fabric
Scaling MySQL using Fabric
Karthik .P.R
 
How MariaDB is approaching DBaaS
How MariaDB is approaching DBaaSHow MariaDB is approaching DBaaS
How MariaDB is approaching DBaaS
MariaDB plc
 
SQL Explore 2012: P&T Part 2
SQL Explore 2012: P&T Part 2SQL Explore 2012: P&T Part 2
SQL Explore 2012: P&T Part 2sqlserver.co.il
 
Introduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAsIntroduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAs
Steve Knutson
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore Index
SolidQ
 
The Evolution of Open Source Databases
The Evolution of Open Source DatabasesThe Evolution of Open Source Databases
The Evolution of Open Source Databases
Ivan Zoratti
 
Running Scylla on Kubernetes with Scylla Operator
Running Scylla on Kubernetes with Scylla OperatorRunning Scylla on Kubernetes with Scylla Operator
Running Scylla on Kubernetes with Scylla Operator
ScyllaDB
 
ClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale outClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale out
MariaDB plc
 
MySQL Query Optimization (Basics)
MySQL Query Optimization (Basics)MySQL Query Optimization (Basics)
MySQL Query Optimization (Basics)Karthik .P.R
 
Ibm datastage online training in hyderabad
Ibm datastage online training in hyderabadIbm datastage online training in hyderabad
Ibm datastage online training in hyderabad
GoLogica Technologies
 
MongoDB and DynamoDB
MongoDB and DynamoDBMongoDB and DynamoDB
MongoDB and DynamoDB
Md. Minhazul Haque
 
MariaDB: Connect Storage Engine
MariaDB: Connect Storage EngineMariaDB: Connect Storage Engine
MariaDB: Connect Storage Engine
Kangaroot
 

What's hot (20)

Scylla Summit 2018: Scylla 3.0 and Beyond
Scylla Summit 2018: Scylla 3.0 and BeyondScylla Summit 2018: Scylla 3.0 and Beyond
Scylla Summit 2018: Scylla 3.0 and Beyond
 
What is Change Data Capture (CDC) and Why is it Important?
What is Change Data Capture (CDC) and Why is it Important?What is Change Data Capture (CDC) and Why is it Important?
What is Change Data Capture (CDC) and Why is it Important?
 
Oracle GoldenGate for MySQL Overview
Oracle GoldenGate for MySQL OverviewOracle GoldenGate for MySQL Overview
Oracle GoldenGate for MySQL Overview
 
Gs08 modernize your data platform with sql technologies wash dc
Gs08 modernize your data platform with sql technologies   wash dcGs08 modernize your data platform with sql technologies   wash dc
Gs08 modernize your data platform with sql technologies wash dc
 
An Introduction to Amazon’s DynamoDB
An Introduction to Amazon’s DynamoDBAn Introduction to Amazon’s DynamoDB
An Introduction to Amazon’s DynamoDB
 
SQL Explore 2012: P&T Part 3
SQL Explore 2012: P&T Part 3SQL Explore 2012: P&T Part 3
SQL Explore 2012: P&T Part 3
 
Gab document db scaling database
Gab   document db scaling databaseGab   document db scaling database
Gab document db scaling database
 
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech CycleScylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
 
Scaling MySQL using Fabric
Scaling MySQL using FabricScaling MySQL using Fabric
Scaling MySQL using Fabric
 
How MariaDB is approaching DBaaS
How MariaDB is approaching DBaaSHow MariaDB is approaching DBaaS
How MariaDB is approaching DBaaS
 
SQL Explore 2012: P&T Part 2
SQL Explore 2012: P&T Part 2SQL Explore 2012: P&T Part 2
SQL Explore 2012: P&T Part 2
 
Introduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAsIntroduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAs
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore Index
 
The Evolution of Open Source Databases
The Evolution of Open Source DatabasesThe Evolution of Open Source Databases
The Evolution of Open Source Databases
 
Running Scylla on Kubernetes with Scylla Operator
Running Scylla on Kubernetes with Scylla OperatorRunning Scylla on Kubernetes with Scylla Operator
Running Scylla on Kubernetes with Scylla Operator
 
ClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale outClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale out
 
MySQL Query Optimization (Basics)
MySQL Query Optimization (Basics)MySQL Query Optimization (Basics)
MySQL Query Optimization (Basics)
 
Ibm datastage online training in hyderabad
Ibm datastage online training in hyderabadIbm datastage online training in hyderabad
Ibm datastage online training in hyderabad
 
MongoDB and DynamoDB
MongoDB and DynamoDBMongoDB and DynamoDB
MongoDB and DynamoDB
 
MariaDB: Connect Storage Engine
MariaDB: Connect Storage EngineMariaDB: Connect Storage Engine
MariaDB: Connect Storage Engine
 

Similar to Columnstore improvements in SQL Server 2016

SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Features
aminmesbahi
 
Maximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL AnywhereMaximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL Anywhere
SAP Technology
 
Storage Optimization and Operational Simplicity in SAP Adaptive Server Enter...
Storage Optimization and Operational Simplicity in SAP  Adaptive Server Enter...Storage Optimization and Operational Simplicity in SAP  Adaptive Server Enter...
Storage Optimization and Operational Simplicity in SAP Adaptive Server Enter...
SAP Technology
 
Self-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
Self-serve analytics journey at Celtra: Snowflake, Spark, and DatabricksSelf-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
Self-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
Grega Kespret
 
SQL Server 2016 novelties
SQL Server 2016 noveltiesSQL Server 2016 novelties
SQL Server 2016 novelties
MSDEVMTL
 
SQL Server 2014 for Developers (Cristian Lefter)
SQL Server 2014 for Developers (Cristian Lefter)SQL Server 2014 for Developers (Cristian Lefter)
SQL Server 2014 for Developers (Cristian Lefter)
ITCamp
 
5001 accessing sap_hana_with_the_semantic_layer
5001 accessing sap_hana_with_the_semantic_layer5001 accessing sap_hana_with_the_semantic_layer
5001 accessing sap_hana_with_the_semantic_layer
sivaramakrishna alpuri
 
Introduction to Columnstore Indexes
Introduction to Columnstore IndexesIntroduction to Columnstore Indexes
Introduction to Columnstore Indexes
Jason Strate
 
SQL Saturday 86 -- Enterprise Data Mining with SQL Server
SQL Saturday 86 -- Enterprise Data Mining with SQL ServerSQL Saturday 86 -- Enterprise Data Mining with SQL Server
SQL Saturday 86 -- Enterprise Data Mining with SQL ServerMark Tabladillo
 
CS636-olap.ppt
CS636-olap.pptCS636-olap.ppt
CS636-olap.ppt
Iftikharbaig7
 
Sql 2016 - What's New
Sql 2016 - What's NewSql 2016 - What's New
Sql 2016 - What's New
dpcobb
 
Live Query Statistics & Query Store in SQL Server 2016
Live Query Statistics & Query Store in SQL Server 2016Live Query Statistics & Query Store in SQL Server 2016
Live Query Statistics & Query Store in SQL Server 2016
Antonios Chatzipavlis
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016
Łukasz Grala
 
Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8
Mark van Aalst
 
Novidades do SQL Server 2016
Novidades do SQL Server 2016Novidades do SQL Server 2016
Novidades do SQL Server 2016
Marcos Freccia
 
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginnersSQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
Tobias Koprowski
 
[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics
GUSS
 
Jss 2015 in memory and operational analytics
Jss 2015   in memory and operational analyticsJss 2015   in memory and operational analytics
Jss 2015 in memory and operational analytics
David Barbarin
 
Building Modern Data Platform with AWS
Building Modern Data Platform with AWSBuilding Modern Data Platform with AWS
Building Modern Data Platform with AWS
Dmitry Anoshin
 
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
Denodo
 

Similar to Columnstore improvements in SQL Server 2016 (20)

SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Features
 
Maximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL AnywhereMaximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL Anywhere
 
Storage Optimization and Operational Simplicity in SAP Adaptive Server Enter...
Storage Optimization and Operational Simplicity in SAP  Adaptive Server Enter...Storage Optimization and Operational Simplicity in SAP  Adaptive Server Enter...
Storage Optimization and Operational Simplicity in SAP Adaptive Server Enter...
 
Self-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
Self-serve analytics journey at Celtra: Snowflake, Spark, and DatabricksSelf-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
Self-serve analytics journey at Celtra: Snowflake, Spark, and Databricks
 
SQL Server 2016 novelties
SQL Server 2016 noveltiesSQL Server 2016 novelties
SQL Server 2016 novelties
 
SQL Server 2014 for Developers (Cristian Lefter)
SQL Server 2014 for Developers (Cristian Lefter)SQL Server 2014 for Developers (Cristian Lefter)
SQL Server 2014 for Developers (Cristian Lefter)
 
5001 accessing sap_hana_with_the_semantic_layer
5001 accessing sap_hana_with_the_semantic_layer5001 accessing sap_hana_with_the_semantic_layer
5001 accessing sap_hana_with_the_semantic_layer
 
Introduction to Columnstore Indexes
Introduction to Columnstore IndexesIntroduction to Columnstore Indexes
Introduction to Columnstore Indexes
 
SQL Saturday 86 -- Enterprise Data Mining with SQL Server
SQL Saturday 86 -- Enterprise Data Mining with SQL ServerSQL Saturday 86 -- Enterprise Data Mining with SQL Server
SQL Saturday 86 -- Enterprise Data Mining with SQL Server
 
CS636-olap.ppt
CS636-olap.pptCS636-olap.ppt
CS636-olap.ppt
 
Sql 2016 - What's New
Sql 2016 - What's NewSql 2016 - What's New
Sql 2016 - What's New
 
Live Query Statistics & Query Store in SQL Server 2016
Live Query Statistics & Query Store in SQL Server 2016Live Query Statistics & Query Store in SQL Server 2016
Live Query Statistics & Query Store in SQL Server 2016
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016
 
Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8
 
Novidades do SQL Server 2016
Novidades do SQL Server 2016Novidades do SQL Server 2016
Novidades do SQL Server 2016
 
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginnersSQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
SQLSaturday#290_Kiev_AdHocMaintenancePlansForBeginners
 
[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics
 
Jss 2015 in memory and operational analytics
Jss 2015   in memory and operational analyticsJss 2015   in memory and operational analytics
Jss 2015 in memory and operational analytics
 
Building Modern Data Platform with AWS
Building Modern Data Platform with AWSBuilding Modern Data Platform with AWS
Building Modern Data Platform with AWS
 
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
Denodo 6.0: Self Service Search, Discovery & Governance using an Universal Se...
 

Recently uploaded

Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 

Recently uploaded (20)

Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 

Columnstore improvements in SQL Server 2016

  • 1. Columnstore Improvements in SQL Server 2016 Niko Neugebauer, OH22
  • 3. Explore Everything PASS Has to Offer FREE ONLINE WEBINAR EVENTS FREE 1-DAY LOCAL TRAINING EVENTS LOCAL USER GROUPS AROUND THE WORLD ONLINE SPECIAL INTEREST USER GROUPS BUSINESS ANALYTICS TRAINING VOLUNTEERING OPPORTUNITIES PASS COMMUNITY NEWSLETTER BA INSIGHTS NEWSLETTERFREE ONLINE RESOURCES
  • 4. Session Evaluations ways to access Go to passSummit.com Download the GuideBook App and search: PASS Summit 2016 Follow the QR code link displayed on session signage throughout the conference venue and in the program guide Submit by 5pm Friday November 6th to WIN prizes Your feedback is important and valuable. 3
  • 5. Niko Neugebauer Consultant, OH22 • Microsoft Data Platform Professional • OH22 (http://www.oh22.net) • Data Platform MVP • Founder of a couple of Portuguese PASS Chapters • Creator of CISL – Free & Open Source Columnstore Indexes Script Library (https://github.com/NikoNeugebauer/CISL) Place your photo here /WebCaravela @NikoNeugebauer www.nikoport.com
  • 6. Our Today’s Columnstore Agenda p. 1 • HTAP aka Operational Analytics • Data Warehousing (CCI) • T-SQL • High Availability • Batch Mode Changes • Data Loading (+Minimal Logging) • Performance (Batch, SSIS)
  • 7. Our Today’s Columnstore Agenda p. 2 • Memory Managment • Change Tracking • Maintenance • Monitoring Improvements (DMV, Extended Events, Performance Counters) • Configuration Improvement (Test it!) • Indexed Views • New Trace Flags • Upcoming Attraction 
  • 10. What is it all about: • Predictive Analytics, Prescriptive Analytics, Business Analytics, Machine Learning, Data Mining But technically it all goes down to the mining  one thing we treasure quite a lot: the Data Analytics
  • 11. Analytics – is the process of discovery & communication of meaningful patterns in data. Reporting - extraction of the aggregated information for further analysis. Querying - data extraction process Analytics Faces
  • 12. Traditional Operational/Analytics architecture Key issues Complex implementation Requires two servers (capital expenditures and operational expenditures) Data latency in analytics More businesses demand; requires real-time analytics IIS Server BI analysts
  • 13. • Costs • Integration Problems (data types, constraints, network problems, etc) • Delay for getting the actual data Traditional Operational Analytics Problems:
  • 14. Nothing substitutes analytics queries performance, possible using schemas customized (Star/Snowflake) and/or pre-aggregated cubes Modern Operational Analytics notes:
  • 15. Minimizing data latency for analytics Benefits No data latency No ETL No separate data warehouse Challenges Analytics queries are resource intensive and can cause blocking Minimizing impact on operational workloads Sub-optimal execution of analytics on relational schema IIS Server BI analysts
  • 16. Optimizing data latency for analytics BI analysts What is operational analytics and what does it mean to you? Operational analytics with disk-based tables Operational analytics with In-Memory OLTP IIS Server
  • 17. There are now 2 types of Operational Analytics: Operational Analytics for Disk-Based Operational Analytics for InMemory Operational Analytics: SQL Server 2016
  • 22. Filtered Operational Analytics Create a filtered Nonclustered Columnstore Index!
  • 25. In-Memory Operational Analytics sys.sp_memory_optimized_cs_migration – compresses data from InMemory OLTP Table into In-Memory Columnstore
  • 28. Compression Delay Warm Data Hot Data Recent DataArchive Data Compressed Row Groups Delta-Stores
  • 29. The Problem: When we move a row from Delta-Store into the compressed Row Group, it becomes compressed. Once it is updated, the row is marked as deleted in the Deleted Bitmap/Deleted Buffer and the new value is inserted in Delta-Store.
  • 30. The Solution is the Compression Delay Default delay is 0 min alter index PK_NCCi_test_inline on dbo.ncci_test_inline set (COMPRESSION_DELAY = 60 Minutes);
  • 32. Clustered Columnstore (DWH) Nonclustered Indexes Primary & Foreign Keys + Unique Constraints Nonclustered Secondary Rowstore Locking
  • 34. New T-SQL • Inline Table definition of Clustered Columnstore Index • Inline Table definition of Nonclustered Columnstore Index • In-Memory OLTP & Columnstore Indexes
  • 35. New T-SQL for Disk-Based Columnstore CREATE TABLE [dbo].[FactOnlineSales_CCI]( [OnlineSalesKey] [int] NOT NULL, [StoreKey] [int] NOT NULL, [ProductKey] [int] NOT NULL, [PromotionKey] [int] NOT NULL, [CurrencyKey] [int] NOT NULL, [CustomerKey] [int] NOT NULL, INDEX PK_FactOnlineSales_CCI CLUSTERED COLUMNSTORE ); CREATE TABLE [dbo].[FactOnlineSales_NCCI]( [OnlineSalesKey] [int] NOT NULL, [StoreKey] [int] NOT NULL, [ProductKey] [int] NOT NULL, [PromotionKey] [int] NOT NULL, [CurrencyKey] [int] NOT NULL, [CustomerKey] [int] NOT NULL, INDEX PK_FactOnlineSales_CCI NONCLUSTERED COLUMNSTORE (OnlineSalesKey, CustomerKey) );
  • 36. New T-SQL for In-Memory Columnstore CREATE TABLE [dbo].[FactOnlineSales_Hekaton]( [OnlineSalesKey] [int] NOT NULL, [StoreKey] [int] NOT NULL, [ProductKey] [int] NOT NULL, [PromotionKey] [int] NOT NULL, [CurrencyKey] [int] NOT NULL, [CustomerKey] [int] NOT NULL, Constraint PK_FactOnlineSales_Hekaton PRIMARY KEY NONCLUSTERED ([OnlineSalesKey]), INDEX CCI_FactOnlineSales_Hekaton CLUSTERED COLUMNSTORE ) WITH (MEMORY_OPTIMIZED = ON, DURABILITY = SCHEMA_AND_DATA); ALTER TABLE dbo. FactOnlineSales_Hekaton ADD INDEX CCI_FactOnlineSales_Hekaton CLUSTERED COLUMNSTORE;
  • 39. High Availability Readable Secondaries for Availability Groups through Snapshot & Read Committed Snapshot Isolation Levels support
  • 40. Transactional Replication We can now control, how the HTAP Columnstore Indexes are being replicated – if they should be created on the Subscriber or not.
  • 42. Further Columnstore Improvements • Data Loading Improvements • Batch Mode • Performance Improvements • Change Tracking • Maintenance Improvements • Monitoring Improvements (DMV, Extended Events, Performance Counters)
  • 43. Data Loading Improvements • Parallel Data Loading finally enabled • SIMD support • Delta-Stores are not Page-Compressed!!! • Under NCCI Delta-Stores are automatically increasing their max size with each iteration under pressure • Compression Delay • SSIS • Minimal Logging
  • 45. SIMD Improvements Columnstore is SIMD-aware and uses it for different purposes, such as: - Huffman decoding - Predicate Pushdown - String Hash
  • 46. Delta-Stores for NCCI - Under memory pressure the size of the created Delta-Stores for the Nonclustered Columnstore Indexes will be doubled for each succeeding operation from 1048576 rows to ~2 Million Rows, ~4 Million Rows, ... 32 Million Rows
  • 47. The solution: Compression Delay Default delay is 0 min alter index PK_NCCi_test_inline on dbo.ncci_test_inline set (COMPRESSION_DELAY = 60 Minutes);
  • 48. SSIS 2016 Improvements AutoAdjustBufferSize - True Warning: It’s not enough, you will need to set up the maximum number of rows per buffer, otherwise your performance will be extremely slow! DefaultBufferMaxRows = 1048576
  • 52. Dynamic Memory Grants Trace Flag 9389 - Enables dynamic memory grant for batch mode operators. Memory Grant Memory Required Dynamic Memory Grant
  • 54. Batch Mode Improvements • Batch Mode support for 1 core execution plan operators • Batch Mode support for the Sort operator • Batch Mode support for the Multiple Distinct Count operations • Batch Mode support for the Left Anti-Semi Join operators
  • 55. Batch Sorting Improvements Trace Flag Description 9347 Disables batch mode sort operator 9349 Disables batch mode top sort operator 9358 Disable batch mode sort operations in a complex parallel query in SQL Server 2016
  • 57. Batch Mode for Windowing Functions
  • 59. Further Batch Improvements • Simple Aggregate Predicate Pushdown • Local Aggregation • String Predicate Pushdown for Index Scan operator in Batch Mode
  • 63. Change Tracking / CDC in SQL 2016 Columnstore Change Tracking Change Data Capture Temporal (2016+) Clustered No No Yes Nonclustered Yes Yes Yes Memory-Optimized No No Yes
  • 64. Maintenance Improvements • Better ALTER INDEX … REORGANIZE (removes deleted rows, less memory pressure) • Self-Merging (this is when Row Group is being recompressed eliminating obsolete row versions that are found in Deleted Bitmap) • Intergroup Merging (when the sum of active rows between multiple Row Groups is less then 1048576, then their information can be merged into a new single Row Group)
  • 65. Maintenance Improvements • Being a compressed Row Group (Delta-Stores & Tail Row Groups are not qualified) • A Row Group has to have at least 10% of its data being marked as obsolete in Deleted Bitmap (for In-Memory this threshold is set on 90%) • – A Row Group should not being trimmed because of the dictionary pressure.
  • 66. Row Group Merging in SQL Server 2016 Columnstore Self-Merge Intergroup Merge Cleanup Clustered Yes Yes Yes Nonclustered Yes Yes*1 Yes Memory-Optimized Yes*2 No Yes
  • 67. New DMVs: • sys.dm_column_store_object_pool • sys.dm_db_column_store_row_group_physical_stats • sys.dm_db_column_store_row_group_operational_stats • sys.internal_partitions
  • 70. Extended Events Categories 2016 • Columnstore Index creation • Batch Mode • Tuple Mover • Columnstore Internal Object Operations • Columnstore Processing • Columnstore Object Pool • Errors
  • 71. Configuration Improvement Large Pages (Trace Flag 834) should be supported in SQL Server 2016, or at least the Connect Item for it is closed as fixed.  Take them to DEV & QA Environments and let Microsoft know the results
  • 72. New Trace Flags Trace Flag Description 9347 Disables batch mode sort operator 9349 Disables batch mode top sort operator 9358 Disable batch mode sort operations in a complex parallel query in SQL Server 2016 9389 Enables dynamic memory grant for batch mode operators 10204 Disables merge/recompress during columnstore index reorganization
  • 73. Indexed Views SQL Server 2016 supports Indexed Views with updatable Nonclustered Columnstore Indexes!
  • 74. Resources: My Columnstore Blogpost Series: http://www.nikoport.com/columnstore CISL – Open Source Columnstore Library: https://github.com/NikoNeugebauer/CISL
  • 75. Session Evaluations ways to access Go to passSummit.com Download the GuideBook App and search: PASS Summit 2016 Follow the QR code link displayed on session signage throughout the conference venue and in the program guide Submit by 5pm Friday November 6th to WIN prizes Your feedback is important and valuable. 3
  • 76. Thank You Learn more from Niko Neugebauer n.neugebauer@oh22.net or follow @NikoNeugebauer