INDEXED VIEWS – Turbine suas queries

Olá pessoal,

 

Hoje o tema abordado será sobre INDEXED VIEWS.

Essas são views ‘materializadas’, ou seja, consomem espaço em disco e requerem atualizações (as quais acontecem automaticamente).

As INDEXED VIEWS trazem os mesmos benefícios de views tradicionais como: encapsularem select’s grandes e complexos, controle de acesso a dados/informações, simplicidade para consultar informações.

Por possuírem seus dados (resultado da consulta da view) consolidados, trazem mais performance às consultas, porém há critérios para definir sua criação, os quais implicam em impossibilidade de criação e também em PERDA de performance (caso seja criada em situações não aconselháveis). Vejam abaixo.

Lembrando que em caso de dúvida, problemas, suporte, consultoria acesse:  SRTech Soluções

Aconselhável utilização de INDEXED VIEWS:

  • Aplicações OLAP Datawerehouse
  • 2 ou mais tabelas de grande volume e com join
  • Views que agregam data
  • Tabelas com poucos inserts, deletes e updates
  • Queries determinísticas

 

Não aconselhável utilização de INDEXED VIEWS:

  • Tabelas com muitos Insert, Update e Delete (pois precisam replicar alterações nas tabelas impactadas e nas INDEXED VIEWS)
  • Queries que não utilizem joins
  • Queries que não sejam determinísticas (queries com TOP, COUNT, COMPUTE, UNION, HAVING, DISTINCT, AVG,…)

 

Considerações obrigatórias para criação das views indexadas:

As tabelas que existem nas queries que compõe o código da view devem estar configuradas com as seguintes opções, caso não estejam, a tabela deve ser alterada (recriar tabela).

 

SET para ON

 

  • ANSI_NULLS
  • ANSI_PADDING
  • ANSI_WARNINGS
  • ARITHABORT
  • CONCAT_NULL_YIELDS_NULL
  • QUOTED_IDENTIFIER

 

SET para OFF

  • NUMERIC_ROUNDABORT

 

Após a criação de uma INDEXED VIEW, deve-se (obrigatoriamente) criar um index clusterizado para ela.

 

Segue abaixo bibliografia para instruções de criação das INDEXED VIEWS:

Em breve, teremos mais post’s!!

Abraço,

Henrique Ribeiro

Anúncios

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google photo

Está a comentar usando a sua conta Google Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s