Desculpem ter deixado o titulo em maiúsculo, se desse ainda faria em NEGRITO.

Na empresa que trabalho sou responsável por entrevistar os candidatos.  E 9 a cada 10 DBAs me falam que TRUNCATE TABLE não gera log, que não dá para fazer ROLLBACK

Mas é CLARO que o SQL salva log, e se der algum problema e você usou BEGIN TRAN ele vai voltar. o TRUNCATE não armazena tanta informação como um DELETE, mas ele armazena quais paginas estão sendo desalocadas

Exemplo abaixo

Leia o resto deste post »


Hoje fiz um tunning legal e gostaria de compartilhar com vocês.

Para preencher uma dimensão data, acredito que não existe muito segredo, basta fazer um loop pelas datas e inserir na tabela, mas e se você precise inserir em nível de minuto ou até segundo, pode acabar ficando lento pela inserção linha a linha

Segue abaixo exemplo original e versão tunnada

Leia o resto deste post »


Os duendes de estatísticas do WordPress.com prepararam um relatório para o ano de 2012 deste blog.

Aqui está um resumo:

600 pessoas chegaram ao topo do Monte Everest em 2012. Este blog tem cerca de 3.400 visualizações em 2012. Se cada pessoa que chegou ao topo do Monte Everest visitasse este blog, levaria 6 anos para ter este tanto de visitação.

Clique aqui para ver o relatório completo


Seguem algumas dicas e coisas novas ou não tão usuais que aprendi no primeiro dia do 24h PASS, são mais direcionadas aos DBAs, mas também serve aos desenvolvedores e curiosos

  • Para mim sempre foi uma verdade que o VARCHAR(MAX) era igual ao TEXT, porém eu estava enganado e o varchar(MAX) fica na linha de dados, e não são apenas ponteiros para informações que estão em outro lugar, então ao se utilizar em um campo como [observação], que vc muitas vezes nem vai utilizar nas consultas ele gera alto IO.

Solução e mais informações: “In-Row Datahttp://msdn.microsoft.com/en-us/library/ms189087(v=sql.105).aspx

  • FILLFACTOR mesmo em OLTP não existe o padrão de colocar 80%

Pagesplits vão ocorrer e isso é normal, e para consultas seu sistema vai ficar muito mais lerdo

Considere um sistema de 50GB, que cresça 500MB por semana, os 20% do FILLFACTOR representam 10GB de espaço perdido que consomem IO / memória etc

Se você faz o rebuild semanal, para que está deixando 10GB livres toda semana.

  •  REBUILD de índices. Considere um índice grande, ex tabela de pedidos, porém os dados inseridos / alterados só ocorrem nos últimos 2 meses, mas vc tem 5 anos de pedidos

Se vc for fazer a lógica de fazer rebuild dos índices com fragmentação de 30% você nunca vai rebuildar este índice porque a média de fragmentação será baixissima. Então repense suas lógicas de rebuild

Links uteis

Um modo de você saber se seu índices está parcialmente fragmentado é usar FILTERED INDEX http://msdn.microsoft.com/en-us/library/cc280372.aspx

  • INSERTs em tabelas com IDENTITY podem ser acabar sofrendo em performance, pois como ele sempre insere na última página, esta página pode acabar ficando bem concorrido

Tem um whitepaper bem legal sobre isso:

Diagnosing and Resolving Latch Contention on SQL Serverhttp://www.microsoft.com/en-us/download/details.aspx?id=26665


Olá pessoal, recentemente expliquei este problema para uma outra pessoa e imaginei que fosse interessante para mais alguém

Vamos fazer alguns exercícios.

Leia o resto deste post »


Depois de muito tempo sem atualizar, segue novo post Alegre

Não tenho ouvido muito falar do Master Data Services que nesta versão que vem junto do SQL Server 2012 ficou muito legal, ganhando uma integração legal com Excel via Plugin

Eu já havia comentado sobre a versão 2008 R2, porém pela falta de integração com office, não achava tão legal.

Leia o resto deste post »


Os duendes de estatísticas do WordPress.com prepararam um relatório para o ano de 2011 deste blog.

Aqui está um resumo:

Um comboio do metrô de Nova Iorque transporta 1.200 pessoas. Este blog foi visitado cerca de 3.700 vezes em 2011. Se fosse um comboio, eram precisas 3 viagens para que toda gente o visitasse.

Clique aqui para ver o relatório completo


Hoje tive de ajudar um amigo aqui da empresa e surgiu uma idéia legal de como demonstrar gráficamente dados como o exemplo abaixo, usando o Reporting Services

TASK     DAT_INI        DAT_END
TASK1    2011-01-01    2011-01-03
TASK2    2011-01-04    2011-01-07
TASK3    2011-01-08    2011-01-09
TASK4    2011-01-09    2011-01-15

Porém para criar uma matriz eu precisaria ter uma unica data para usar como fonte de dado para COLUNA e Task ficaria como Linha

Leia o resto deste post »


Para quem quiser seguir http://www.sqlpass.org/summit/2011/Live/LiveStreaming.aspx

08:22 - Rushabh Mehta começou a falar

08:35 – Connect, learn, share – Comunidade SQL Server

08:30 – Ted Kummert começa a falar

08:50 – SQL Denali é o SQL Server 2012

08:54 – Any Data Any Size Anywhere

09:26 – CodeName Data Explorer (Azure) – Junta informações de diversos lugares para explorar dados

A internet estava horrivel no evento, sergue resumo:

 

SQL Denali é SQL 2012

SQL vai estar mais integrado ao SQL Azure, com novidades no azure CodeName Data Explorer para fazer merge de datasets na nuvem

O codename “Juneau” agora é SQL Data Tools (Visual studio + SQL Development)

O codename “crescent” agora é Power Viewer … Reporting Services tunado, a melhor ferramenta de BI, e é compativel com MOBILE (QQ Windows / iOS / Android)


Depois de muito escolher e pensar cheguei na minha agenda para o evento PASS 2011 (Seattle)
Estarei voando no sábado para lá, espero conseguir postar algo de lá

Parece que os KeyNotes terão streaming, será as 12:15 (-3 BR)

PASS Summit Day One Keynote – Ted Kummert and Rushabh Mehta

PASS 2011

Ainda tive de deixar algumas sessões na manga, vai que acontece algo eu corro para outra :)

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 512 outros seguidores