SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
SQL Server and MicroStrategy: Functional
Overview Including Recommendations for
Performance Optimization
MicroStrategy World 2016
Technical Integration with Microsoft SQL Server
Microsoft SQL Server is a data platform for analytical and transactional operations
• Microsoft offers a rich family of relational database products in the
SQL Server family
• This session discusses the integration with
• Microsoft SQL Server
• Microsoft SQL Database on Cloud/Microsoft Azure
• MicroStrategy offers a different set of optimizations for the following
products
• Microsoft SQL Server Parallel Data Warehouse
• Microsoft Analytics Platform System
• Microsoft SQL Server Analysis Services
MicroStrategy Is Most Commonly Used To Send Analytical Queries to
Microsoft SQL Server
Analytical queries have specific technical characteristics that differentiate them from
operational queries
• Analytical queries involve processing of massive amounts of data
o Accessing large data volume
o Processing massive data volume
• Challenge: Achieve interactive response times
• Microsoft SQL Server offers some key features to help with that:
o Compression
o Partitioning
o In-memory columnstore
o In-memory OLTP, etc.
MicroStrategy Data Access Workflows
There are numerous ways for MicroStrategy to interact with Microsoft SQL Server
• Adhoc Schema
o For Analysts familiar with data in
database
o Schema is created automatically on
the fly
o Optimal time-to-value
• Modeled Schema
o BI Architect creates logical model of
data in MicroStrategy
o Analyst or Consumers use model
objects (attributes and metrics) to
express their analytical needs
o MicroStrategy generates translated to
multi-pass SQL to database
• Live Connect
o User actions result in interactive queries
against data source
o Good for frequently changing data
• In-Memory Dataset
o Dataset is imported from database into Multi-
dimensional In-Memory
o Can improve performance and user scale
accessing less frequently updated data sets
Many Integration Points Tackle Common Challenges
• SQL Server specific SQL
Syntax
o Ordered Analytic (OLAP) functions
o CASE expressions
o Full outer joins
o Set operators
o Sub queries
• Multi-pass SQL for analytical
sophistication
o Use of temporary tables or derived
tables
o Indexing
o MicroStrategy Parallel SQL Execution
• Support for key SQL Server
features
o Parallel Query Execution
o Indexed Views
o Clustered Columnstore Indexes
o Compression
o Partitioning
o Data level security (Pass-through auth)
o SQL Server Linked Servers
o Integration with Table-Valued User-Defined
functions
o Querying XML data
• Extensions to SQL Server
functionality
o Aggregate awareness with physical
summary tables
o Middle-tier computation of calculations not
available in SQL Server
o Middle-tier caching via Intelligent Cubes
o Report caching
MicroStrategy Generates SQL Server-Specific Syntax
Takes advantage of SQL Server’s stack of rich analytics
Push down 120 + Functions
• Mathematical,
• String,
• Statistical,
• Date-Time functions
• 20+ OLAP functions
20+ SQL-Server specific tunable settings
• Full outer joins,
• Set Operators,
• Implicit/Explicit Table Creation Type,
• Query banding,
• Indexing,
• Sub-Query Type, etc.
Multi-Pass SQL Helps Answer Complex Analytical Questions
Choice of Intermediate tables have a significant impact on Query Performance
SELECT …
INTO
##ZZSP00
FROM …
GROUP BY …
SELECT …
INTO ##ZZSP01
FROM …
GROUP BY …
SELECT …
FROM
##ZZSP00 join
## ZZSP01
ON (…
GROUP BY …
MicroStrategy offers multiple
approaches for Intermediate
tables
Default: Global or True temporary
table
A simple configuration setting
allows switching:
VLDB: Intermediate Table Type
Intermediate result sets are created, populated
and dropped by MicroStrategy.
Global temporary tables, indicated with the “##”
prefix, are created in the tempdb and last for only
one session
Indexes On Large Temp Tables Improve Performance
Report level setting creates secondary index on Intermediate Tables
In-memory columnstore Indexes
‘???’ is a MicroStrategy wildcard that will be replaced with the name of the
MicroStrategy data mart table
CREATE CLUSTERED COLUMNSTORE INDEX cci_??? ON ???
Executing multiple passes in parallel in MicroStrategy
Get the most out of the hardware you already have!
• Standard Edition only uses single core to process any given query – analytical queries are often
CPU bound
• MicroStrategy’s “Parallel Query Execution” identifies the passes in a multi-pass SQL job that don’t
depend on each other and can be safely submitted in parallel.
• By doing so the hardware resources on a Standard Edition SQL Server can be better utilized.
Required VLDB Settings to enable this:
• Query Optimizations -> Parallel Query Execution -> Enable
• Parallel Query Execution Improvement Estimate in SQL View -> Enable
• Maximum Queries per Report -> 2 (default)
Utilize Multiple Cores for SQL Query Execution
Parallel SQL Execution can improve performance for SQL Server Enterprise Edition
SQL Server Enterprise offers
Parallelism feature via a server
setting:
Max Degree of Parallelism:
Should be no more than the
number of cores available to the
SQL Server instance.
Improve query speed dramatically using Indexed Views
SQL Server can take advantage of pre-aggregated data structures
• Indexed views are a SQL Server feature that
provides for the creation, maintenance, and
automatic navigation of aggregated data
• Pre-summarization allows the database to
perform row access and aggregation ahead of
time.
• Any SQL generated by an end user request will
be submitted to SQL Server where the optimizer
may choose to substitute the Indexed View for
the base table
• A MicroStrategy BI architect can also use the
Indexed View as summary table resulting in
simpler SQL queries
Querying XML Data in SQL Server
SQL Server “methods” can be used by MicroStrategy to display results
• MicroStrategy SQL can generate the EXIST syntax via a Filter using
ApplyComparison: ApplyComparison("#0.exist(‘/book/author[ln=""Doe""]’) =
1", Book@XML)
• MicroStrategy can display elements from XML data using QUERY and VALUE
methods: ApplySimple(“cast(#0.query(‘/book/title’) as
nvarchar(250))”,Book@XML)
• Max(ApplySimple("#0.value('/book[1]/title[1]', 'varchar(100)')", Book@XML))
{~}
Integration with Table-Valued User-Defined functions
Users can provide input parameters to answer analytical questions of the data warehouse
• SQL Server supports table-valued user-defined functions in which users
can provide input parameters to answer analytical questions of the data
warehouse.
• Table-valued functions are similar to stored procedures but unlike stored
procedures can be referenced in a FROM clause much like a table.
Use a table-valued user-defined function in MicroStrategy with a Free Form SQL
report:
Access Data To/From Linked Servers
SQL Server Feature
• Access data just not stored on the local SQL Server. The remote linked
servers can be other SQL Server databases or non-SQL Server databases.
• The SQL Server syntax for referencing a table in a linked server is:
LinkedServerName..TableOwnerName.TableName
• Example: If your linked server name is SQL2 and you have a table named
LU_PROD owned by SCOTT, a view in the SQL Server database can be
created as this:
CREATE VIEW LU_PROD AS
SELECT *
FROM SQL2..SCOTT.LU_PROD
Use Pass-through Authentication to Log On Securely
Single-Sign-On using Kerberos Integrated Authentication
• Microsoft (in its OS as well as SQL Server) configures Kerberos Integrated
Authentication as default authentication mechanism.
• Benefit – no unnecessary and potentially unsecure UID/PWD
MicroStrategy
Intelligence
Server
Synchronization
MicroStrategy
Web Client Directory
UID/PWD entered
Pass credentials
Authenticated against user store Web Server
(MicroStrategy Web)
Validate Token
User Info passed
Profile Passed
3
1 2 4
Some customers implement data security on the database layer, which requires
MicroStrategy to run queries under the end user account. MicroStrategy supported this for
a long time using UID/PWD.
• MicroStrategy supports integrated authentication to SQL Server – in the typical setup
MicroStrategy will connect using the security context (user account) Intelligence Server is
running at and execute all queries under that account.
• This allows efficient report caching on the middle tier.
SSO Available with Intelligence Server on Linux/Windows
MicroStrategy 10.2 enables SSO with Intelligence Server on Linux
• Starting with MicroStrategy Secure Enterprise 10.2, we brought along
a huge enhancement.
• Now users will be able to use Kerberos integrated authentication to
access databases when the MicroStrategy Intelligence Server is
running on both Linux/Unix operating systems and Windows operating
system
• Refer to the MicroStrategy Community website
http://community.microstrategy.com : TN272948 for more details.
Summary
• MicroStrategy and Microsoft continue to have a strong partnership. We
work together to further optimize our integration to provide a seamless
reporting experience
Call-to-Action:
• Refer to existing best practices for developing MicroStrategy applications
apply. Please see our detailed integration paper in the MicroStrategy
Community Knowledge Base: TN48017
• Make sure to take advantage of DB features designed for analytical
workloads
• Look for best practices to take advantage of data source strengths in
MicroStrategy Community
• MicroStrategy customer requests / requirements should be submitted to
the http://community.microstrategy.com website under the “Ideas”
section.
• Contact Information: Farah Omer – fomer@microstrategy.com
Questions

Más contenido relacionado

La actualidad más candente

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 2016Antonios Chatzipavlis
 
SQL Server 2016: Just a Few of Our DBA's Favorite Things
SQL Server 2016: Just a Few of Our DBA's Favorite ThingsSQL Server 2016: Just a Few of Our DBA's Favorite Things
SQL Server 2016: Just a Few of Our DBA's Favorite ThingsHostway|HOSTING
 
Oracle data integrator project
Oracle data integrator projectOracle data integrator project
Oracle data integrator projectAmit Sharma
 
Everything you need to know about SQL Server 2016
Everything you need to know about SQL Server 2016Everything you need to know about SQL Server 2016
Everything you need to know about SQL Server 2016Softchoice Corporation
 
Advanced integration services on microsoft ssis 1
Advanced integration services on microsoft ssis 1Advanced integration services on microsoft ssis 1
Advanced integration services on microsoft ssis 1Skillwise Group
 
Oracle Autonomous Database for Developers
Oracle Autonomous Database for DevelopersOracle Autonomous Database for Developers
Oracle Autonomous Database for DevelopersTércio Costa
 
Introduction to sql database on azure
Introduction to sql database on azureIntroduction to sql database on azure
Introduction to sql database on azureAntonios Chatzipavlis
 
Oracle Query Optimizer - An Introduction
Oracle Query Optimizer - An IntroductionOracle Query Optimizer - An Introduction
Oracle Query Optimizer - An Introductionadryanbub
 
SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Featuresaminmesbahi
 
ABCs of CDC with SSIS 2012
ABCs of CDC with SSIS 2012ABCs of CDC with SSIS 2012
ABCs of CDC with SSIS 2012Steve Wake
 
How Clean is your Database? Data Scrubbing for all Skill Sets
How Clean is your Database? Data Scrubbing for all Skill SetsHow Clean is your Database? Data Scrubbing for all Skill Sets
How Clean is your Database? Data Scrubbing for all Skill SetsChad Petrovay
 
oracle data integrator training | oracle data integrator training videos | or...
oracle data integrator training | oracle data integrator training videos | or...oracle data integrator training | oracle data integrator training videos | or...
oracle data integrator training | oracle data integrator training videos | or...Nancy Thomas
 
Stretch Database
Stretch DatabaseStretch Database
Stretch DatabaseSolidQ
 
What's new in SQL Server 2016
What's new in SQL Server 2016What's new in SQL Server 2016
What's new in SQL Server 2016Onomi
 
Building Data Warehouse in SQL Server
Building Data Warehouse in SQL ServerBuilding Data Warehouse in SQL Server
Building Data Warehouse in SQL ServerAntonios Chatzipavlis
 
Query Store and live Query Statistics
Query Store and live Query StatisticsQuery Store and live Query Statistics
Query Store and live Query StatisticsSolidQ
 

La actualidad más candente (20)

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
 
SQL Server 2016: Just a Few of Our DBA's Favorite Things
SQL Server 2016: Just a Few of Our DBA's Favorite ThingsSQL Server 2016: Just a Few of Our DBA's Favorite Things
SQL Server 2016: Just a Few of Our DBA's Favorite Things
 
Auditing Data Access in SQL Server
Auditing Data Access in SQL ServerAuditing Data Access in SQL Server
Auditing Data Access in SQL Server
 
Oracle data integrator project
Oracle data integrator projectOracle data integrator project
Oracle data integrator project
 
Everything you need to know about SQL Server 2016
Everything you need to know about SQL Server 2016Everything you need to know about SQL Server 2016
Everything you need to know about SQL Server 2016
 
Row level security
Row level securityRow level security
Row level security
 
Advanced integration services on microsoft ssis 1
Advanced integration services on microsoft ssis 1Advanced integration services on microsoft ssis 1
Advanced integration services on microsoft ssis 1
 
Oracle Autonomous Database for Developers
Oracle Autonomous Database for DevelopersOracle Autonomous Database for Developers
Oracle Autonomous Database for Developers
 
Introduction to sql database on azure
Introduction to sql database on azureIntroduction to sql database on azure
Introduction to sql database on azure
 
Oracle Query Optimizer - An Introduction
Oracle Query Optimizer - An IntroductionOracle Query Optimizer - An Introduction
Oracle Query Optimizer - An Introduction
 
SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Features
 
ABCs of CDC with SSIS 2012
ABCs of CDC with SSIS 2012ABCs of CDC with SSIS 2012
ABCs of CDC with SSIS 2012
 
Introduction to azure document db
Introduction to azure document dbIntroduction to azure document db
Introduction to azure document db
 
How Clean is your Database? Data Scrubbing for all Skill Sets
How Clean is your Database? Data Scrubbing for all Skill SetsHow Clean is your Database? Data Scrubbing for all Skill Sets
How Clean is your Database? Data Scrubbing for all Skill Sets
 
oracle data integrator training | oracle data integrator training videos | or...
oracle data integrator training | oracle data integrator training videos | or...oracle data integrator training | oracle data integrator training videos | or...
oracle data integrator training | oracle data integrator training videos | or...
 
Stretch Database
Stretch DatabaseStretch Database
Stretch Database
 
What's new in SQL Server 2016
What's new in SQL Server 2016What's new in SQL Server 2016
What's new in SQL Server 2016
 
Odi ireland rittman
Odi ireland rittmanOdi ireland rittman
Odi ireland rittman
 
Building Data Warehouse in SQL Server
Building Data Warehouse in SQL ServerBuilding Data Warehouse in SQL Server
Building Data Warehouse in SQL Server
 
Query Store and live Query Statistics
Query Store and live Query StatisticsQuery Store and live Query Statistics
Query Store and live Query Statistics
 

Destacado

Kudavi 2.10.2016
Kudavi 2.10.2016Kudavi 2.10.2016
Kudavi 2.10.2016Tom Currier
 
Slideshow by RLG
Slideshow by RLGSlideshow by RLG
Slideshow by RLGmicrobe6163
 
Identityofthings amitjasuj av10
Identityofthings amitjasuj av10Identityofthings amitjasuj av10
Identityofthings amitjasuj av10OracleIDM
 
Direct Marketing - The Paradigm Shift
Direct Marketing - The Paradigm Shift Direct Marketing - The Paradigm Shift
Direct Marketing - The Paradigm Shift Yellow Umbrella
 
Nclb slideshare exp
Nclb slideshare expNclb slideshare exp
Nclb slideshare expMaclf
 
Business Innovation, CSR and Competitive Advantage: Strategic pathways to value
Business Innovation, CSR and Competitive Advantage: Strategic pathways to valueBusiness Innovation, CSR and Competitive Advantage: Strategic pathways to value
Business Innovation, CSR and Competitive Advantage: Strategic pathways to valueWayne Dunn
 
Government - recommendations from AIGLIA2014
Government - recommendations from AIGLIA2014Government - recommendations from AIGLIA2014
Government - recommendations from AIGLIA2014futureagricultures
 
Распространенные ошибки применения баз данных
Распространенные ошибки применения баз данныхРаспространенные ошибки применения баз данных
Распространенные ошибки применения баз данныхSergey Xek
 
Con8833 access at scale for hundreds of millions of users final
Con8833 access at scale for hundreds of millions of users   finalCon8833 access at scale for hundreds of millions of users   final
Con8833 access at scale for hundreds of millions of users finalOracleIDM
 
Grammabook2finished
Grammabook2finishedGrammabook2finished
Grammabook2finishedraquel63485
 
Imágenes para el_wiki_sistema_nervioso
Imágenes para el_wiki_sistema_nerviosoImágenes para el_wiki_sistema_nervioso
Imágenes para el_wiki_sistema_nerviosojessieunam
 

Destacado (20)

Kudavi 2.10.2016
Kudavi 2.10.2016Kudavi 2.10.2016
Kudavi 2.10.2016
 
Slideshow by RLG
Slideshow by RLGSlideshow by RLG
Slideshow by RLG
 
1 5
1 51 5
1 5
 
3words pp
3words pp3words pp
3words pp
 
Test
TestTest
Test
 
Identityofthings amitjasuj av10
Identityofthings amitjasuj av10Identityofthings amitjasuj av10
Identityofthings amitjasuj av10
 
Kudavi 3.3.2016
Kudavi 3.3.2016Kudavi 3.3.2016
Kudavi 3.3.2016
 
Question 1
Question 1Question 1
Question 1
 
Direct Marketing - The Paradigm Shift
Direct Marketing - The Paradigm Shift Direct Marketing - The Paradigm Shift
Direct Marketing - The Paradigm Shift
 
Nclb slideshare exp
Nclb slideshare expNclb slideshare exp
Nclb slideshare exp
 
Business Innovation, CSR and Competitive Advantage: Strategic pathways to value
Business Innovation, CSR and Competitive Advantage: Strategic pathways to valueBusiness Innovation, CSR and Competitive Advantage: Strategic pathways to value
Business Innovation, CSR and Competitive Advantage: Strategic pathways to value
 
長野市地域きらめき隊 2016.02.02
長野市地域きらめき隊 2016.02.02長野市地域きらめき隊 2016.02.02
長野市地域きらめき隊 2016.02.02
 
Government - recommendations from AIGLIA2014
Government - recommendations from AIGLIA2014Government - recommendations from AIGLIA2014
Government - recommendations from AIGLIA2014
 
Распространенные ошибки применения баз данных
Распространенные ошибки применения баз данныхРаспространенные ошибки применения баз данных
Распространенные ошибки применения баз данных
 
Con8833 access at scale for hundreds of millions of users final
Con8833 access at scale for hundreds of millions of users   finalCon8833 access at scale for hundreds of millions of users   final
Con8833 access at scale for hundreds of millions of users final
 
Egoera: La economía de Bizkaia - Diciembre 2015
Egoera: La economía de Bizkaia - Diciembre 2015Egoera: La economía de Bizkaia - Diciembre 2015
Egoera: La economía de Bizkaia - Diciembre 2015
 
市長直轄プロジェクトの設置 2013.11.20.
市長直轄プロジェクトの設置 2013.11.20.市長直轄プロジェクトの設置 2013.11.20.
市長直轄プロジェクトの設置 2013.11.20.
 
Grammabook2finished
Grammabook2finishedGrammabook2finished
Grammabook2finished
 
Imágenes para el_wiki_sistema_nervioso
Imágenes para el_wiki_sistema_nerviosoImágenes para el_wiki_sistema_nervioso
Imágenes para el_wiki_sistema_nervioso
 
Prueba power
Prueba powerPrueba power
Prueba power
 

Similar a World2016_T5_S5_SQLServerFunctionalOverview

Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL AzureShy Engelberg
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersTobias Koprowski
 
New features of sql server 2016 bi features
New features of sql server 2016 bi featuresNew features of sql server 2016 bi features
New features of sql server 2016 bi featuresChris Testa-O'Neill
 
Tech-Spark: Azure SQL Databases
Tech-Spark: Azure SQL DatabasesTech-Spark: Azure SQL Databases
Tech-Spark: Azure SQL DatabasesRalph Attard
 
Azure - Data Platform
Azure - Data PlatformAzure - Data Platform
Azure - Data Platformgiventocode
 
Session 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian MalbeufSession 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian MalbeufCTE Solutions Inc.
 
Azure SQL Database
Azure SQL Database Azure SQL Database
Azure SQL Database nj-azure
 
Modernizing your database with SQL Server 2019
Modernizing your database with SQL Server 2019Modernizing your database with SQL Server 2019
Modernizing your database with SQL Server 2019Antonios Chatzipavlis
 
05_DP_300T00A_Optimize.pptx
05_DP_300T00A_Optimize.pptx05_DP_300T00A_Optimize.pptx
05_DP_300T00A_Optimize.pptxKareemBullard1
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersMichael Rys
 
3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sqlŁukasz Grala
 
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft EngineerPLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft EngineerMarek Maśko
 
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloud
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloudKoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloud
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloudTobias Koprowski
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxSatishbabu Gunukula
 
SQL PPT.pptx
SQL PPT.pptxSQL PPT.pptx
SQL PPT.pptxKulbir4
 

Similar a World2016_T5_S5_SQLServerFunctionalOverview (20)

A to z for sql azure databases
A to z for sql azure databasesA to z for sql azure databases
A to z for sql azure databases
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL Azure
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
 
New features of sql server 2016 bi features
New features of sql server 2016 bi featuresNew features of sql server 2016 bi features
New features of sql server 2016 bi features
 
Introduction to Azure Data Lake
Introduction to Azure Data LakeIntroduction to Azure Data Lake
Introduction to Azure Data Lake
 
Tech-Spark: Azure SQL Databases
Tech-Spark: Azure SQL DatabasesTech-Spark: Azure SQL Databases
Tech-Spark: Azure SQL Databases
 
Azure - Data Platform
Azure - Data PlatformAzure - Data Platform
Azure - Data Platform
 
Session 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian MalbeufSession 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian Malbeuf
 
Azure SQL Database
Azure SQL Database Azure SQL Database
Azure SQL Database
 
Modernizing your database with SQL Server 2019
Modernizing your database with SQL Server 2019Modernizing your database with SQL Server 2019
Modernizing your database with SQL Server 2019
 
05_DP_300T00A_Optimize.pptx
05_DP_300T00A_Optimize.pptx05_DP_300T00A_Optimize.pptx
05_DP_300T00A_Optimize.pptx
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for Developers
 
3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql
 
Nadzor sql a
Nadzor sql aNadzor sql a
Nadzor sql a
 
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft EngineerPLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
PLSSUG - Troubleshoot SQL Server performance problems like a Microsoft Engineer
 
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloud
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloudKoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloud
KoprowskiT_SQLSat230_Rheinland_SQLAzure-fromPlantoBackuptoCloud
 
Azure SQL Data Warehouse
Azure SQL Data Warehouse Azure SQL Data Warehouse
Azure SQL Data Warehouse
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptx
 
SQL PPT.pptx
SQL PPT.pptxSQL PPT.pptx
SQL PPT.pptx
 
Taming the shrew Power BI
Taming the shrew Power BITaming the shrew Power BI
Taming the shrew Power BI
 

World2016_T5_S5_SQLServerFunctionalOverview

  • 1. SQL Server and MicroStrategy: Functional Overview Including Recommendations for Performance Optimization MicroStrategy World 2016
  • 2. Technical Integration with Microsoft SQL Server Microsoft SQL Server is a data platform for analytical and transactional operations • Microsoft offers a rich family of relational database products in the SQL Server family • This session discusses the integration with • Microsoft SQL Server • Microsoft SQL Database on Cloud/Microsoft Azure • MicroStrategy offers a different set of optimizations for the following products • Microsoft SQL Server Parallel Data Warehouse • Microsoft Analytics Platform System • Microsoft SQL Server Analysis Services
  • 3. MicroStrategy Is Most Commonly Used To Send Analytical Queries to Microsoft SQL Server Analytical queries have specific technical characteristics that differentiate them from operational queries • Analytical queries involve processing of massive amounts of data o Accessing large data volume o Processing massive data volume • Challenge: Achieve interactive response times • Microsoft SQL Server offers some key features to help with that: o Compression o Partitioning o In-memory columnstore o In-memory OLTP, etc.
  • 4. MicroStrategy Data Access Workflows There are numerous ways for MicroStrategy to interact with Microsoft SQL Server • Adhoc Schema o For Analysts familiar with data in database o Schema is created automatically on the fly o Optimal time-to-value • Modeled Schema o BI Architect creates logical model of data in MicroStrategy o Analyst or Consumers use model objects (attributes and metrics) to express their analytical needs o MicroStrategy generates translated to multi-pass SQL to database • Live Connect o User actions result in interactive queries against data source o Good for frequently changing data • In-Memory Dataset o Dataset is imported from database into Multi- dimensional In-Memory o Can improve performance and user scale accessing less frequently updated data sets
  • 5. Many Integration Points Tackle Common Challenges • SQL Server specific SQL Syntax o Ordered Analytic (OLAP) functions o CASE expressions o Full outer joins o Set operators o Sub queries • Multi-pass SQL for analytical sophistication o Use of temporary tables or derived tables o Indexing o MicroStrategy Parallel SQL Execution • Support for key SQL Server features o Parallel Query Execution o Indexed Views o Clustered Columnstore Indexes o Compression o Partitioning o Data level security (Pass-through auth) o SQL Server Linked Servers o Integration with Table-Valued User-Defined functions o Querying XML data • Extensions to SQL Server functionality o Aggregate awareness with physical summary tables o Middle-tier computation of calculations not available in SQL Server o Middle-tier caching via Intelligent Cubes o Report caching
  • 6. MicroStrategy Generates SQL Server-Specific Syntax Takes advantage of SQL Server’s stack of rich analytics Push down 120 + Functions • Mathematical, • String, • Statistical, • Date-Time functions • 20+ OLAP functions 20+ SQL-Server specific tunable settings • Full outer joins, • Set Operators, • Implicit/Explicit Table Creation Type, • Query banding, • Indexing, • Sub-Query Type, etc.
  • 7. Multi-Pass SQL Helps Answer Complex Analytical Questions Choice of Intermediate tables have a significant impact on Query Performance SELECT … INTO ##ZZSP00 FROM … GROUP BY … SELECT … INTO ##ZZSP01 FROM … GROUP BY … SELECT … FROM ##ZZSP00 join ## ZZSP01 ON (… GROUP BY … MicroStrategy offers multiple approaches for Intermediate tables Default: Global or True temporary table A simple configuration setting allows switching: VLDB: Intermediate Table Type Intermediate result sets are created, populated and dropped by MicroStrategy. Global temporary tables, indicated with the “##” prefix, are created in the tempdb and last for only one session
  • 8. Indexes On Large Temp Tables Improve Performance Report level setting creates secondary index on Intermediate Tables In-memory columnstore Indexes ‘???’ is a MicroStrategy wildcard that will be replaced with the name of the MicroStrategy data mart table CREATE CLUSTERED COLUMNSTORE INDEX cci_??? ON ???
  • 9. Executing multiple passes in parallel in MicroStrategy Get the most out of the hardware you already have! • Standard Edition only uses single core to process any given query – analytical queries are often CPU bound • MicroStrategy’s “Parallel Query Execution” identifies the passes in a multi-pass SQL job that don’t depend on each other and can be safely submitted in parallel. • By doing so the hardware resources on a Standard Edition SQL Server can be better utilized. Required VLDB Settings to enable this: • Query Optimizations -> Parallel Query Execution -> Enable • Parallel Query Execution Improvement Estimate in SQL View -> Enable • Maximum Queries per Report -> 2 (default)
  • 10. Utilize Multiple Cores for SQL Query Execution Parallel SQL Execution can improve performance for SQL Server Enterprise Edition SQL Server Enterprise offers Parallelism feature via a server setting: Max Degree of Parallelism: Should be no more than the number of cores available to the SQL Server instance.
  • 11. Improve query speed dramatically using Indexed Views SQL Server can take advantage of pre-aggregated data structures • Indexed views are a SQL Server feature that provides for the creation, maintenance, and automatic navigation of aggregated data • Pre-summarization allows the database to perform row access and aggregation ahead of time. • Any SQL generated by an end user request will be submitted to SQL Server where the optimizer may choose to substitute the Indexed View for the base table • A MicroStrategy BI architect can also use the Indexed View as summary table resulting in simpler SQL queries
  • 12. Querying XML Data in SQL Server SQL Server “methods” can be used by MicroStrategy to display results • MicroStrategy SQL can generate the EXIST syntax via a Filter using ApplyComparison: ApplyComparison("#0.exist(‘/book/author[ln=""Doe""]’) = 1", Book@XML) • MicroStrategy can display elements from XML data using QUERY and VALUE methods: ApplySimple(“cast(#0.query(‘/book/title’) as nvarchar(250))”,Book@XML) • Max(ApplySimple("#0.value('/book[1]/title[1]', 'varchar(100)')", Book@XML)) {~}
  • 13. Integration with Table-Valued User-Defined functions Users can provide input parameters to answer analytical questions of the data warehouse • SQL Server supports table-valued user-defined functions in which users can provide input parameters to answer analytical questions of the data warehouse. • Table-valued functions are similar to stored procedures but unlike stored procedures can be referenced in a FROM clause much like a table. Use a table-valued user-defined function in MicroStrategy with a Free Form SQL report:
  • 14. Access Data To/From Linked Servers SQL Server Feature • Access data just not stored on the local SQL Server. The remote linked servers can be other SQL Server databases or non-SQL Server databases. • The SQL Server syntax for referencing a table in a linked server is: LinkedServerName..TableOwnerName.TableName • Example: If your linked server name is SQL2 and you have a table named LU_PROD owned by SCOTT, a view in the SQL Server database can be created as this: CREATE VIEW LU_PROD AS SELECT * FROM SQL2..SCOTT.LU_PROD
  • 15. Use Pass-through Authentication to Log On Securely Single-Sign-On using Kerberos Integrated Authentication • Microsoft (in its OS as well as SQL Server) configures Kerberos Integrated Authentication as default authentication mechanism. • Benefit – no unnecessary and potentially unsecure UID/PWD MicroStrategy Intelligence Server Synchronization MicroStrategy Web Client Directory UID/PWD entered Pass credentials Authenticated against user store Web Server (MicroStrategy Web) Validate Token User Info passed Profile Passed 3 1 2 4 Some customers implement data security on the database layer, which requires MicroStrategy to run queries under the end user account. MicroStrategy supported this for a long time using UID/PWD. • MicroStrategy supports integrated authentication to SQL Server – in the typical setup MicroStrategy will connect using the security context (user account) Intelligence Server is running at and execute all queries under that account. • This allows efficient report caching on the middle tier.
  • 16. SSO Available with Intelligence Server on Linux/Windows MicroStrategy 10.2 enables SSO with Intelligence Server on Linux • Starting with MicroStrategy Secure Enterprise 10.2, we brought along a huge enhancement. • Now users will be able to use Kerberos integrated authentication to access databases when the MicroStrategy Intelligence Server is running on both Linux/Unix operating systems and Windows operating system • Refer to the MicroStrategy Community website http://community.microstrategy.com : TN272948 for more details.
  • 17. Summary • MicroStrategy and Microsoft continue to have a strong partnership. We work together to further optimize our integration to provide a seamless reporting experience Call-to-Action: • Refer to existing best practices for developing MicroStrategy applications apply. Please see our detailed integration paper in the MicroStrategy Community Knowledge Base: TN48017 • Make sure to take advantage of DB features designed for analytical workloads • Look for best practices to take advantage of data source strengths in MicroStrategy Community • MicroStrategy customer requests / requirements should be submitted to the http://community.microstrategy.com website under the “Ideas” section. • Contact Information: Farah Omer – fomer@microstrategy.com