Categoria: ‘Banco de Dados’
View Materializada
As View Materialized assim conhecidas desde a versão 9i, são nada mais que objetos do banco de dados Oracle que contém dados locais de tabelas remotas ou são usadas pra criar uma agregação de tabelas em um determinado intervalo de tempo.
Uma curiosidade nas versões precedentes à 9i as Views Materializadas eram conhecidas como Snapshots.
Como meu professor Milton Goya já comentou, Snapshot é o nome utilizado na versão 7 do Oracle.
O comando abaixo demonstra como podemos criar uma View Materializada:
CREATE MATERIALIZED VIEW vm_employees
REFRESH FAST
START WITH SYSDATE + 1
NEXT SYSDATE + 1/24
WIDTH PRIMARY KEY
AS
SELECT empno, ename, job, salary
FROM emp;
Na sequência será detalhada cada linha do comando demonstrado acima.
CREATE MATERIALIZED VIEW vm_employees
Inicio da sintaxe para criar a visão chamada de vm_employees.
REFRESH FAST
O REFRESH indica o tipo de atualização que sofrerão os dados contidos na visão.
Existem três estados ou métodos sendo FAST, COMPLETE e FORCE.
FAST: Atualiza somente as linhas da tabela original que sofreram atualizações.
COMPLETE: Recria toda a estrutura da view materializada mesmo que não seja necessário.
FORCE: Se não for específicado o método de atualização, o padrão é FORCE, que tentará fazer uma atualização FAST se não for possível irá fazer a COMPLETE.
START WITH SYSDATE + 1
Indica que quando o banco irá fazer a primeira replicação.
NEXT SYSDATE + 1/24
Determina o intervalo entre a próxima replicação.
WIDTH PRIMARY KEY
É utilizado para criar a Chave-Primária, que é baseada na chave-primária da tabela master.
Concluí-se com esses post-tutorial que view materializadas são extremamente uteís no dia-a-dia de uma companhia que trabalha com centenas de milhares de tuplas e, o acesso à elas acaba ficando custoso. Este tipo de objeto ajuda a diminuir acesso as tabelas master de uma maneira segura e íntegra.