SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
#SQSummit
Novedades SQL 2016
Javier Loria
JLoria@solidq.com
/in/JavierSQL
@JavierSQL
In-Memory y ColumnStore
Index
Sponsors del SolidQ Summit Panamá
Agenda
• 09.00AM - 10.15AM
• Overview, In-Memory y ColumnStore
• 10-30AM - 11.45AM.
• Query Store-Always Encrypted-Row Level Security,
Dynamic Data Masking y StrechDb
• 12.00AM - 1.15PM.
• Polybase y Novedades SQL Azure y
• 2.30PM - 3.45PM
• HA & DR in SQL Server 2016
• 4.00PM - 5.15PM
• Novedades de SSRS-SSIS-SSAS
Microsoft
Data Platform
Relational Beyond Relational
On-premisesCloud
SQLServerAzure VM
Azure SQL DB
Azure SQL DW
AzureData Lake
HDInsight
DocumentDB
SQLServer
APS
SQLServer
PowerBI
Azure MachineLearning
Azure Data Factory
FederatedQuery
at massive scale
SQL Server 2016: Everything built-in
The above graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from Microsoft. Gartner does not endorse any
vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's
research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.
Consistent experience from on-premises to cloud
In-memoryacrossall workloads
built-inbuilt-in built-in built-in
TPC-H non-clustered results as of 04/06/15, 5/04/15, 4/15/14 and 11/25/13, respectively. http://www.tpc.org/tpch/results/tpch_perf_results.asp?resulttype=noncluster
National Institute of Standards and Technology Comprehensive Vulnerability Database update 10/2015
0
1
4
0 0
3
34
29
22
15
5
22
6
43
20
69
18
49
3
-80
-70
-60
-50
-40
-30
-20
-10
0
2010 2011 2012 2013 2014 2015
SQL Server Oracle MySQL2 SAP HANA
built-in
Microsoft Tableau Oracle
$120
$480
$2,230
Self-service BI per userTPC-H non-clustered 10TB
Oracle
is #4#2
SQL Server
#1
SQL Server
#3
SQL Server
built-in
Key issues
Complex implementation
Requirement of two servers
(both capital and operational
expenditures)
Data latency in analytics
More business demand that requires
real-time analytics
IIS Server
BI analysts
Capabilities and benefits
IIS Server
Capabilities
Runs analytics queries concurrently with operational
workload using same schema
Requires no application changes to run data
warehouse queries on In-Memory OLTP workload
Benefits
Minimal impact on OLTP workload
Offers best available performance and scalability
Offloads analytics workload to readable secondary
BI analysts
Real-time Operational Analytics targets the scenario
that has a single data source, such as an enterprise
resource planning (ERP) application, and makes it
possible to run both operational and analytics
workloads.
This doesn’t replace the need for
a separate data warehouse when:
Data from multiple sources must be integrated before
running the analytics workload
Extreme analytics performance using pre-aggregated
data, such as cubes, is required
IIS Server
OLTP workload
Demo
DISK Based tables
In-Memory OLTP integration and
application migration
Microsoft Confidential 1
Memory-optimized table
filegroup Data filegroup
SQL Server.exe
In-memory OLTP engine for memory-
optimized tables and indexes
TDS handler and session management
Natively compiled SPs
and schema
Buffer pool for tables and indexes
Proc/plan cache for ad-hoc T-SQL
and SPs
Transaction log
Query
interoperability
Non-durable
table T1 T4T3T2
T1 T4T3T2
T1 T4T3T2
T1 T4T3T2
Tables
Indexes
Interpreter for TSQL, query plans,
expressions
T1 T4T3T2
T1 T4T3T2
Checkpoint and recovery
Access methods
Parser,
Catalog,
Algebrizer,
Optimizer
In-Memory
OLTP Compiler
In-Memory
OLTP
component
Key
Existing SQL
component
Generated .dll
Client app
Create table DDL
CREATE TABLE [Customer](
[CustomerID] INT NOT NULL
PRIMARY KEY NONCLUSTERED HASH WITH (BUCKET_COUNT = 1000000),
[Name] NVARCHAR(250) NOT NULL
INDEX [IName] HASH WITH (BUCKET_COUNT = 1000000),
[CustomerSince] DATETIME NULL
)
WITH (MEMORY_OPTIMIZED = ON, DURABILITY = SCHEMA_AND_DATA);
This table is memory
optimized
This table is durable
Secondary indexes are
specified inline
Hash index
Memory-optimized table creation
CREATE TABLE DDL
Generate and compile
code
Produce DLL table
Load DLL table
Create procedure DDL
CREATE PROCEDURE [dbo].[InsertOrder] @id INT, @date DATETIME
WITH
NATIVE_COMPILATION,
SCHEMABINDING,
EXECUTE AS OWNER
AS
BEGIN ATOMIC
WITH
(TRANSACTION
ISOLATION LEVEL = SNAPSHOT,
LANGUAGE = 'us_english')
-- insert T-SQL here
END
This proc is natively
compiled
Native procs must be
schema-bound
Atomic blocks
• Create a transaction if
there is none
• Otherwise, create a
savepoint
Execution context is
required
Session settings are fixed at
create time
Procedure creation
CREATE PROC DDL
Optimize query
Generate and compile code
Produce procedure DLL
Load procedure DLL
Demo
In-Memory based tables
Performance gains
Microsoft Confidential 2
In-
Memory
OLTP
Compiler In-Memory
OLTP
component
Memory-optimized
table filegroup
Data filegroup
SQL Server.exe
In-Memory OLTP engine for
memory-optimized tables and
indexes
TDS handler and session management
Natively compiled
SPs and schema
Buffer pool for tables and
indexes
Proc/plan cache for ad-hoc T-
SQL and SPs
Client app
Transaction log
Interpreter for TSQL, query
plans, and expressions
Query
interop
Access methods
Parser,
Catalog,
Algebrizer,
Optimizer
10-30x more efficient
Reduced log bandwidth
and contention; log
latency remains
Checkpoints are
background sequential
IO
No improvements in
communication stack,
parameter passing, or
result set generation
Key
Existing SQL
component
Generated .dll
Create updatable non-clustered columnstore
index (NCCI) for analytics queries
Drop all other indexes that were created for
analytics
Maintain columnstore like any other index
Use Query Optimizer to choose columnstore
index where needed
Requires no application changes
Non-clustered columnstore index
B-tree index
Delta rowgroups
Non-clustered columnstore index
Deletebitmap
B-tree index
B-tree index
HOT
Delta
rowgroups
Non-clustered columnstore index
Control how long the data stays in delta
rowgroups
Example: for HOT/WARM (time based)
• < 6 hours – HOT (delta store)
OLTP workload
Use analytics queries to access both
columnstore and hot data transparently
Deletebitmap
Minimizing columnstore index overhead:
Compression Delay
B-tree index
HOT
Non-clustered columnstore index – filtered index
Deletebitmap
Delta rowgroups
Create columnstore only on cold data, using
filtered predicates to minimize maintenance
Minimizing columnstore index overhead:
Filtered Index
OLTP workload
Use analytics queries to access both
columnstore and hot data transparently
Using columnstore on in-memory tables
Requires no explicit delta rowgroup
Keeps rows (tail) not in columnstore In-Memory OLTP table
Requires no columnstore index overhead when operating on
tail
Uses background task to migrate rows from tail to
columnstore in chunks of 1 million rows
Uses Deleted Rows Table (DRT) to track deleted rows
Keeps columnstore data fully resident in memory and
persisted together with operational data
You can use Compression Delay to keep data longer in the
“tail” to eliminate impact on OLTP workload operating on the
“hot” data
Requires no application changes
nonclustered index
Hash index
In-Memory OLTP table
Deleted rows table
tail
28
Minimizing columnstore index overhead:
Readable secondary
Key points
Mission-critical real-time workloads typically configured
for high availability using AlwaysOn Availability Group
You can offload analytics to readable secondary replicas
AlwaysOn Availability GroupReal-time workload Analytics workload
También puedes preguntar tus
dudas con el hashtag
#SQSummit en Twitter
ADAPTIVE BI FRAMEWORK
Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de
analítica de negocio basada en nuestra experiencia:
•Diseña antes de construir
•Automatización de procesos por ETL
•Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción
de procesos específicos y plataformas de analítica de negocio
•Muy fácil de mantener
SOLIDQ FLEX SERVICES
Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas
sean estables. Desde una solución sencilla de monitorización, hasta un
servicio de atención de incidencias 24/7, mantenimiento proactivo,
resolución de problemas y línea de soporte.
Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas
importantes.
¡Gracias!

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Microsoft SQL Server 2016 - Everything Built In
Microsoft SQL Server 2016 - Everything Built InMicrosoft SQL Server 2016 - Everything Built In
Microsoft SQL Server 2016 - Everything Built In
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016
 
Mining the AWR: Alternative Methods for Identification of the Top SQLs (inclu...
Mining the AWR: Alternative Methods for Identification of the Top SQLs (inclu...Mining the AWR: Alternative Methods for Identification of the Top SQLs (inclu...
Mining the AWR: Alternative Methods for Identification of the Top SQLs (inclu...
 
Sql server 2016 new features
Sql server 2016 new featuresSql server 2016 new features
Sql server 2016 new features
 
Gab document db scaling database
Gab   document db scaling databaseGab   document db scaling database
Gab document db scaling database
 
SQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data ClusterSQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data Cluster
 
Designing and Implementing a Real-time Data Lake with Dynamically Changing Sc...
Designing and Implementing a Real-time Data Lake with Dynamically Changing Sc...Designing and Implementing a Real-time Data Lake with Dynamically Changing Sc...
Designing and Implementing a Real-time Data Lake with Dynamically Changing Sc...
 
How SQL Server 2016 SP1 Changes the Game
How SQL Server 2016 SP1 Changes the GameHow SQL Server 2016 SP1 Changes the Game
How SQL Server 2016 SP1 Changes the Game
 
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
 
Exploring sql server 2016
Exploring sql server 2016Exploring sql server 2016
Exploring sql server 2016
 
Columnstore improvements in SQL Server 2016
Columnstore improvements in SQL Server 2016Columnstore improvements in SQL Server 2016
Columnstore improvements in SQL Server 2016
 
SQL Server R Services: What Every SQL Professional Should Know
SQL Server R Services: What Every SQL Professional Should KnowSQL Server R Services: What Every SQL Professional Should Know
SQL Server R Services: What Every SQL Professional Should Know
 
Monitorando performance no Azure SQL Database
Monitorando performance no Azure SQL DatabaseMonitorando performance no Azure SQL Database
Monitorando performance no Azure SQL Database
 
Exploring T-SQL Anti-Patterns
Exploring T-SQL Anti-Patterns Exploring T-SQL Anti-Patterns
Exploring T-SQL Anti-Patterns
 
Brk3043 azure sql db intelligent cloud database for app developers - wash dc
Brk3043 azure sql db   intelligent cloud database for app developers - wash dcBrk3043 azure sql db   intelligent cloud database for app developers - wash dc
Brk3043 azure sql db intelligent cloud database for app developers - wash dc
 
Introduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAsIntroduction to SharePoint for SQLserver DBAs
Introduction to SharePoint for SQLserver DBAs
 
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca SartoriCCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
 
Clustered Columnstore - Deep Dive
Clustered Columnstore - Deep DiveClustered Columnstore - Deep Dive
Clustered Columnstore - Deep Dive
 
SQL Server Deployments made easy with DACPAC
SQL Server Deployments made easy with DACPACSQL Server Deployments made easy with DACPAC
SQL Server Deployments made easy with DACPAC
 
Cassandra in e-commerce
Cassandra in e-commerceCassandra in e-commerce
Cassandra in e-commerce
 

Ähnlich wie In-memory ColumnStore Index

Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Charley Hanania
 
1 extreme performance - part i
1   extreme performance - part i1   extreme performance - part i
1 extreme performance - part i
sqlserver.co.il
 

Ähnlich wie In-memory ColumnStore Index (20)

Introducing Azure SQL Data Warehouse
Introducing Azure SQL Data WarehouseIntroducing Azure SQL Data Warehouse
Introducing Azure SQL Data Warehouse
 
Migrating on premises workload to azure sql database
Migrating on premises workload to azure sql databaseMigrating on premises workload to azure sql database
Migrating on premises workload to azure sql database
 
Experience sql server on l inux and docker
Experience sql server on l inux and dockerExperience sql server on l inux and docker
Experience sql server on l inux and docker
 
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
 
A Complete BI Solution in About an Hour!
A Complete BI Solution in About an Hour!A Complete BI Solution in About an Hour!
A Complete BI Solution in About an Hour!
 
1 extreme performance - part i
1   extreme performance - part i1   extreme performance - part i
1 extreme performance - part i
 
Azure Data Factory ETL Patterns in the Cloud
Azure Data Factory ETL Patterns in the CloudAzure Data Factory ETL Patterns in the Cloud
Azure Data Factory ETL Patterns in the Cloud
 
Optimize SQL server performance for SharePoint
Optimize SQL server performance for SharePointOptimize SQL server performance for SharePoint
Optimize SQL server performance for SharePoint
 
Introduction to Azure Data Lake
Introduction to Azure Data LakeIntroduction to Azure Data Lake
Introduction to Azure Data Lake
 
Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike Percy
 
SQL Engines for Hadoop - The case for Impala
SQL Engines for Hadoop - The case for ImpalaSQL Engines for Hadoop - The case for Impala
SQL Engines for Hadoop - The case for Impala
 
Ralph Kemperdick – IT-Tage 2015 – Microsoft Azure als Datenplattform
Ralph Kemperdick – IT-Tage 2015 – Microsoft Azure als DatenplattformRalph Kemperdick – IT-Tage 2015 – Microsoft Azure als Datenplattform
Ralph Kemperdick – IT-Tage 2015 – Microsoft Azure als Datenplattform
 
SQL Saturday Redmond 2019 ETL Patterns in the Cloud
SQL Saturday Redmond 2019 ETL Patterns in the CloudSQL Saturday Redmond 2019 ETL Patterns in the Cloud
SQL Saturday Redmond 2019 ETL Patterns in the Cloud
 
What's New in Apache Hive 3.0?
What's New in Apache Hive 3.0?What's New in Apache Hive 3.0?
What's New in Apache Hive 3.0?
 
What's New in Apache Hive 3.0 - Tokyo
What's New in Apache Hive 3.0 - TokyoWhat's New in Apache Hive 3.0 - Tokyo
What's New in Apache Hive 3.0 - Tokyo
 
Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013
 
Spark + AI Summit 2020 イベント概要
Spark + AI Summit 2020 イベント概要Spark + AI Summit 2020 イベント概要
Spark + AI Summit 2020 イベント概要
 
What’s new in SQL Server 2017
What’s new in SQL Server 2017What’s new in SQL Server 2017
What’s new in SQL Server 2017
 
QuerySurge Slide Deck for Big Data Testing Webinar
QuerySurge Slide Deck for Big Data Testing WebinarQuerySurge Slide Deck for Big Data Testing Webinar
QuerySurge Slide Deck for Big Data Testing Webinar
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL Azure
 

Mehr von SolidQ

Mehr von SolidQ (20)

SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration ServicesSolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
 
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLSSolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
 
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
 
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
 
SolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantesSolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantes
 
Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?
 
SQL Server 2017 en Linux
SQL Server 2017 en LinuxSQL Server 2017 en Linux
SQL Server 2017 en Linux
 
Columnstore en la vida real
Columnstore en la vida realColumnstore en la vida real
Columnstore en la vida real
 
PowerApprízate
PowerApprízatePowerApprízate
PowerApprízate
 
Jugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocksJugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocks
 
Analizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BIAnalizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BI
 
Mantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para DummiesMantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para Dummies
 
R en relacional
R en relacionalR en relacional
R en relacional
 
Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!
 
Arquitecturas lambda en Azure
Arquitecturas lambda en AzureArquitecturas lambda en Azure
Arquitecturas lambda en Azure
 
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
 
BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018
 
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
 
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
 
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

In-memory ColumnStore Index

  • 1. #SQSummit Novedades SQL 2016 Javier Loria JLoria@solidq.com /in/JavierSQL @JavierSQL In-Memory y ColumnStore Index
  • 2. Sponsors del SolidQ Summit Panamá
  • 3. Agenda • 09.00AM - 10.15AM • Overview, In-Memory y ColumnStore • 10-30AM - 11.45AM. • Query Store-Always Encrypted-Row Level Security, Dynamic Data Masking y StrechDb • 12.00AM - 1.15PM. • Polybase y Novedades SQL Azure y • 2.30PM - 3.45PM • HA & DR in SQL Server 2016 • 4.00PM - 5.15PM • Novedades de SSRS-SSIS-SSAS
  • 4. Microsoft Data Platform Relational Beyond Relational On-premisesCloud SQLServerAzure VM Azure SQL DB Azure SQL DW AzureData Lake HDInsight DocumentDB SQLServer APS SQLServer PowerBI Azure MachineLearning Azure Data Factory FederatedQuery
  • 5. at massive scale SQL Server 2016: Everything built-in The above graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from Microsoft. Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose. Consistent experience from on-premises to cloud In-memoryacrossall workloads built-inbuilt-in built-in built-in TPC-H non-clustered results as of 04/06/15, 5/04/15, 4/15/14 and 11/25/13, respectively. http://www.tpc.org/tpch/results/tpch_perf_results.asp?resulttype=noncluster National Institute of Standards and Technology Comprehensive Vulnerability Database update 10/2015 0 1 4 0 0 3 34 29 22 15 5 22 6 43 20 69 18 49 3 -80 -70 -60 -50 -40 -30 -20 -10 0 2010 2011 2012 2013 2014 2015 SQL Server Oracle MySQL2 SAP HANA built-in Microsoft Tableau Oracle $120 $480 $2,230 Self-service BI per userTPC-H non-clustered 10TB Oracle is #4#2 SQL Server #1 SQL Server #3 SQL Server built-in
  • 6.
  • 7. Key issues Complex implementation Requirement of two servers (both capital and operational expenditures) Data latency in analytics More business demand that requires real-time analytics IIS Server BI analysts
  • 8. Capabilities and benefits IIS Server Capabilities Runs analytics queries concurrently with operational workload using same schema Requires no application changes to run data warehouse queries on In-Memory OLTP workload Benefits Minimal impact on OLTP workload Offers best available performance and scalability Offloads analytics workload to readable secondary BI analysts
  • 9. Real-time Operational Analytics targets the scenario that has a single data source, such as an enterprise resource planning (ERP) application, and makes it possible to run both operational and analytics workloads. This doesn’t replace the need for a separate data warehouse when: Data from multiple sources must be integrated before running the analytics workload Extreme analytics performance using pre-aggregated data, such as cubes, is required IIS Server OLTP workload
  • 11. In-Memory OLTP integration and application migration Microsoft Confidential 1 Memory-optimized table filegroup Data filegroup SQL Server.exe In-memory OLTP engine for memory- optimized tables and indexes TDS handler and session management Natively compiled SPs and schema Buffer pool for tables and indexes Proc/plan cache for ad-hoc T-SQL and SPs Transaction log Query interoperability Non-durable table T1 T4T3T2 T1 T4T3T2 T1 T4T3T2 T1 T4T3T2 Tables Indexes Interpreter for TSQL, query plans, expressions T1 T4T3T2 T1 T4T3T2 Checkpoint and recovery Access methods Parser, Catalog, Algebrizer, Optimizer In-Memory OLTP Compiler In-Memory OLTP component Key Existing SQL component Generated .dll Client app
  • 12. Create table DDL CREATE TABLE [Customer]( [CustomerID] INT NOT NULL PRIMARY KEY NONCLUSTERED HASH WITH (BUCKET_COUNT = 1000000), [Name] NVARCHAR(250) NOT NULL INDEX [IName] HASH WITH (BUCKET_COUNT = 1000000), [CustomerSince] DATETIME NULL ) WITH (MEMORY_OPTIMIZED = ON, DURABILITY = SCHEMA_AND_DATA); This table is memory optimized This table is durable Secondary indexes are specified inline Hash index
  • 13. Memory-optimized table creation CREATE TABLE DDL Generate and compile code Produce DLL table Load DLL table
  • 14. Create procedure DDL CREATE PROCEDURE [dbo].[InsertOrder] @id INT, @date DATETIME WITH NATIVE_COMPILATION, SCHEMABINDING, EXECUTE AS OWNER AS BEGIN ATOMIC WITH (TRANSACTION ISOLATION LEVEL = SNAPSHOT, LANGUAGE = 'us_english') -- insert T-SQL here END This proc is natively compiled Native procs must be schema-bound Atomic blocks • Create a transaction if there is none • Otherwise, create a savepoint Execution context is required Session settings are fixed at create time
  • 15. Procedure creation CREATE PROC DDL Optimize query Generate and compile code Produce procedure DLL Load procedure DLL
  • 17. Performance gains Microsoft Confidential 2 In- Memory OLTP Compiler In-Memory OLTP component Memory-optimized table filegroup Data filegroup SQL Server.exe In-Memory OLTP engine for memory-optimized tables and indexes TDS handler and session management Natively compiled SPs and schema Buffer pool for tables and indexes Proc/plan cache for ad-hoc T- SQL and SPs Client app Transaction log Interpreter for TSQL, query plans, and expressions Query interop Access methods Parser, Catalog, Algebrizer, Optimizer 10-30x more efficient Reduced log bandwidth and contention; log latency remains Checkpoints are background sequential IO No improvements in communication stack, parameter passing, or result set generation Key Existing SQL component Generated .dll
  • 18. Create updatable non-clustered columnstore index (NCCI) for analytics queries Drop all other indexes that were created for analytics Maintain columnstore like any other index Use Query Optimizer to choose columnstore index where needed Requires no application changes Non-clustered columnstore index B-tree index Delta rowgroups Non-clustered columnstore index Deletebitmap B-tree index
  • 19. B-tree index HOT Delta rowgroups Non-clustered columnstore index Control how long the data stays in delta rowgroups Example: for HOT/WARM (time based) • < 6 hours – HOT (delta store) OLTP workload Use analytics queries to access both columnstore and hot data transparently Deletebitmap Minimizing columnstore index overhead: Compression Delay
  • 20. B-tree index HOT Non-clustered columnstore index – filtered index Deletebitmap Delta rowgroups Create columnstore only on cold data, using filtered predicates to minimize maintenance Minimizing columnstore index overhead: Filtered Index OLTP workload Use analytics queries to access both columnstore and hot data transparently
  • 21. Using columnstore on in-memory tables Requires no explicit delta rowgroup Keeps rows (tail) not in columnstore In-Memory OLTP table Requires no columnstore index overhead when operating on tail Uses background task to migrate rows from tail to columnstore in chunks of 1 million rows Uses Deleted Rows Table (DRT) to track deleted rows Keeps columnstore data fully resident in memory and persisted together with operational data You can use Compression Delay to keep data longer in the “tail” to eliminate impact on OLTP workload operating on the “hot” data Requires no application changes nonclustered index Hash index In-Memory OLTP table Deleted rows table tail
  • 22. 28 Minimizing columnstore index overhead: Readable secondary Key points Mission-critical real-time workloads typically configured for high availability using AlwaysOn Availability Group You can offload analytics to readable secondary replicas AlwaysOn Availability GroupReal-time workload Analytics workload
  • 23. También puedes preguntar tus dudas con el hashtag #SQSummit en Twitter ADAPTIVE BI FRAMEWORK Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de analítica de negocio basada en nuestra experiencia: •Diseña antes de construir •Automatización de procesos por ETL •Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción de procesos específicos y plataformas de analítica de negocio •Muy fácil de mantener SOLIDQ FLEX SERVICES Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas sean estables. Desde una solución sencilla de monitorización, hasta un servicio de atención de incidencias 24/7, mantenimiento proactivo, resolución de problemas y línea de soporte. Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas importantes. ¡Gracias!