Um log de visualização materializada (MV) pode ser usado para permitir que uma MV faça uma atualização rápida que modifica apenas os dados que foram alterados. No entanto, várias condições impedem que o MV use o log e, portanto, requerem uma atualização completa. A Oracle implementou uma atualização completa atômica como uma exclusão e inserção de cada registro. Isso é feito mesmo que não haja alterações nos dados.
Existe uma maneira de tornar essa replicação inteligente em relação à refazer geração ? Um MERGE seguido por um DELETE requer consultar a fonte duas vezes. Valeria a pena coletar os dados em massa para fazer uma BULK MERGE e DELETE? Existe uma maneira melhor?
Atualizar:
Eu explorei usando uma tabela temporária global como uma área de preparação. Embora eles usem menos da metade do refazer, eles ainda usam muito.
insert
s. Isso se aproxima dos resultados que estou vendo e é melhor, mas não tão bom quanto eu gostaria.
append
dica) não são condições ideais para reduzir o refazer - executei alguns testes para mostrar o que quero dizer. Postado como resposta, porque eles não cabem em um comentário
insert
As operações geram muito menos desfazerdelete
ouupdate
operações (quase nenhuma de fato). Tendo vários gtts para evitar quaisquer ops caros pode ser uma abordagem bem