SlideShare a Scribd company logo
Tools and Tips:
From Accidental to Efficient
Data Warehouse Developer
Cathrine Wilhelmsen
August 27th 2016
Primary sponsors
The others…
Cathrine Wilhelmsen
@cathrinew
cathrinew.net
Data Warehouse Architect
Business Intelligence Developer
Experience?
T-SQL?
SSIS?
you?
once upon a time...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg)
how I felt…
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg)
how I want to be...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg)
SSMS
Queries
Biml for SSIS
what?
But first…
PASS and the SQL Server Community
PASS Summit
SQLSaturdays
24 Hours of PASS
Local Chapters
Virtual Chapters
passsummit.com
sqlsaturday.com
24hoursofpass.com
sqlpass.org
sqlug.se
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg)
Tip #1: Visual Information
Connection Colors
Status Bar and Tab Text
Results in Separate Tab
Tab Groups - Vertical
Tab Groups - Horizontal
Split one query in two windows
Tip #2: Shortcuts
Query Shortcuts
Keyboard Shortcuts
Assign shortcuts
you frequently use
Remove shortcuts you
accidentally click
(no more "ooops")
msdn.microsoft.com/en-us/library/ms174205.aspx
HOME END
PG UP PG DNCTRL ALT
SHIFT TAB
Magic keys!
CTRL R
Show / Hide Query Results
ALTSHIFT ENTER
Toggle Full Screen
TABCTRL
Cycle through windows
CTRL U
Change database
SHIFTALT
Column / Multi-Line Editing
CTRL K CTRL C
Comment Line
CTRL K CTRL U
Uncomment Line
Comment / Uncomment
CTRL SHIFT V
Last 20 text items copied are
saved in memory
Cycle through them to paste
the text you need
Clipboard Ring
Tip #3: Search in SSMS
Free Tool: Redgate SQL Search
red-gate.com/products/sql-development/sql-search/
Free Tool: Redgate SQL Search
Redgate SQL Search
ApexSQL Search
SSMS Tools Pack (Licensed)
SSMS Boost
SQL Hunting Dog
red-gate.com
apexsql.com
ssmstoolspack.com
ssmsboost.com
sql-hunting-dog.com
Tools: Search in SSMS
Tip #4: Templates and Snippets
Template Browser
Drag & Drop Templates
Create Templates
CTRL ALT T
Templates
Replace Template Parameters with actual values
CTRL SHIFT M
Template Parameters
CTRL K CTRL X
Insert Snippet
CTRL K CTRL S
Surround With Snippet
Snippets
Redgate SQL Prompt (Licensed)
ApexSQL Complete / Refactor
SSMS Tools Pack (Licensed)
SSMS Boost
Poor Man's T-SQL Formatter
dbForge SQL Complete (Licensed)
SQL Formatter
red-gate.com
apexsql.com
ssmstoolspack.com
ssmsboost.com
poorsql.com
devart.com/dbforge
sql-format.com
Advanced Snippets and Formatting
Redgate SQL Prompt Demo
Tip #5: Registered Servers and
Multiserver Queries
Registered Servers
Save and group servers
Is the server running?
Multiserver Queries
View Registered Servers
CTRL ALT G
Manage services from SSMS
Multiserver Queries
Multiserver Queries
Tip #6: SARGable Queries
SARGable Queries
"The query can efficiently seek using an index to find
the rows searched for in WHERE or JOIN clauses"
Compare it to finding a person in a phone book
(…let's just pretend we still use phone books…)
SARGable Queries
Adama, Lee
Adama, William
Agathon, Karl
Baltar, Gaius
Dualla, Anastasia
Gaeta, Felix
Henderson, Cally
Roslin, Laura
Thrace, Kara
Tigh, Saul
Tyrol, Galen
Valerii, Sharon
Find all rows where Name starts with 'T'
SARGable Queries
Adama, Lee
Adama, William
Agathon, Karl
Baltar, Gaius
Dualla, Anastasia
Gaeta, Felix
Henderson, Cally
Roslin, Laura
Thrace, Kara
Tigh, Saul
Tyrol, Galen
Valerii, Sharon
Find all rows where Name starts with 'T'
Non-SARGable Queries
"The query has to scan each row in the table to find
the rows searched for in WHERE or JOIN clauses"
Compare it to finding a person in a phone book
(…let's just keep pretending we still use phone books…)
Non-SARGable Queries
Adama, Lee
Adama, William
Agathon, Karl
Baltar, Gaius
Dualla, Anastasia
Gaeta, Felix
Henderson, Cally
Roslin, Laura
Thrace, Kara
Tigh, Saul
Tyrol, Galen
Valerii, Sharon
Find all rows where Name contains 'al'
Non-SARGable Queries
Adama, Lee
Adama, William
Agathon, Karl
Baltar, Gaius
Dualla, Anastasia
Gaeta, Felix
Henderson, Cally
Roslin, Laura
Thrace, Kara
Tigh, Saul
Tyrol, Galen
Valerii, Sharon
Find all rows where Name contains 'al'
WHERE LEFT(Name,1,1) = 'T'
WHERE YEAR(EpisodeDate) = 2005
WHERE EpisodeDate >= '20050101'
AND EpisodeDate < '20060101'
SARGable or Non-SARGable?
WHERE LEFT(Name,1,1) = 'T'
WHERE YEAR(EpisodeDate) = 2005
WHERE EpisodeDate >= '20050101'
AND EpisodeDate < '20060101'
SARGable or Non-SARGable?
WHERE Name LIKE 'T%'
WHERE Name LIKE '%al%'
WHERE LEFT(Name,1,1) = 'T'
SARGable or Non-SARGable?
WHERE Name LIKE 'T%'
WHERE Name LIKE '%al%'
WHERE LEFT(Name,1,1) = 'T'
SARGable or Non-SARGable?
WHERE CAST(EpisodeDate AS DATE) = '20050114'
WHERE CONVERT(CHAR(6),EpisodeDate,112) = '200501'
WHERE YEAR(EpisodeDate) = 2005
WHERE EpisodeDate >= '20050101'
AND EpisodeDate < '20060101'
SARGable or Non-SARGable?
WHERE CAST(EpisodeDate AS DATE) = '20050114'
WHERE CONVERT(CHAR(6),EpisodeDate,112) = '200501'
WHERE YEAR(EpisodeDate) = 2005
WHERE EpisodeDate >= '20050101'
AND EpisodeDate < '20060101'
SARGable or Non-SARGable?
WHERE Survivors < 40000
WHERE @Survivors BETWEEN Survivors-1000
AND Survivors+1000
WHERE Survivors BETWEEN @Survivors-1000
AND @Survivors+1000
SARGable or Non-SARGable?
WHERE Survivors < 40000
WHERE @Survivors BETWEEN Survivors-1000
AND Survivors+1000
WHERE Survivors BETWEEN @Survivors-1000
AND @Survivors+1000
SARGable or Non-SARGable?
sqlbits.com/Sessions/Event7/Understanding_SARGability_to_make_your_queries_run_faster
Tip #7: Query Analysis
Execution Plans
Display Estimated Execution Plan
CTRL L
Include Actual Execution Plan
CTRL M
Execution Plans
See how a query will be executed:
Details in Tooltips
Details in Properties
Free Tool: SQL Sentry Plan Explorer
sqlsentry.com/products/plan-explorer
Free Tool: SQL Sentry Plan Explorer
answers.sqlperformance.com
red-gate.com/books
Free Book: SQL Server Execution Plans
by Grant Fritchey
Live Query Statistics
Include Live Query Statistics
Live Query Statistics
Include Live Query Statistics
Tip #8: Query Statistics
Statistics IO
SET STATISTICS IO OFF;
SET STATISTICS IO ON;
Statistics Time
SET STATISTICS TIME OFF;
SET STATISTICS TIME ON;
Statistics Time and IO
SET STATISTICS TIME, IO ON;
SET STATISTICS TIME, IO OFF;
Free Tool: Statistics Parser
statisticsparser.com
by Richie Rump
Client Statistics
Include Client Statistics
SHIFT SALT
Client Statistics
Compare multiple query executions:
Tip #9: Activity Monitoring
sqlblog.com/blogs/adam_machanic
Free Script: sp_WhoIsActive
By Adam Machanic
Free Script: sp_WhoIsActive
sqlblog.com/blogs/adam_machanic
By Adam Machanic
Tip #10: SSIS with Biml
…what do you need me to do after lunch?
Of course I can create 200 SSIS Packages!
Business Intelligence Markup Language
Easy to read and write XML language
Generate SSIS packages from metadata
What do you need?
Free add-in for SSDT
bidshelper.codeplex.com
…or you can use the new Biml tools
Free add-in for SSDT
varigence.com/bimlexpress
Free online Biml editor
bimlonline.com
Create many SSIS packages from one Biml file
How does it work?
Biml for SSIS demo
Where can I learn more?
Free online training
bimlscript.com
…BimlBreak the rest of the week 
Biml on Monday…
Evaluations
Raffle
@cathrinew
cathrinew.net
linkedin.com/in/cathrinewilhelmsen
hi@cathrinew.net
slideshare.net/cathrinewilhelmsen
Not enough details? Too fast? Don't worry!
cathrinew.net/efficient

More Related Content

PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (PASS W...
PDF
Featured snippet optimization by Fernando Angulo
PDF
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
PDF
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Sacrame...
PDF
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
PDF
Level Up Your Biml: Best Practices and Coding Techniques (TUGA IT 2016)
PDF
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Oslo)
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (PASS W...
Featured snippet optimization by Fernando Angulo
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Sacrame...
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Level Up Your Biml: Best Practices and Coding Techniques (TUGA IT 2016)
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Oslo)

Viewers also liked (7)

PDF
Level Up Your Biml: Best Practices and Coding Techniques (NTK 2016)
PDF
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Minnesota)
PDF
Biml for Beginners: Speed up your SSIS development (SQLSaturday Vienna)
PDF
Upgrading from SSIS Package Deployment to Project Deployment (SQLSaturday Den...
PDF
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
PDF
Biml for Beginners: Speed up your SSIS development (SQLBits XV)
PDF
Biml for Beginners: Speed up your SSIS development (Malta Microsoft Data Plat...
Level Up Your Biml: Best Practices and Coding Techniques (NTK 2016)
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Minnesota)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Vienna)
Upgrading from SSIS Package Deployment to Project Deployment (SQLSaturday Den...
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Biml for Beginners: Speed up your SSIS development (SQLBits XV)
Biml for Beginners: Speed up your SSIS development (Malta Microsoft Data Plat...
Ad

Similar to Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg) (20)

PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (24 Hou...
PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLBit...
PDF
Tools and Tips For Data Warehouse Developers (SQLSaturday Slovenia)
PDF
Tools and Tips For Data Warehouse Developers (SQLGLA)
PDF
Getting Started: Atlas Search Webinar
PPTX
It's Not You. It's Your Data Model.
PPTX
SQL PASS BAC - 60 reporting tips in 60 minutes
PDF
SQL Basic and conceptual Explained with Examples,Graphs, pictures etc
PPTX
Reading the .explain() Output
PPTX
The Key to Keys - Database Design
PPTX
CCM AlchemyAPI and Real-time Aggregation
PDF
Quantitative Methods for Lawyers - Class #14 - R Boot Camp - Part 1 - Profess...
PPTX
So MANY databases, which one do I pick?
PDF
Harnessing The Power of Search - Liferay DEVCON 2015, Darmstadt, Germany
PPTX
The Hidden Empires of Malware with TLS Certified Hypotheses and Machine Learning
PPTX
Sql server infernals
PDF
Sourcing demo Data Analyst in Sydney
PPT
Intro To TSQL - Unit 1
PDF
2013 11-06 lsr-dublin_m_hausenblas_solr as recommendation engine
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (24 Hou...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLBit...
Tools and Tips For Data Warehouse Developers (SQLSaturday Slovenia)
Tools and Tips For Data Warehouse Developers (SQLGLA)
Getting Started: Atlas Search Webinar
It's Not You. It's Your Data Model.
SQL PASS BAC - 60 reporting tips in 60 minutes
SQL Basic and conceptual Explained with Examples,Graphs, pictures etc
Reading the .explain() Output
The Key to Keys - Database Design
CCM AlchemyAPI and Real-time Aggregation
Quantitative Methods for Lawyers - Class #14 - R Boot Camp - Part 1 - Profess...
So MANY databases, which one do I pick?
Harnessing The Power of Search - Liferay DEVCON 2015, Darmstadt, Germany
The Hidden Empires of Malware with TLS Certified Hypotheses and Machine Learning
Sql server infernals
Sourcing demo Data Analyst in Sydney
Intro To TSQL - Unit 1
2013 11-06 lsr-dublin_m_hausenblas_solr as recommendation engine
Ad

More from Cathrine Wilhelmsen (20)

PDF
Fra utvikler til arkitekt: Skap din egen karrierevei ved å utvikle din person...
PDF
One Year in Fabric: Lessons Learned from Implementing Real-World Projects (PA...
PDF
Data Factory in Microsoft Fabric (MsBIP #82)
PDF
Getting Started: Data Factory in Microsoft Fabric (Microsoft Fabric Community...
PDF
Choosing Between Microsoft Fabric, Azure Synapse Analytics and Azure Data Fac...
PDF
Website Analytics in My Pocket using Microsoft Fabric (SQLBits 2024)
PDF
Data Integration using Data Factory in Microsoft Fabric (ESPC Microsoft Fabri...
PDF
Choosing between Fabric, Synapse and Databricks (Data Left Unattended 2023)
PDF
Data Integration with Data Factory (Microsoft Fabric Day Oslo 2023)
PDF
The Battle of the Data Transformation Tools (PASS Data Community Summit 2023)
PDF
Visually Transform Data in Azure Data Factory or Azure Synapse Analytics (PAS...
PDF
Building an End-to-End Solution in Microsoft Fabric: From Dataverse to Power ...
PDF
Website Analytics in my Pocket using Microsoft Fabric (AdaCon 2023)
PDF
Choosing Between Microsoft Fabric, Azure Synapse Analytics and Azure Data Fac...
PDF
Stressed, Depressed, or Burned Out? The Warning Signs You Shouldn't Ignore (D...
PDF
Stressed, Depressed, or Burned Out? The Warning Signs You Shouldn't Ignore (S...
PDF
"I can't keep up!" - Turning Discomfort into Personal Growth in a Fast-Paced ...
PDF
Lessons Learned: Implementing Azure Synapse Analytics in a Rapidly-Changing S...
PDF
6 Tips for Building Confidence as a Public Speaker (SQLBits 2022)
PDF
Lessons Learned: Understanding Pipeline Pricing in Azure Data Factory and Azu...
Fra utvikler til arkitekt: Skap din egen karrierevei ved å utvikle din person...
One Year in Fabric: Lessons Learned from Implementing Real-World Projects (PA...
Data Factory in Microsoft Fabric (MsBIP #82)
Getting Started: Data Factory in Microsoft Fabric (Microsoft Fabric Community...
Choosing Between Microsoft Fabric, Azure Synapse Analytics and Azure Data Fac...
Website Analytics in My Pocket using Microsoft Fabric (SQLBits 2024)
Data Integration using Data Factory in Microsoft Fabric (ESPC Microsoft Fabri...
Choosing between Fabric, Synapse and Databricks (Data Left Unattended 2023)
Data Integration with Data Factory (Microsoft Fabric Day Oslo 2023)
The Battle of the Data Transformation Tools (PASS Data Community Summit 2023)
Visually Transform Data in Azure Data Factory or Azure Synapse Analytics (PAS...
Building an End-to-End Solution in Microsoft Fabric: From Dataverse to Power ...
Website Analytics in my Pocket using Microsoft Fabric (AdaCon 2023)
Choosing Between Microsoft Fabric, Azure Synapse Analytics and Azure Data Fac...
Stressed, Depressed, or Burned Out? The Warning Signs You Shouldn't Ignore (D...
Stressed, Depressed, or Burned Out? The Warning Signs You Shouldn't Ignore (S...
"I can't keep up!" - Turning Discomfort into Personal Growth in a Fast-Paced ...
Lessons Learned: Implementing Azure Synapse Analytics in a Rapidly-Changing S...
6 Tips for Building Confidence as a Public Speaker (SQLBits 2022)
Lessons Learned: Understanding Pipeline Pricing in Azure Data Factory and Azu...

Recently uploaded (20)

PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PPT
Miokarditis (Inflamasi pada Otot Jantung)
PPTX
Business Ppt On Nestle.pptx huunnnhhgfvu
PPT
Chapter 2 METAL FORMINGhhhhhhhjjjjmmmmmmmmm
PPTX
Supervised vs unsupervised machine learning algorithms
PPTX
IBA_Chapter_11_Slides_Final_Accessible.pptx
PPTX
Moving the Public Sector (Government) to a Digital Adoption
PDF
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
PPTX
MODULE 8 - DISASTER risk PREPAREDNESS.pptx
PDF
Lecture1 pattern recognition............
PDF
Introduction to Business Data Analytics.
PPTX
Global journeys: estimating international migration
PPTX
Data_Analytics_and_PowerBI_Presentation.pptx
PPTX
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
PPTX
1_Introduction to advance data techniques.pptx
PPTX
Acceptance and paychological effects of mandatory extra coach I classes.pptx
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PDF
Foundation of Data Science unit number two notes
PPT
Reliability_Chapter_ presentation 1221.5784
PPTX
oil_refinery_comprehensive_20250804084928 (1).pptx
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
Miokarditis (Inflamasi pada Otot Jantung)
Business Ppt On Nestle.pptx huunnnhhgfvu
Chapter 2 METAL FORMINGhhhhhhhjjjjmmmmmmmmm
Supervised vs unsupervised machine learning algorithms
IBA_Chapter_11_Slides_Final_Accessible.pptx
Moving the Public Sector (Government) to a Digital Adoption
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
MODULE 8 - DISASTER risk PREPAREDNESS.pptx
Lecture1 pattern recognition............
Introduction to Business Data Analytics.
Global journeys: estimating international migration
Data_Analytics_and_PowerBI_Presentation.pptx
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
1_Introduction to advance data techniques.pptx
Acceptance and paychological effects of mandatory extra coach I classes.pptx
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
Foundation of Data Science unit number two notes
Reliability_Chapter_ presentation 1221.5784
oil_refinery_comprehensive_20250804084928 (1).pptx

Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Gothenburg)