Part 12 — Snitch
Apache Cassandra Series
- Part 1 — Introduction to Apache Cassandra
- Part 2 — The CAP Theorm
- Part 3 — Query First Approach
- Part 4 — Partitioning, Rings and Tokens
- Part 5 — Replication, Data Centers and Racks
- Part 6 — CQL — Keyspace and Table
- Part 7 — CQL — Consistancy, Inserts and Selects
- Part 8 — CQL — Timestamps, TTLs, Collections and Secondary Indexs
- Part 9 — CQL — UUIDs and Counters
- Part 10 — CQL — Materialized Views
- Part 11 — Peer To Peer Architecture
- Part 12 — Snitch
- Part 13 — Gossip Protocol
- Part 14 — Cassandra Write Path
- Part 15 — Cassandra Read Path
- Part 16 — Compaction
Snitch berfungsi untuk mencatat lokasi setiap node pada rack dan data center di Cassandra.
Simple Snitch Property File
Jenis File Snitch ini akan mencatat IP, nomor data center, dan nomor rack dari semua node yang terdapat pada kluster. Formatnya adalah sebagai berikut:
-- node 1
ip dc rack
ip dc rack
ip dc rack
ip dc rack
ip dc rack
-- node 2
ip dc rack
ip dc rack
ip dc rack
ip dc rack
ip dc rack
Gossiping Snitch Property File (Best Practice)
Jenis File Snitch ini hanya mencatat nomor data center dan nomor rack dari node itu sendiri. Formatnya adalah sebagai berikut:
-- node 1
dc rack
-- node 2
dc rack
Dynamic Snitch
Dynamic Snitch digunakan untuk memonitor performa semua node dalam kluster menggunakan Gossip Protocol. Data kinerja ini menjadi acuan untuk menentukan node mana yang digunakan untuk setiap request.
Kita berasumsi bahwa Replication Factor nya adalah 3 dan Consistency Level nya adalah Quorum. Dari gambar di atas, dapat dilihat bahwa permintaan data ditujukan ke Coordinator Node / Node 1. Karena Node 1 dan 2 berada di Data Center yang sama, yaitu Data Center 1, maka Node 1 akan menjadi node yang menerima permintaan. Selanjutnya, Node 2 di Data Center 2 dan Node 3 di Data Center 3 menjadi node terdekat. Dengan demikian, Replication Factor telah terpenuhi.
Untuk memeriksa apakah data konsisten atau tidak, kita dapat melihat timestamp atau checksum.
🔔 Jika anda menyukai artikel ini, silahkan subscribe agar anda bisa mendapatkan notifikasi jika ada artikel baru atau anda bisa melihat artikel yang telah dipublikasikan disini. 🚀
📝 Jika ada pertanyaan atau saran, anda bisa menulisnya di kolom komentar atau mengirim pesan lewat Medium.
Thank you for your support! 🌟