Em um sistema de gerenciamento de conteúdo, a consulta de p...
Comentários
Veja os comentários dos nossos alunos
Eu achei que essa questão requereu uma análise bem técnica. Ela quer uma estratégia para otimizar a consulta de posts que são realizadas com frequência, baseada na combinação de visualização, comentário e curtida.
Quando falamos em calcular o resultado (popularidade) em tempo de execução, entendemos que a performance vai diminuir, em razão do maior processamento e número de consultas. Já quando falamos em índices, estamos mais propensos a melhorar a performance de consultas de dados já existentes, sem a necessidade de efetuar cálculos sobre os índices (que, nesse caso, diminuiria a performance ,de toda forma). Já a trigger me parece muito próxima da função de cálculo em tempo real, pois de toda forma ela vai precisar ser acionada a cada alteração (um novo post, uma nova curtida ou uma nova visualização, por exemplo). Por essa razão, a alternativa B parece mais viável, uma vez que uma view materializada tem como vantagem o fato de armazenar valores pré calculados, mas sem necessitar que esses valores sejam calculados em tempo real. Isso pode ser feito a cada atualização, por exemplo, baseando-se em um intervalo de tempo. Digamos que armazenar novos valores nessa view a cada hora pode ser mais performático do que processar o cálculo de uma função em tempo real.
Bem, essa foi minha análise após errar a questão.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo