A gravação de visualizações é muito simples, basta adicionar uma linha a uma tabela que representa a ação "visualizar". Isso é rápido porque nenhum bloqueio é necessário no banco de dados, você está apenas adicionando uma linha ao final de um heap.
Agregar isso ao número total de visualizações requer algo como fazer, o SELECT COUNT(*) FROM ...
que significa que você deve bloquear a tabela enquanto o cálculo está em andamento. Como alternativa, UPDATE ... SET num_views = num_views + 1
também exige que você bloqueie essa linha específica sempre que alguém a visualizar.
Portanto, do ponto de vista da escalabilidade, é muito mais eficiente adicionar uma linha cada vez que alguém vê o vídeo e, a SELECT COUNT(*) FROM ...
cada dez minutos, aproximadamente.
Nota Eu realmente não sei a arquitetura do YouTube, ou se até mesmo usar um banco de dados relacional para armazenar seus dados, mas o que eles fazem uso, o princípio é provável que o mesmo: inserção de dados é barato, agregando valores é (relativamente) caros .