FILME DE TERROR – QUERY INFERNAL

Galerinha,

Recentemente assisti à um filme de terror que me deixou com pesadelos durante uma semana.

Gostaria de recomendá-lo à vocês, mas tenho de alertá-los que não é indicado para menores de 18 anos, pessoas com problemas cardíacos e profissionais que conhecem muito bem T-SQL.

O nome do filme é QUERY INFERNAL!!!!!!!

Prestem atenção na imagem deste plano de execução:

QueryMortal

Notou alguma coisa errada ou absurda ou quem sabe de outro planeta neste plano de execução?

Esse plano de execução é de uma consulta executada em ambiente de PRODUÇÃO através do SSMS por um usuário físico (e cabeçudo).

O meliante utilizou um antigo padrão ANSI para executar uma junção entre 5 tabelas (FROM Tabela1, Tabela2, Tabela3, Tabela4, Tabela5) e conseguiu causar um CROSS JOIN.

Conseguiram notar a estimativa de linhas retornadas pela consulta?

Serão apenas 7.774.770.000 BILHÕES de linhas retornadas, necessitando de apenas 920 GB DE MEMÓRIA para armazenar este resultado.

São em situações como esta que o DBA é extremamente necessário, pois auxiliará o desenvolvedor a escrever esta consulta seguindo as melhores práticas visando uma resposta bem mais rápida e eficiente do SQL Server.

Grande abraço a todos.

Anúncios
  1. Rubens G. Araujo
    28/05/2013 às 15:26

    Imagino que possa no mínimo ter algo errado com essa query??? Ou isso foi necessário?????????????

    Rubens G. Araujo

    (11) 98366-4459

    • 28/05/2013 às 15:33

      Fala grande Rubens.
      Com certeza foi falta de conhecimento técnico de T-SQL, hehehehe.
      Grande abraço.

  2. Gustavo Silva
    28/05/2013 às 16:38

    Prefiro acreditar que essa criatura veio de um futuro onde 920GB de memória seja algo tão inexpressivo quanto 1 bit é hoje…

  3. Frederico Madeira
    01/06/2013 às 12:36

    HAHAHA fala Vitor se os engenheiros das Microsoft ver isso os nego vão ter um surto…kkkkk e depois tem pessoas que dizem que sabem SQL e como você mesmo disse que o acesso para fazer apenas uma query rápida…kkkkkkkkkkkkkkkkkkkkkk abraços !!!!!

  4. 03/06/2013 às 20:40

    Você consegue gerar os scripts da estrutura da tabela, estrutura da estatísticas e da query em si? Assim da pra ler o histograma e saber como ele chegou nesse valor. Passa no email lá..rs.

  5. Vinicius Eroico
    04/06/2013 às 9:09

    Fala Vitor blz?….esses cara que adoram “mexer” no SQL sao uma bençao na vida dos DBAs kkkkkk….

  6. Leonardo
    30/03/2015 às 18:01

    O problema está no DBA cabeçudo que deixou um usuário rodar uma query em produção. Com certeza é DBA Júnior.

    • Ariel
      30/03/2015 às 21:23

      Infelizmente, muitas vezes digo por experiencia própria, algum gestor simplesmente diz: “Dê o acesso” e temos que conviver com isso…….

      • 31/03/2015 às 14:03

        Ariel,

        Isso acontece muito mesmo viu meu amigo.

        Acredito que nosso papel como DBA é alertar de maneira mais detalhada possível todos os possíveis impactos que um acesso desse tipo pode causar.

        Sempre lembrando que a principal responsabilidade do DBA é garantir a disponibilidade e performance do ambiente de banco de dados.

        Grande abraço.

    • 31/03/2015 às 14:01

      Grande Leonardo,

      O problema aqui foi mais de falta de comunicação mesmo, heheeh.

      Após uma análise em conjunto com o desenvolvedor a consulta foi reescrita.

      Grande abraço.

  1. 31/05/2013 às 15:30

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: