Merekam tampilan sangat sederhana, cukup tambahkan baris ke tabel yang mewakili tindakan "tampilan". Ini cepat karena tidak diperlukan penguncian dalam basis data, Anda hanya menambahkan satu baris ke ujung tumpukan.
Menggabungkannya ke dalam jumlah total tampilan memerlukan sesuatu seperti melakukan SELECT COUNT(*) FROM ...
yang berarti Anda harus mengunci tabel saat perhitungan sedang berlangsung. Atau, Anda UPDATE ... SET num_views = num_views + 1
juga harus mengunci baris itu setiap kali seseorang melihatnya.
Jadi dari sudut pandang skalabilitas, jauh lebih efisien untuk menambahkan baris setiap kali seseorang melihat video dan kemudian melakukannya SELECT COUNT(*) FROM ...
setiap sepuluh menit.
Catatan Saya tidak benar-benar tahu arsitektur YouTube, atau apakah mereka bahkan menggunakan database relasional untuk menyimpan data mereka, tapi apa pun yang mereka lakukan digunakan, prinsipnya adalah kemungkinan sama: Data memasukkan murah, menggabungkan nilai-nilai adalah (relatif) mahal .