SlideShare uma empresa Scribd logo
1 de 18
Who needs Stored Procedures anyway?
Niko Neugebauer
http://netponto.org
23ª Reunião Lisboa - 24/09/2011
Patrocinadores desta reunião
Patrocinadores desta reunião
Niko Neugebauer
SQL Server MVP
MCITP Developer 2005
Líder e fundador da comunidade SQLPort
(http://www.sqlport.com)
Mentor Regional PASS para «Western Europe»
Consultor da Novabase
Agenda
• Query Analizer
• Queries (aka «Ad Hoc»)
• Parametrization: Simple/Forced
• Stored Procedures
• Memory
• Justin Bieber
Query Analizer
• Analise do Query, Compilação, Geração do
plano e ... Execução
Query
Plano de
Execução
Compiler
Memory
• I just can’t get enough
• I just can’t get enough
• ....
• I just can’t get enough
• I just can’t get enough
Queries «Ad Hoc»
Demo
Parametrization
• Simple
• Forced
Stored Procs
• In da House
• É como Java vs Native Code
Memory
• SQL Server 2008 and SQL Server 2005 SP2
* 75% of visible target memory from 0-4GB
+ 10% of visible target memory from 4Gb-64GB
+ 5% of visible target memory > 64GB
• SQL Server 2005 RTM and SQL Server 2005 SP1
* 75% of visible target memory from 0-8GB
+ 50% of visible target memory from 8Gb-64GB
+ 25% of visible target memory > 64GB
• SQL Server 2000
* SQL Server 2000 4GB upper cap on the plan cache
Optimização
exec sp_configure 'show advanced options', 1;
reconfigure;
exec sp_configure 'optimize for ad hoc workloads', 1
Reconfigure;
Referências
Procedure Cache and Optimization for Adhoc Workloads
(Kim Tripp)
– http://www.sqlskills.com/BLOGS/KIMBERLY/post/Procedure-cache-and-
optimizing-for-adhoc-workloads.aspx
Query Parametrization
– http://weblogs.sqlteam.com/dang/archive/2009/06/27/Forced-
Parameterization-A-Turbo-Button.aspx
Questões?
Patrocinadores desta reunião
Patrocinadores desta reunião
Próximas reuniões presenciais
• 24/09/2011 – Setembro (2 anos!)
• 29/10/2011 – Outubro
• 19/11/2011 – Outubro (Coimbra)
• 26/11/2011 – Novembro
Reserva estes dias na agenda! :)
Obrigado!
Niko Neugebauer
info@webcaravela.com
http://pt.linkedin.com/in/webcaravela
http://sqlport.com
http://twitter.com/NikoNeugebauer

Mais conteúdo relacionado

Semelhante a Who Needs Stored Procedures Anyway?

Entity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesEntity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesC. Augusto Proiete
 
[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes
[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes
[GUTS-RS] GUTS Talks - Ferramentas de Automação de TestesGUTS-RS
 
Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Fernando Henrique
 
Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Danilo Augusto Leite
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 
Desmistificando o MVVM
Desmistificando o MVVMDesmistificando o MVVM
Desmistificando o MVVMPedro Lamas
 
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGModelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGNeubio Ferreira
 
Data Vault - TDC 2020 Porto Alegre
Data Vault - TDC 2020 Porto AlegreData Vault - TDC 2020 Porto Alegre
Data Vault - TDC 2020 Porto AlegreSergio Lima
 
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...tdc-globalcode
 
Aula 1 introducao
Aula 1   introducaoAula 1   introducao
Aula 1 introducaolicardino
 
NoSQL Onde Vivem e Como se Alimentam ?
NoSQL Onde Vivem e Como se Alimentam ? NoSQL Onde Vivem e Como se Alimentam ?
NoSQL Onde Vivem e Como se Alimentam ? Alvaro Viebrantz
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational DatabasesMarcus Vinicius Miguel Pedro
 
Projeto arrastão projeto fábrica de software
Projeto arrastão   projeto fábrica de softwareProjeto arrastão   projeto fábrica de software
Projeto arrastão projeto fábrica de softwareAlan Correa Morais
 
Fabrício Lima Soluções em BD - Portifólio de Serviços
Fabrício Lima Soluções em BD - Portifólio de ServiçosFabrício Lima Soluções em BD - Portifólio de Serviços
Fabrício Lima Soluções em BD - Portifólio de ServiçosFabrício França Lima
 

Semelhante a Who Needs Stored Procedures Anyway? (20)

Dicas de Plone
Dicas de PloneDicas de Plone
Dicas de Plone
 
Entity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesEntity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidades
 
[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes
[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes
[GUTS-RS] GUTS Talks - Ferramentas de Automação de Testes
 
Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0
 
Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Introdução ao Windows Server 2012
Introdução ao Windows Server 2012
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
Treinamento Elasticsearch - Parte 1
Treinamento Elasticsearch - Parte 1Treinamento Elasticsearch - Parte 1
Treinamento Elasticsearch - Parte 1
 
Desmistificando o MVVM
Desmistificando o MVVMDesmistificando o MVVM
Desmistificando o MVVM
 
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGModelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
 
Treinamento neteye-v2-6
Treinamento neteye-v2-6Treinamento neteye-v2-6
Treinamento neteye-v2-6
 
Machine learning em Produção
Machine learning em ProduçãoMachine learning em Produção
Machine learning em Produção
 
Data Vault - TDC 2020 Porto Alegre
Data Vault - TDC 2020 Porto AlegreData Vault - TDC 2020 Porto Alegre
Data Vault - TDC 2020 Porto Alegre
 
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...
TDC2018FLN | Trilha Data Science - Encontrando Lookalikes para publicidade di...
 
Aula 1 introducao
Aula 1   introducaoAula 1   introducao
Aula 1 introducao
 
NoSQL Onde Vivem e Como se Alimentam ?
NoSQL Onde Vivem e Como se Alimentam ? NoSQL Onde Vivem e Como se Alimentam ?
NoSQL Onde Vivem e Como se Alimentam ?
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
 
Desenvolvendo produtos no UOL
Desenvolvendo produtos no UOLDesenvolvendo produtos no UOL
Desenvolvendo produtos no UOL
 
Projeto arrastão projeto fábrica de software
Projeto arrastão   projeto fábrica de softwareProjeto arrastão   projeto fábrica de software
Projeto arrastão projeto fábrica de software
 
Nodejs
NodejsNodejs
Nodejs
 
Fabrício Lima Soluções em BD - Portifólio de Serviços
Fabrício Lima Soluções em BD - Portifólio de ServiçosFabrício Lima Soluções em BD - Portifólio de Serviços
Fabrício Lima Soluções em BD - Portifólio de Serviços
 

Mais de Comunidade NetPonto

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Comunidade NetPonto
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Comunidade NetPonto
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloComunidade NetPonto
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazComunidade NetPonto
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João JesusComunidade NetPonto
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComunidade NetPonto
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsComunidade NetPonto
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpComunidade NetPonto
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosComunidade NetPonto
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoComunidade NetPonto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realComunidade NetPonto
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteComunidade NetPonto
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIComunidade NetPonto
 
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8Como não entalar os dedos nas janelas: Finger-based apps no Windows 8
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8Comunidade NetPonto
 
Sessão Especial: PowerPivot com Alberto Ferrari
Sessão Especial: PowerPivot com Alberto FerrariSessão Especial: PowerPivot com Alberto Ferrari
Sessão Especial: PowerPivot com Alberto FerrariComunidade NetPonto
 
Arquitectura dos Serviços da plataforma Windows Azure
Arquitectura dos Serviços da plataforma Windows AzureArquitectura dos Serviços da plataforma Windows Azure
Arquitectura dos Serviços da plataforma Windows AzureComunidade NetPonto
 

Mais de Comunidade NetPonto (20)

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno Cancelo
 
ASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco GodoiASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco Godoi
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor Tomaz
 
HTML5 - Pedro Rosa
HTML5 - Pedro RosaHTML5 - Pedro Rosa
HTML5 - Pedro Rosa
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João Jesus
 
OData – Super Cola W3
OData – Super Cola W3OData – Super Cola W3
OData – Super Cola W3
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store Apps
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharp
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes Unitários
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de Projecto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida real
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8Como não entalar os dedos nas janelas: Finger-based apps no Windows 8
Como não entalar os dedos nas janelas: Finger-based apps no Windows 8
 
Sessão Especial: PowerPivot com Alberto Ferrari
Sessão Especial: PowerPivot com Alberto FerrariSessão Especial: PowerPivot com Alberto Ferrari
Sessão Especial: PowerPivot com Alberto Ferrari
 
NuGet no Contexto Empresarial
NuGet no Contexto EmpresarialNuGet no Contexto Empresarial
NuGet no Contexto Empresarial
 
Arquitectura dos Serviços da plataforma Windows Azure
Arquitectura dos Serviços da plataforma Windows AzureArquitectura dos Serviços da plataforma Windows Azure
Arquitectura dos Serviços da plataforma Windows Azure
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 

Último (6)

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Who Needs Stored Procedures Anyway?