Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

SQLSat #127

681 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

SQLSat #127

  1. 1. SQL Saturday #127 RioMelhores Práticas para o seu DW Felipe Ferreira - @SQLBoy MVP SQL Server Diretor de Operações – SolidQ BR http://blogs.solidq.com/fferreira fferreira@solidq.com
  2. 2. Agenda Carga de Trabalho Padrão de Consultas Data Warehouse hoje... Trace Flags Fragmentação Localização dos arquivos no disco Hyper-Threading Carga de dados..
  3. 3. Carga de Trabalho OLTP x DW Indexação Constraints Leitura Sequencial
  4. 4. Exemplo Consulta DWSELECT L_RETURNFLAG, L_LINESTATUS, SUM(L_QUANTITY) AS SUM_QTY, SUM(L_EXTENDEDPRICE) AS SUM_BASE_PRICE, SUM(L_EXTENDEDPRICE*(1-L_DISCOUNT)) AS SUM_DISC_PRICE, SUM(L_EXTENDEDPRICE*(1-L_DISCOUNT)*(1+L_TAX)) Scan Intensive AS SUM_CHARGE, AVG(L_QUANTITY) AS AVG_QTY, AVG(L_EXTENDEDPRICE) AS AVG_PRICE, AVG(L_DISCOUNT) AS AVG_DISC, Hash Joins COUNT(*) AS COUNT_ORDER FROM LINEITEM GROUP BY L_RETURNFLAG, L_LINESTATUS Aggregations ORDER BY L_RETURNFLAG, L_LINESTATUS
  5. 5. Data Warehouses hoje... Storage enorme Servidor SMP enorme O que tem de errado com esse ambiente?
  6. 6. Resposta: sistema desbalanceado Esse servidor consegue processar 12GB/seg de IO, mas a storage consegue entregar somente 2GB/seg  Normalmente a storage não é dedicada para o SQL Server.  Normalmente os switchs não são dedicados para a ligação SQL Server – StorageResultado: grande investimento, baixa performance
  7. 7. Trace Flags -E: Alocar 64 extents por vez (4MB) -T1117: Autogrow crescer em blocos iguais em todos os arquivos -T834: Habilitar grandes alocações de página no SQL Buffer Pool
  8. 8. Fragmentação Tipos de Fragmentação  Fragmentação do Arquivo (física)  Fragmentação de Extents (lógica)  Fragmentação de Páginas (lógica)  Fragmentação de índices non-clustered (lógica) Ordenação na tabela/base de dados não implica em ordenação nos blocos físicos do disco.
  9. 9. Disco Fisicamente o seu arquivo pode estar localizado na área mais externa do disco, na área mais interna ou fragmentado por todo o disco. Você sabia que a localização do seu arquivo pode influenciar em mais de 30% a performance de IO?
  10. 10. Comparativo de Performance
  11. 11. Processador – Hyperthreding Discussão constante desde o SQL Server 2000© 2011 SolidQ 11
  12. 12. Carga de Dados Utilização de área de staging para os dados para arrumar a fragmentação Utilizar MAXDOP 1 para mover dados de staging para tabela fato Em tabelas muito grandes, utilizar particionamento e utilizar processo de carga em 3 fases, com partition switch
  13. 13. Links http://blogs.solidq.com/fferreira Data Load Best Practices: http://download.microsoft.com/download/2/ F/6/2F6AF505-30B7-4505-80E5- B363714441C7/FT_3.0_Data_Load_Best_ Practices_Overview_2_14_11.pptx

×