Estatísticas SQL Server 2012/2014 September 2014.

Slides:



Advertisements
Apresentações semelhantes
O Comando DROP INDEX Para eliminar um índice definido sobre uma tabela, utilize: Drop Index on ; Ex: No Access: Drop Index X on.
Advertisements

Aula 3 – DB2 Express-C Autor:
Banco de Dados Prof. Antonio.
Banco de Dados I Aula 20.
Banco de Dados Aula 10 – SQL - DDL
SQL Structured Query Language
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados I 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
Data Warehouse Tuning O que é um Data Warehouse? Índices Bitmap
SQL Structured Query Language Juliano Brito da Justa Neves PESCD – Programa de Estágio Supervisionado de Capacitação Docente.
Maurício Edgar Stivanello
SQL – Noções Gerais Por Márcia Jacyntha N. Rodrigues Lucena
Operadores Especiais da SQL
Introdução à Engenharia da Computação
Oficina sobre banco de dados
SCC Bancos de Dados e Suas Aplicações
Linguagem de Banco de Dados - SQL
Linguagem de Banco de Dados - SQL
MySQL Gerdson de Araújo Silva Universidade Federal de Alagoas Maceió-AL, 21 de maio de 2009.
Banco de dados Profª Kelly Medeiros.
Rafael Dias Ribeiro, M.Sc.
Query Tuning Lílian Simão Oliveira.
SQL Server 2012 Tipos de Dados e Tabelas
Tópicos de Sistemas de Informação A Carlos Oberdan Rolim Ciência da Computação.
Trabalho de Desenvolvimento Processamento/Optimização de Querys.
Design Patterns / Acesso ao banco de dados (java.sql)
SQL Server 2012 Integridade de Dados
Banco de Dados PostgreSQL.
sintonia de banco de dados
Modelo E-R no Rational Rose
Banco de Dados Avançado
Oracle 9i: SQL e PL/SQL Bruno Celso Cunha de Freitas
Ensinando SQL 2012 Indexes Armando Lacerda
Desenvolvendo um script SQL
Rafael Lucio, Desenvolvedor Jr Padrão Informática e Assessor de TI Secretaria Municipal da Saúde;
Semana do SQL Server. Virtual PASS Chapter BR -2 meses de vida visitas por mês -380 artigos -20+ vídeos
Treinamento sobre SQL.
VIEW - VISÕES Professor Esp. Diego André Sant’Ana
Extended Events O que é SQL Server Extended Events? SQL Server Extended Events é um mecanismo de eventos criado no próprio código do SQL Server. É manipulável.
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson.com.br “Está conosco o Senhor dos Exércitos”
Baseado no material do Professor Raul Paradeda
©Silberschatz, Korth and Sudarshan (modificado)4.1.1Database System Concepts Capítulo 4: SQL Estrutura básica Operações com conjuntos Funções de agregação.
SQL Server Constraint UNIQUE.
Triggers (Gatilhos) Professor Esp. Diego André Sant’Ana
SQLite Banco de Dados II.
Ricardo Ferreira Schiavo
IEC Banco de Dados I Aula 04 – SQL (II) Turmas: Sistemas de Informação Professora: André Luiz da Costa Carvalho
Daniel Paulo Introdução Informações de uma tabela ou view podem ser encontradas de maneira mais rápida através da utilização.
Recuperação de Dados Banco de Dados Carina Farias
VBA – Visual Basic para Aplicativos
Linguagem de definição de dados - SQL
SELECT Professor: Virgílio Fries Müller www. vfm.com.br
BD SQL (Insert, Update, Delete) e Select Hayslan Nicolas Colicheski Bucarth – IFRO / 2015 –
Banco de Dados -Aprendendo conceitos -Usando o SQL Conf para:
Administração de banco de dados José Antônio da Cunha IFRN.
Encontro SQL BH April 2016 Melhores Práticas para Utilizar as Policies no SQL Server 2014.
Administração de Banco de dados José Antônio da Cunha CEFET-RN.
1 Programação de Banco de Dados José Antônio da Cunha George Azevedo da Silva.
José Antônio da Cunha IFRN Administração de Banco de Dados.
Capturando Dados Históricos com Change Data Capture Arthur Luz | MCSA & MCT em SQL Server
Programação para Internet Aula 12 SQL (Comandos de Consulta ao BD)
José Antônio da Cunha 2/6/2016 José Antônio - CEFET-RN 1 Disciplina: Banco de Dados.
Prática de Banco de Dados Créditos: Prof. Jefferson Silva Adaptações: Prof. Nécio de Lima Veras.
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Índices - Full Text Searching IFRN José Antonio da Cunha.
José Antônio da Cunha 3/6/2016 José Antônio - CEFET-RN 1 Copyright © Dale Carnegie & Associates, Inc.
BANCO DE DADOS BASE DE DADOS – É UMA COLEÇÃO DE DADOS INTER- RELACIONADOS, REPRESENTANDO INFORMAÇÕES SOBRE UM DOMÍNIO ESPECÍFICO. EX.: LISTA TELEFONICA,
SQL Saturday #512 Salvando dados históricos com as Temporal Tables do SQL Server 2016 Felipe de Assis
MS-SQL Server Structure Query Language
Transcrição da apresentação:

Estatísticas SQL Server 2012/2014 September 2014

Upcoming SQLSaturdays Sep 27 #325Sao Paulo Visit to register for an event near you! Tuning do Ínicio ao Fim Thiago Carlos de Alencar 09:30 AM

Quem Sou Eu? Thiago Carlos [TC] de Alencar Premier Field Engineer Blog: Certificações: MCITP e MCT

Agenda Estatísticas do SQL Server o Introdução a Estatísticas o Criando / Atualizando Estatísticas o Visualizando as Estatísticas o Lendo um Histograma o Estatísticas Filtradas No SQL 2014? o Novo Algoritmo de Cardinalidade o Melhorias em: ASC/ DESC Estimate - Join Estimates - Multiple Column Dependency Demo

Introdução a Estatísticas O SQL Server Precisa de estatísticas para tentar criar bons planos de execução. Estatísticas mantem informações sobre a distribuição dos dados A geração de estatísticas no SQL Server automática é apenas para uma coluna. Histograma pode ter até 200 “passos” É “saudável” manter muitas estatísticas? DEPENDE

Criando / Atualizando Estatísticas O SQL Server Cria / Atualiza automaticamente as estatísticas no SQL Server Estatísticas criadas automaticamente começam com _WA….. Propriedade do Banco de dados CREATE STATISTICS statistics_name ON { table_or_indexed_view_name } UPDATE STATISTICS table_or_indexed_view_name [ { { index_or_statistics__name }

Visualizando estatísticas DBCC SHOW_STATISTICS ( table_or_indexed_view_name, target ) [ WITH [ NO_INFOMSGS ] [, n ] ] :: = STAT_HEADER | DENSITY_VECTOR | HISTOGRAM | STATS_STREAM sys.stats sys.stats_columns STATS_DATE(ObjectId, Stats_id) sys.dm_db_stats_properties (Object_id, Stats_Id) Nova no SQL Server 2014 Aplica-se a SQL Server 2008 R2 SP2 e SQL Server 2012

Lendo o Histograma DBCC SHOW_STATISTICS(“Production.TransactionHistory”, TransactionDate) RANGE_HI_KEY - Valor chave de cada amostra. SELECT * FROM Production.TransactionHistory WHERE TransactionDate = ' ' RANGE_ROWS – Qtde de Linhas dos valores dentro do RANGE. Ex: O range da amostra da linha 4 vai de até (exclui o RANGE_HI_KEY) EQ_ROWS – Qtde de Linhas exatas para os valores de RANGE_HI_KEY. Ex: Para o valor de existem 203. DISTINCT_RANGE_ROWS – Qtde de valores distintos que existe para o RANGE_ROWS. Ex: Quantos valores distintos existe entre o valor de até (exclui o RANGE_HI_KEY) AVG_RANGE_ROWS – Quantidade média de registros no RANGE Ex: RANGE_ROWS / DISTINCT_RANGE_ROWS

Estatísticas Filtradas Melhor desempenho de consultas e qualidade de plano Redução de custos de manutenção de estatísticas Por ser um conjunto menor de dados Adiciona a cláusula WHERE CREATE STATISTICS NomeEstatistica ON Tabela (Coluna(n)) WHERE Predicado IS NOT NULL

Novo no SQL 2014

Novo algoritmo de cardinalidade Novo “Cardinality Estimator” - CE É um sub-componente do “Query Processor” O nível de compatibilidade deve estar em 120 (SQL 2014) Não tem mudado desde o SQL Server 7.0 – 15 Anos Tem recebido melhorias através de Services Pack, Hotfixes, traceflags e etc. Alterar a estrutura da arquitetura atual tornou-se difícil Melhora a maioria dos “Workloads” Maioria não inclui “TODAS” Teste é VITAL Regressão de Planos TF 2312 ou Nível de compatibilidade do SQL Server 2012 (110)

Melhorias em: ASC / DESC Estimativas de Valores Chaves Mudança no comportamento de “Ascending Columns” Múltiplas colunas – AND e OR Old: (S¹ * S²) * Cardinalidade / (S¹ + S²) - (S¹ * S²) * Cardinalidade Novo: C * (S¹ * SQRT(S²) * SQRT(SQRT(S³)) ….) O cálculo é feito apenas nas “quatro” primeiras seletividades Dependência de Múltiplas Colunas*. Independência de colunas em versões anteriores

Referências: columns/

DEMO

Stay Involved! Sign up for a free membership today at sqlpass.org Linked In: br.linkedin.com/in/alencardba Facebook: Thiago Carlos de Alencar PASS: