Salah satu hal pertama yang saya pikirkan ketika menggunakan layanan baru (seperti penyimpanan data non-RDBMS atau antrian pesan) adalah: "Bagaimana saya harus menyusun data saya?".
Saya sudah membaca dan menonton beberapa materi pengantar. Secara khusus, ambil, misalnya, Kafka: Sistem Pesan Terdistribusi untuk Pemrosesan Log , yang menulis:
- "Topik adalah wadah yang terkait dengan pesan"
- "unit paralelisme terkecil adalah partisi dari suatu topik. Ini menyiratkan bahwa semua pesan yang ... termasuk bagian tertentu dari suatu topik akan dikonsumsi oleh konsumen dalam kelompok konsumen."
Mengetahui hal ini, apa yang akan menjadi contoh bagus yang menggambarkan cara menggunakan topik dan partisi? Kapan sesuatu menjadi topik? Kapan seharusnya sesuatu menjadi partisi?
Sebagai contoh, katakanlah data (Clojure) saya terlihat seperti:
{:user-id 101 :viewed "/page1.html" :at #inst "2013-04-12T23:20:50.22Z"}
{:user-id 102 :viewed "/page2.html" :at #inst "2013-04-12T23:20:55.50Z"}
Haruskah berdasarkan topik user-id
? viewed
? at
? Bagaimana dengan partisi?
Bagaimana saya memutuskan?