SlideShare a Scribd company logo
1 of 24
Intelligent ETL with SQL Server Jyoti Gupta, Senior Presales Engineer, expressor software
About me 10 years of ETL experience Most of my career as an ETL Presales Engineer Currently at expressor software jgupta@expressor-software.com
Agenda ~40 minutes Modularity Abstraction  Modularity and abstraction in ETL ~10 minutes Q/A Wrap up
Topic 1: Modular Design
When you think of “modular” design, what do you think of? Snap ins Components Assembly Who remembers “units” knitwear?
Let’s Explore the Fast Food Example Basic Ingredients Basic toppings Menu Choice Hamburger Cheeseburger Cheese Hamburger Patty Double Cheeseburger Chicken Sandwich Hamburger Bun Grilled Chicken Breast Ranch Chicken Sandwich Chicken Sandwich w/Cheese Wrap Ranch Chicken Sandwich  w/Cheese Fish Filet Fish Sandwich Ranch Dressing Fish Wrap
Benefits of Modular Design Combinability 					= 	meet the demands of more consumers Adaptability					= 	earliest responder to changes in market 										conditions Efficiency						=	lower cost of product Consistency in (good) quality	= 	lowers perceived risk and lowers 											“barriers to entry”
Drawbacks of Modular Design Change one/change all is a double edged sword Module management Storing Organizing Versioning
Topic 2: Abstraction
What is abstraction? The thought process wherein ideas… 		are distanced…. 		from objects….
Abstractions simplify and organize Orange Orange Pumpkin Basketball
The process by which data and programs are defined with a representation similar to its meaning (semantics) Applies to Data Actions Abstraction in computer science
Data Abstraction
Action abstraction
Modularity and Abstraction in ETL
Overview of ETL What is ETL? Where does SQL Server fit in?
Modularity in ETL Which components of ETL apps can and should be modularized?
Data Abstraction in ETL Data type wrangling… ever felt like a cowboy/cowgirl trying to herd the unherdable?  Git along li’lnvarchar SQL Server: nvarchar ODBC: SQL_VARCHAR MySQL:  varchar PostgreSQL: character varying
Function Abstraction in ETL Think about using abstract functions. Does your transformation language support abstraction? Examples Lua anonymous functions and closures function makeaddfunc(x) return  function(y)  		return x + y 	end  end  plustwo= makeaddfunc(2)  C# anonymous function Func<int,int> foo = x => x*x;
Put it all together Modular, abstracted ETL programming environments: Modular connectivity objects Modular schema objects Modular data types that can be abstracted Modular functions that can be abstracted Build your applications like a fast food hamburger Mix n’ match applications are built efficiently
What else? Think about how you are designing your ETL applications How much of your code is dealing with data quality issues that have to be fixed manually? Null values Invalid values Invalid formats Missing values Data out of range or not in the proscribed range Find those errors first (and make fixing them someone else’s problem) It’s hard to predict the future, so adaptable and modular designs have long-terms benefits.
Conclusions and Deep Thoughts You’re doing something wonderful when you’re doing ETL! ETL is applied fundamental computer science.
Professional Association for SQL Server Thank you to our sponsor
Save 25%: Register by April 12th www.sqlpass.org/sqlrally May 11-13, Orlando, FL Register by March31st: save 40% and have the chance to win a cruise to Alaska!  “24HR11” code gets you $100 off www.sqlpass.org/summit Oct 11-14, Seattle, WA

More Related Content

Similar to 24 hoursofpassppt jyotigupta_spring2011_fixed

C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2
Hammad Rajjoub
 
London F-Sharp User Group : Don Syme on F# - 09/09/2010
London F-Sharp User Group : Don Syme on F# - 09/09/2010London F-Sharp User Group : Don Syme on F# - 09/09/2010
London F-Sharp User Group : Don Syme on F# - 09/09/2010
Skills Matter
 
Nt1310 Unit 3 Language Analysis
Nt1310 Unit 3 Language AnalysisNt1310 Unit 3 Language Analysis
Nt1310 Unit 3 Language Analysis
Nicole Gomez
 

Similar to 24 hoursofpassppt jyotigupta_spring2011_fixed (20)

Agile Development in .NET
Agile Development in .NETAgile Development in .NET
Agile Development in .NET
 
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
 
A CQRS Journey
A CQRS JourneyA CQRS Journey
A CQRS Journey
 
Functional Patterns for C++ Multithreading (C++ Dev Meetup Iasi)
Functional Patterns for C++ Multithreading (C++ Dev Meetup Iasi)Functional Patterns for C++ Multithreading (C++ Dev Meetup Iasi)
Functional Patterns for C++ Multithreading (C++ Dev Meetup Iasi)
 
A Pragmatic Approach
A Pragmatic ApproachA Pragmatic Approach
A Pragmatic Approach
 
C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2
 
C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2C:\Fakepath\Combating Software Entropy 2
C:\Fakepath\Combating Software Entropy 2
 
The Design, Evolution and Use of KernelF
The Design, Evolution and Use of KernelFThe Design, Evolution and Use of KernelF
The Design, Evolution and Use of KernelF
 
Architecting for Change: An Agile Approach
Architecting for Change: An Agile ApproachArchitecting for Change: An Agile Approach
Architecting for Change: An Agile Approach
 
Thoughtful Software Design
Thoughtful Software DesignThoughtful Software Design
Thoughtful Software Design
 
Using Automation to Improve Software Services
Using Automation to Improve Software ServicesUsing Automation to Improve Software Services
Using Automation to Improve Software Services
 
London F-Sharp User Group : Don Syme on F# - 09/09/2010
London F-Sharp User Group : Don Syme on F# - 09/09/2010London F-Sharp User Group : Don Syme on F# - 09/09/2010
London F-Sharp User Group : Don Syme on F# - 09/09/2010
 
An Introduction to Microservices
An Introduction to MicroservicesAn Introduction to Microservices
An Introduction to Microservices
 
Nt1310 Unit 3 Language Analysis
Nt1310 Unit 3 Language AnalysisNt1310 Unit 3 Language Analysis
Nt1310 Unit 3 Language Analysis
 
Architecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons LearnedArchitecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons Learned
 
Chhatarsha Singh
Chhatarsha SinghChhatarsha Singh
Chhatarsha Singh
 
Behavior Driven Development with AngularJS & Jasmine
Behavior Driven Development with AngularJS & JasmineBehavior Driven Development with AngularJS & Jasmine
Behavior Driven Development with AngularJS & Jasmine
 
Accelerating Angular Application Development with Third Party Code
Accelerating Angular Application Development with Third Party CodeAccelerating Angular Application Development with Third Party Code
Accelerating Angular Application Development with Third Party Code
 
Engineering Software and Software Lifecycle
Engineering Software and Software LifecycleEngineering Software and Software Lifecycle
Engineering Software and Software Lifecycle
 
CQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architectureCQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architecture
 

Recently uploaded

+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@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

+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...
 
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)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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?
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
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...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
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...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
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...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

24 hoursofpassppt jyotigupta_spring2011_fixed

  • 1. Intelligent ETL with SQL Server Jyoti Gupta, Senior Presales Engineer, expressor software
  • 2. About me 10 years of ETL experience Most of my career as an ETL Presales Engineer Currently at expressor software jgupta@expressor-software.com
  • 3. Agenda ~40 minutes Modularity Abstraction Modularity and abstraction in ETL ~10 minutes Q/A Wrap up
  • 5. When you think of “modular” design, what do you think of? Snap ins Components Assembly Who remembers “units” knitwear?
  • 6. Let’s Explore the Fast Food Example Basic Ingredients Basic toppings Menu Choice Hamburger Cheeseburger Cheese Hamburger Patty Double Cheeseburger Chicken Sandwich Hamburger Bun Grilled Chicken Breast Ranch Chicken Sandwich Chicken Sandwich w/Cheese Wrap Ranch Chicken Sandwich w/Cheese Fish Filet Fish Sandwich Ranch Dressing Fish Wrap
  • 7. Benefits of Modular Design Combinability = meet the demands of more consumers Adaptability = earliest responder to changes in market conditions Efficiency = lower cost of product Consistency in (good) quality = lowers perceived risk and lowers “barriers to entry”
  • 8. Drawbacks of Modular Design Change one/change all is a double edged sword Module management Storing Organizing Versioning
  • 10. What is abstraction? The thought process wherein ideas… are distanced…. from objects….
  • 11. Abstractions simplify and organize Orange Orange Pumpkin Basketball
  • 12. The process by which data and programs are defined with a representation similar to its meaning (semantics) Applies to Data Actions Abstraction in computer science
  • 16. Overview of ETL What is ETL? Where does SQL Server fit in?
  • 17. Modularity in ETL Which components of ETL apps can and should be modularized?
  • 18. Data Abstraction in ETL Data type wrangling… ever felt like a cowboy/cowgirl trying to herd the unherdable? Git along li’lnvarchar SQL Server: nvarchar ODBC: SQL_VARCHAR MySQL: varchar PostgreSQL: character varying
  • 19. Function Abstraction in ETL Think about using abstract functions. Does your transformation language support abstraction? Examples Lua anonymous functions and closures function makeaddfunc(x) return function(y) return x + y end end plustwo= makeaddfunc(2) C# anonymous function Func<int,int> foo = x => x*x;
  • 20. Put it all together Modular, abstracted ETL programming environments: Modular connectivity objects Modular schema objects Modular data types that can be abstracted Modular functions that can be abstracted Build your applications like a fast food hamburger Mix n’ match applications are built efficiently
  • 21. What else? Think about how you are designing your ETL applications How much of your code is dealing with data quality issues that have to be fixed manually? Null values Invalid values Invalid formats Missing values Data out of range or not in the proscribed range Find those errors first (and make fixing them someone else’s problem) It’s hard to predict the future, so adaptable and modular designs have long-terms benefits.
  • 22. Conclusions and Deep Thoughts You’re doing something wonderful when you’re doing ETL! ETL is applied fundamental computer science.
  • 23. Professional Association for SQL Server Thank you to our sponsor
  • 24. Save 25%: Register by April 12th www.sqlpass.org/sqlrally May 11-13, Orlando, FL Register by March31st: save 40% and have the chance to win a cruise to Alaska! “24HR11” code gets you $100 off www.sqlpass.org/summit Oct 11-14, Seattle, WA