Arquivo
T-SQL Expert online em Março-2013
T-SQL Expert online,
Pessoal acabei de abrir uma turma para nosso treinamento de T-SQL Expert. Você pode ler mais detalhes em relação a este treinamento aqui no meu blog, ou pela ementa no site da Sr.Nimbus.
Para se inscrever no treinamento utilize o seguinte link: http://www.srnimbus.com.br/calendario/online-sql11-t-sql-expert/
Resumo:
- Ementa: T-SQL Expert, SQL11 (módulo sobre unit tests será removido do treinamento online)
- Carga horária: 24 horas
- Horário das aulas entre 18:30 e 21:30 (3 horas por dia) seguindo o seguinte cronograma
- 18, 19, 20 e 21 de março (segunda a quinta-feira)
- 25, 26, 27 e 28 de março (segunda a quinta-feira)
- Valor: R$ 720,00 em até 12 vezes via PagSeguro e R$680,00 a vista
Abs.
Parabéns Delphi por seus 18 anos de vida!
|
Aaaaaaaa hoje é um dia especial pra muitos, e pra mim também! |
Quando comecei a estudar programação no curso técnico em processamento de dados minha aula predileta era a do Elvis carinhosamente chamado por Delphis, ele dava aula de Delphi é claro. Desde lá me apaixonei pelo produto e comecei minha jornada no mundo da informática e programação com Delphi.
Muitos já me ouviram dizer isso, mas quando eu li que a Borland estava vendendo o Delphi foi um dos dias mais tristes da minha vida! Eu era um daqueles que tinha caneca da Borland (uma preta com logo em Branco lindona) e sempre participava da BorCon em sampa, aaa bons tempos aqueles
!
Hoje dia 14 de Fevereiro de 2013 é aniversário de 18 anos do Delphi! Ele foi lançado em 1995 no dia dos namorados (Valentine’s day). Portanto, parabéns Delphi, que você tenha muitos anos de vida e não morra tão cedo! Muita gente ainda usa Delphi e continuará usando, ainda que sem o charme da Borland.
Espero que a Embarcadero continue com o bom trabalho que tem feito até hoje, e que você tenha mais responsabilidades com a maioridade penal chegando.
Algumas fotos totalmente nostálgicas, destaque para o logo do Delphi 5 que usei muito!

Vida longa ao Delphi!
Artigo–DBCC OPTIMIZER_WHAT IF
Artigo novo publicado no Simple-Talk, check it out:
“SQL Server’s Query optimiser judges the best query plan from the data in the relevant tables and the server’s hardware. How, then, can you investigate the query plans being generated for slow-running queries on a customer’s production server when you can neither access the server, nor recreate the database from a backup?”
Abs.
Sensacional a iniciativa do Freccia! Good Luck pra galera de SC.
Abs.
Olá pessoal,
Com muita alegria e também um pouco de esforço teremos aqui em Santa Catarina nossa primeira reunião da comunidade MCITP SC como um PASS Chapter. Essa ação foi de encontro a algumas ideias que foram discutidas na reunião com os Regional Mentors Luciano Moreira – Luti (Blog|Twitter) e Laerte Junior (Blog|Twitter).
Então se você me acompanha e é de Santa Catarina junte-se a nós em uma noite com bastante SQL Server. Para confirmar sua presença basta acessar a página do evento e se inscrever.
1º Reunião da comunidade MCITP SC
Os maiores detalhes sobre data, local de evento e palestras você encontra no site acima ou também poderá acessar o site do grupo MCITP SC.
Lembrando também que a comunidade está de portas abertas para todos que quiserem se juntar a nossa lista de e-mails e fazer parte do…
Ver o post original 12 mais palavras
Só para os cristãos de verdade! (se você não é crente em Jesus nem leia… #ounao ;P)
Estou enojado… Eu já vi o Malafaia ser tão usado por Deus, eu mesmo fui em um Culto na assembleia da Penha em Sampa e lembro muito bem que foi uma benção. Precisamos orar para que Deus o abençoe e abra seus olhos para a verdadeira essência do evangelho que é Cristo, e não fazer essas palhaçadas imorais que vemos por ai…
As vezes eu gostaria de viver na época da lei pra ver Deus fulminando essa cambada… Ok eu sei que eu seria um deles, mas pelo menos acho que teríamos um mundo melhor.
<desabafo e meditação>
Ultimamente tenho vivido em crise com a igreja justamente por causa desse tipo de coisa… Isso não acontece só na televisão, acontece em nossas igrejas… Pastores safados, irmãos moralistas, egocêntricos e sem amor… Talvez eu esteja pedindo demais, mas eu só queria ver verdade nas pessoas, só isso, queria que os cristãos julgassem menos e fossem mais verdadeiros.
Verdadeiros em tudo. Não consigo entender como que uma pessoa que não está bem com Deus, ou está passando por um problema consegue ser tão falsa e colocar uma mascara de cristão pra mostrar pros irmãos que é feliz. Sério, é tão difícil assim mostrar que você não está feliz? Que está com problemas e que precisa de ajuda? Que precisa de um tempo com Deus?
Infelizmente na igreja que vivemos isso é difícil sim, porque ao abrir a boca pra falar algo sobre Deus ou seu problema, você correrá o risco de ter seu problema divulgado no jornal da manhã (bando de fofoqueiro), vai ter vários irmãos dizendo que você não é crente, que você esta em crise, que nunca entregou sua vida pra Jesus… mas nenhum deles vai te ligar pra ter uma conversa de gente grande…
Hoje as pessoas não se preocupam mais com os outros, somente com elas, estão tão atarefadas e preocupadas que não sobra mais tempo nem para Deus, quisera para outro irmão. Chamo isso de “crise do posto de gasolina”, se no final do culto o José (nome fictício) compartilha um problema com o Paulo (outro nome fictício) ele ouve e o aconselha, mas ao sair da igreja, ele entra no carro e diz pra esposa dele, caramba, está acabando a gasolina! Ou seja, o problema do José ficou pra traz, agora o Paulo tem que resolver o problema dele, que é colocar gasolina no carro! José ficou pra traz na lista de prioridade do Paulo…
Nossa igreja está enganada, e o pior, as pessoas não pensam mais, virou tudo rotina e costume. Não suporto mais ouvir uma pessoa orar e dizer “em nome de Jesus” 30 vezes, usar as mesmas palavras que ela ouviu… cosias como, “enfermo” ou “coxo”, ou dizer “Pai” 90 vezes, línguas então? nem vou entrar neste ponto… Cadê a oração sincera? Aquela que sai do coração e não o decoreba de sempre.
Aaaa, estou desiludido da igreja, não de Cristo (jamais), mas do povo… Como dizia Paulo em Romanos 3:10 parafraseando Eclesiastes, não há nenhum justo, nenhum sequer. Graças a Deus por Jesus que nos liberta e perdoa, sem ele não somos nada e não fazemos nada.
Fase passageira? Talvez, mas não sei se consigo mais viver em meio aos crentes, por outro lado sinto falta da igreja, do louvor, da inocência, dos irmãos de verdade, do meu pastor, da igrejinha aaa que saudades da igrejinha… Será que tenho tanta saudades assim porque eu era inocente? Será que preciso disso denovo?… Não sei se quero voltar a ser inocente porque tenho medo de ser enganado.
Quero viver um evangelho de verdade, não aquele de aparências, mas aquele de vida, aquele onde não precisamos pregar a cristo porque as pessoas veem cristo em nós, não o cristo das igrejas de hoje (esse está muito mal falado), mas o cristo verdadeiro, o que salva e que nos da uma vida em abundancia, não estou falando de prosperidade, mas de confiança plena de que Deus cuida de mim!
Precisamos de uma mudança drástica na nossa igreja, talvez Deus me chame para participar dela, se for o caso “I’m in”.
</desabafo e meditação>
Quero terminar meu desabafo/texto com um dos textos mais belos que já li, eu mudei um pouco, mas extraí boa parte do livro “Deixados para trás XII – O Glorioso Aparecimento”:
A Bíblia diz que o meu rei é um rei de sete facetas. É o rei dos judeus; portanto, um rei racial. É o rei de Israel; ou seja, um rei nacional. É o rei da justiça. O rei das eras. O rei do céu. O rei da glória. O rei dos reis. Além de ser um rei de sete aspectos, ele é o Senhor dos senhores. Esse é o meu rei.
Davi disse: "Os céus proclamam a glória de Deus, e o firmamento anuncia as obras das suas mãos" (Sl 19.1). O meu rei é um rei soberano. Medida alguma pode definir seu amor ilimitado. Nem o mais poderoso telescópio construído pelo homem pode tornar visíveis as fronteiras infinitas de seu poder. Nenhuma barreira pode impedi-lo de derramar suas bênçãos.
Ele é sempre forte. Inteiramente sincero. Eternamente fiel. Imortalmente gracioso. Infinitamente poderoso. Imparcialmente misericordioso.
Ele é o maior fenômeno que já cruzou o horizonte deste mundo. É o Filho de Deus. O Salvador dos pecadores. O eixo da civilização. Ele permanece na solitude de Si mesmo. É autêntico e é único. Não tem paralelos nem precedentes.
É a ideia mais elevada na literatura. É a maior personalidade na filosofia. É o problema supremo na alta-crítica. É a doutrina fundamental da verdadeira teologia. É o milagre das eras. Sim, Ele é. É o superlativo de tudo que é bom que você escolha chamá-lo. É o único qualificado para ser nossa todo-suficiência.
Ele dá força aos fracos. Está à disposição dos que são tentados e provados. Tem compaixão e salva. Fortalece e sustenta. Guarda e guia. Cura os doentes. Purifica o leproso. Perdoa o pecador. Quita os devedores. Livra os cativos. Defende os fracos. Abençoa os jovens. Serve aos desventurados. Cuida dos idosos. Recompensa os diligentes. E confere beleza aos mansos.
Este é o meu rei. Ele é a chave do conhecimento. A fonte da sabedoria. A porta do livramento. O caminho da paz. A estrada da justiça. A vereda da santidade. A porta da glória.
Seu cargo é multiforme. Sua promessa é certa. Sua vida é incomparável. Sua bondade ilimitada. Sua misericórdia eterna. Seu amor nunca muda. Sua palavra é suficiente. Sua graça basta. Seu reino é de justiça. "Seu jugo é suave e seu fardo é leve" (Mt 11.30).
Ele é indescritível. É incompreensível. É invencível. É irresistível. Você não consegue tirá-lo da mente. Não pode tirá-lo da mão. Não pode sobreviver a Ele e não pode viver sem Ele. Os fariseus não O suportavam, mas descobriram que não podiam detê-lo. Pilatos não conseguiu encontrar qualquer falta nele. Herodes não pôde matá-lo. A morte não O deteve e o sepulcro não conseguiu segurá-lo. Esse é o meu rei!
E teu é o reino e o poder e a glória para sempre, sempre e sempre! Quanto tempo é isso? Sempre e sempre!
Amém!
Do maior pecador e perdoado de todos:
Fabiano Neves Amorim
Leve a Sr.Nimbus pra sua empresa de graça
Post rápido para não deixar meu blog ficar muito marketeiro rs…
Leve a Sr.Nimbus para fazer uma apresentação na sua empresa, de graça…
Alguns assuntos que gostei:
- Novidades do SQL Server 2012
- Futuro da engine relacional – ColumnStore e Hekaton (in-memory database)
Confira os detalhes aqui:
ExecPlans OnDemand Parte III
Pessoal, post apenas pra avisa-los que a parte III do treinamento de execution plans já está a venda e será publicada até dia 28/01/2013.
Como sempre, pra quem comprar antes o valor promocional é de R$100,00 reais.
A ementa é a seguinte:
Estatísticas
· Estatísticas avançado parte II
o Estatísticas correlatas e densidade
o Atualizando estatísticas com valores falsos
o TraceFlags – 2388, 2389, 2390, 2371 (SQL2008SP1), 9292, 9204 e 8666.
o Identificando colunas ascendentes
o Date correlation optimization
o Estatísticas faltando
o Gap nas estatísticas
o Estatísticas em várias colunas
o Regra diferenciada para ler um histograma
o Tried trees para estimar strings
o AutoCreated – Computed columns
o Estatísticas em views
o Estatísticas em functions
o Impacto das estatísticas em operações de rebuild
Operadores
· Spool
o Table Spool – Lazzy e Eager
§ Halloween problem
§ Entendendo rebind e rewind
o Index Spool
§ Regra diferenciada para rebind e rewind
o RowCount Spool
o Otimizando planos com operações de spool
o Evitando spools em operações de insert com scalar functions
Video PASS24 hours – Escrevento códigos “like a boss”
Update: A animação do PPT não ficou legal no vídeo… baixe o PPT para ver melhor!
Galera, o vídeo da minha sessão sobre T-SQL no PASS24 horas está disponível.
http://www.sqlpass.org/LearningCenter/SessionRecordings/24HoursPortuguese2012.aspx
Você pode baixar o material aqui:
Abaixo alguns prints da sessão:
Espero que gostem!
Abs.
Partes II, III, IV e V dos on-demand de ExecPlans
Galera, depois da boa aceitação do publico para com os treinamentos on-demand estamos publicando novas turmas.
O Luti vai falar sobre indexação: on-demand] Indexação I – Conceitos, criação e estrutura física
O Ivan vai falar sobre T-SQL: [on-demand] Transact SQL I – Introdução e consultas básicas
Eu volto a falar sobre Execution Plans: [on-demand] Planos de execução II – Estatísticas, Seeks e Scans
Novamente estamos fazendo promoção de lançamento, quem comprar até o final do ano, paga R$100,00 reais por cada treinamento.
Aproveitando o embalo, já publiquei o conteúdo dos módulos III, IV e V do treinamento de execution plans, galera tem MUITA coisa boa, e o módulo IV ficou #sinistro
.
Ainda não temos previsão de quando eles serão lançados, mas pretendemos publicar essa informação em breve.
Se você achou interessante e quer fazer uma imersão em sua empresa, converse conosco, quem sabe não passamos alguns dias in-company e sua empresa paga tudo? Melhor impossível não? Qualquer dúvida manda um e-mail pra contato@srnimbus.com.br
Considerando todas os módulos temos as seguintes ementas:
ExecPlans parte I:
Query optimizer: como funciona e como analisar um plano de execução
Otimizando consultas analisando operadores
· Key Lookup e RID Lookup
o O que é?
o Como melhorar consultas com Key Lookup utilizando clausula Include
o Diferença entre Key Lookup e Rid Lookup
o Cuidados com “missing indexes” (dicas do SQL Server)
o Até quando vale a pena fazer um lookup?
o O que é prefetch? Devo me preocupar com ele?
o Nested Loops Optimized, o que é isso?
· Melhorando consultas com o operador Sort
o Otimizando consultas com operadores de SORT
o Ordenação na aplicação ou no banco de dados?
o Monitorando Sort Warnings
o Entendendo memory grant
o xEvent – sort_memory_grant_adjustment
o In-Memory sort versus regular-sort
§ Single pass spill e Multiple Pass spill
o Analisando opções para evitar sort_warnings
· Melhorando consultas com operador Merge Join
o Entendendo o algoritmo de Merge Join
o Evitando Sort Merge Join
o Otimizando Merge Joins em disco
o Cenários propensos a otimização do Merge Join
ExecPlans parte II:
Query optimizer: Estatísticas
· Introdução a estatísticas
o Entendendo como estatísticas funcionam e sua importância
o Lendo um histograma
· Estatísticas avançado parte I
o Manutenção em estatísticas
o Auto Update, Auto Created, Auto update async e norecompute
o Estatísticas filtradas
o Estatísticas cross-table
o Variáveis do tipo table versus tabelas temporárias
· Operadores
o Index scan e table scan
§ Allocation order scan
· Nolock – Uma bomba relógio
· Inconsistências, leitura repetida e pulando linhas
§ Index order scan
· Inconsistências, leitura repetida e pulando linhas
· Advanced scan (merry-go-round scanning)
· Scan direction e paralelismo
o Index Seek
§ Seek predicate
§ Predicate
§ Range scan
§ Quando um seek é na verdade um Scan
§ Seek é sempre melhor que scan?
§ Hints – “Ajudando” otimizador de consultas com ForceSeek
ExecPlans parte III:
Estatísticas avançado parte II
· Estatísticas correlatas e densidade
· Atualizando estatísticas com valores falsos
· TraceFlags – 2388, 2389, 2390, 2371 (SQL2008SP1), 9292, 9204 e 8666.
· Identificando colunas ascendentes
· Date correlation optimization
· Estatísticas faltando
· Gap nas estatísticas
· Estatísticas em várias colunas
· Regra diferenciada para ler um histograma
· Tried trees para estimar strings
· AutoCreated – Computed columns
· Estatísticas em views
· Estatísticas em functions
· Impacto das estatísticas em operações de rebuild
Operadores
· Spool
o Table Spool – Lazzy e Eager
§ Halloween problem
§ Entendendo rebind e rewind
o Index Spool
§ Regra diferenciada para rebind e rewind
o Otimizando planos com operações de spool
o RowCount Spool
o Evitando spools em operações de insert com scalar functions
ExecPlans parte IV:
Detalhando o processo de otimização de uma consulta
· Parse
· Bind
· Query tree
· Constant folding
· Expand view
· Auto parameterization
· Pre-otimization
o NNF convert
o Project remove
o Simplify
§ Constraint
§ Remove redundant
§ Unnest
o Join collapse
o Derive cardinality
o Heuristic join order
o Project nomalization
· Full otimization
o Trivial plan
o Search 0
o Search 1
o Search 2
· Transformation stats (rules)
· Entendendo conceitos importantes
o Seletividade
o Densidade
o Cardinalidade
o Magic Density/Guess
o Foldable expressions
o SARGs
o Simplifications
§ Eliminando joins (FKs)
§ Detectando contradição (Check constraints)
§ Índices únicos (eliminando Asserts)
o NonUpdating updates
· Comandos avançados
o DBCC OPTIMIZER_WHATIF
o Rules (DBCC RULEON/OFF, QueryRuleOff)
o Índices hipotéticos (DBCC AUTOPILOT, SET AUTOPILOT)
o Discos SSDs VS peso do custo de IO/CPU (DBCC SETIOWEIGHT, SETCPUWEIGHT)
o xEvent – inaccurate_cardinality_estimate
Operadores
· Loop join
· Merge join (coberto no módulo I)
· Hash joins
· Hints – “ajudando” otimizador com force order
o Criando bushy plans
· Hints – “ajudando” otimizador forçando um algoritmo de join
ExecPlans parte V:
Aprendendo mais com analise de bugs e ”gaps na funcionalidade” do Otimizador de consultas
· IS NOT NULL
· Comando Merge
· Expression in queries
· Operador de Filter
· Produto cartesiano
· Stream Aggregate
· Filter vs Aggregation
· CTE e colunas duplicadas
Operadores
· Merge interval
· Assert
· Compute Scalar
· Concatenation
· Split, Sort e Collapse
Quebrando mitos
• COUNT(1) versus COUNT(*)
• JOIN versus EXISTS
• DISTINCT versus GROUP BY
• SET versus SELECT
• TOP 1 ORDER BY DESC versus MAX
• UNION versus UNION ALL
• NOT IN versus NOT EXISTS
• CURSOR versus WHILE
• Ordem das tabelas no JOIN
Quer estudar mais sobre o Query Optimizer? Veja onde começar!
Estes dias me pediram recomendação de material para estudar sobre Otimizador de consultas… segue pra vocês o e-mail que respondi.
———————————————————————————–
Tem vários livros/blogs que posso recomendar…
Livros:
Se ainda não comprou, compre o treinamento on-demand da Sr.Nimbus… Vou falar bastante sobre isso, mas bastante mesmo… mais que em qualquer treinamento que já ministramos… vale a pena, vai por mim.
http://www.srnimbus.com.br/calendario/turmas/treinamentos-on-demand/
Inside Microsoft® SQL Server(TM) 2005: Query Tuning and Optimization – Capitulo escrito pelo Craig é o melhor que já li sobre o assunto.
http://www.amazon.com/Inside-Microsoft%C2%AE-SQL-Server-2005/dp/0735621969/ref=pd_bxgy_b_img_y
Inside the SQL Server Query Optimizer – É legalzinho… vale a leitura… o Luti fez um review sobre este livro aqui
SQL Server 2012 Query Performance Tuning do Grant Fritchey
SQL Server 2008 Internals – Capítulo do Conor também é muito bom…
Se sobrar tempo… leia o meu ![]()
http://www.simple-talk.com/books/sql-books/complete-showplan-operators/
Blogs imperdíveis pra quem quer ler sobre o assunto query plan:
http://www.scarydba.com/ – Grant
http://sqlblog.com/blogs/paul_white/ – Fucking freak Paul White…
http://blogs.msdn.com/b/conor_cunningham_msft/ – Blog atual do Conor (OOOO cara em relação a QO no time de desenvolvimento do produto)
http://www.sqlskills.com/blogs/conor/ – Blog do Conor quando ele estava trabalhando na SQLSkils
http://sqlblog.com/blogs/joe_chang/default.aspx – Joe Chang… Maluco total ao quadrado… mto bom.
www.qdpma.com/ – Outro site do Joe Chang
http://sqlblog.com/blogs/rob_farley/default.aspx – Apesar de não ter foco só em QO ele fala bastante sobre o assunto.
http://blogs.msdn.com/b/craigfr/ – Craig trabalha no time de dev do QO… Imperdível.
http://www.benjaminnevarez.com/ – Também fala bastante sobre o assunto, posts muito bons…
http://blogs.msdn.com/b/sqlperf/ – Blog oficial do SQL Server Performance Team da MS…
http://blogs.msdn.com/b/sqlqueryprocessing/ – SQL Server Query Processing Team, preciso dizer mais algo?
http://blogs.msdn.com/queryoptteam – Antigo blog do time de Query Processing
http://www.somewheresomehow.ru/ – Site em Russo mas Google tradutor ajuda… Esse é novo, descobri estes dias.
Se quiser partir pra algo mais deep e científico, leia os artigos publicados na ACM, eu sou associado deles e do grupo SigMod, você paga por ano e tem acesso a uma série de benefícios, como livros da SafariOnline e outras cositas mas… Veja aqui: http://campus.acm.org/public/mgm/subpages/member-benefits.html
Tem vários outros sites e pessoas que falam sobre isso, mas com menos frequência, se você quer começar essa lista já tá de bom tamanho kkk.
Com certeza esqueci de vários… se alguém lembrar fica a vontade em comentar aqui.
Abs.





