SlideShare a Scribd company logo
Tools and Tips:
From Accidental to Efficient
Data Warehouse Developer
Cathrine Wilhelmsen
SQLSaturday Sacramento · July 23rd 2016
Cathrine Wilhelmsen
@cathrinew
cathrinew.net
Data Warehouse Architect
Business Intelligence Developer
once upon a time...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Sacramento)
how I felt…
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Sacramento)
how I want to be...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSaturday Sacramento)
ef·fi·cient
Performing or functioning in the best possible manner
with the least waste of time and effort
why?
SSMS
Queries
Biml for SSIS
what?
Tip #1: Visual Information
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?
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…
@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
Level Up Your Biml: Best Practices and Coding Techniques (TUGA IT 2016)
PDF
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Oslo)
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 Academy 2 - Lesson 5: Importing source metadata into Biml
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
Level Up Your Biml: Best Practices and Coding Techniques (TUGA IT 2016)
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Oslo)
Level Up Your Biml: Best Practices and Coding Techniques (NTK 2016)
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Minnesota)
Biml Academy 2 - Lesson 5: Importing source metadata into Biml

Viewers also liked (7)

PDF
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Sacrame...
PDF
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
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 (SQLSaturday Vienna)
PDF
Biml for Beginners: Speed up your SSIS development (Malta Microsoft Data Plat...
Level Up Your Biml: Best Practices and Coding Techniques (SQLSaturday Sacrame...
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
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 (SQLSaturday Vienna)
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 Sacramento) (20)

PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLBit...
PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (24 Hou...
PDF
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
PDF
Tools and Tips For Data Warehouse Developers (SQLGLA)
PDF
Tools and Tips For Data Warehouse Developers (SQLSaturday Slovenia)
PDF
10 sql tips
PDF
Brad McGehee Intepreting Execution Plans Mar09
PDF
Brad McGehee Intepreting Execution Plans Mar09
PDF
Find it. Fix it. Real-World SQL Tuning Cases with Karen Morton
PPT
SQL Server 2000 Research Series - Performance Tuning
PPTX
Geek Sync | Understand Indexes to Write Better Queries
PDF
Statistics and Indexes Internals
PDF
Essential SQL on SQL Server 2008 1st Edition Dr. Sikha Bagui
PPTX
SQL Server 2012 Best Practices
PDF
SQL Performance Solutions: Refactor Mercilessly, Index Wisely
PDF
Databse & Technology 2 | Connor McDonald | Managing Optimiser Statistics - A ...
PDF
Discovering the plan cache (#SQLSat211)
PPS
03 qmds2005 session03
PPS
07 qmds2005 session10
PPTX
Tips & Tricks SQL in the City Seattle 2014
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLBit...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (24 Hou...
Tools and Tips: From Accidental to Efficient Data Warehouse Developer (SQLSat...
Tools and Tips For Data Warehouse Developers (SQLGLA)
Tools and Tips For Data Warehouse Developers (SQLSaturday Slovenia)
10 sql tips
Brad McGehee Intepreting Execution Plans Mar09
Brad McGehee Intepreting Execution Plans Mar09
Find it. Fix it. Real-World SQL Tuning Cases with Karen Morton
SQL Server 2000 Research Series - Performance Tuning
Geek Sync | Understand Indexes to Write Better Queries
Statistics and Indexes Internals
Essential SQL on SQL Server 2008 1st Edition Dr. Sikha Bagui
SQL Server 2012 Best Practices
SQL Performance Solutions: Refactor Mercilessly, Index Wisely
Databse & Technology 2 | Connor McDonald | Managing Optimiser Statistics - A ...
Discovering the plan cache (#SQLSat211)
03 qmds2005 session03
07 qmds2005 session10
Tips & Tricks SQL in the City Seattle 2014
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
Introduction-to-Cloud-ComputingFinal.pptx
PPTX
Business Acumen Training GuidePresentation.pptx
PDF
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
PDF
Galatica Smart Energy Infrastructure Startup Pitch Deck
PPTX
Introduction to Knowledge Engineering Part 1
PDF
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
PPTX
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PPTX
Acceptance and paychological effects of mandatory extra coach I classes.pptx
PDF
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
PPTX
oil_refinery_comprehensive_20250804084928 (1).pptx
PPTX
05. PRACTICAL GUIDE TO MICROSOFT EXCEL.pptx
PDF
Introduction to Business Data Analytics.
PPT
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
PPTX
Supervised vs unsupervised machine learning algorithms
PPT
Chapter 2 METAL FORMINGhhhhhhhjjjjmmmmmmmmm
PPTX
Business Ppt On Nestle.pptx huunnnhhgfvu
PPT
Quality review (1)_presentation of this 21
PDF
Fluorescence-microscope_Botany_detailed content
Introduction-to-Cloud-ComputingFinal.pptx
Business Acumen Training GuidePresentation.pptx
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
Galatica Smart Energy Infrastructure Startup Pitch Deck
Introduction to Knowledge Engineering Part 1
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
Acceptance and paychological effects of mandatory extra coach I classes.pptx
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
oil_refinery_comprehensive_20250804084928 (1).pptx
05. PRACTICAL GUIDE TO MICROSOFT EXCEL.pptx
Introduction to Business Data Analytics.
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
Supervised vs unsupervised machine learning algorithms
Chapter 2 METAL FORMINGhhhhhhhjjjjmmmmmmmmm
Business Ppt On Nestle.pptx huunnnhhgfvu
Quality review (1)_presentation of this 21
Fluorescence-microscope_Botany_detailed content

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