Cassandra Architekstura i faktor replikacije
Cassandra je dizajniran za rukovanje Big Podaci. CassandraGlavna značajka je pohranjivanje podataka na više čvorova bez jedne točke kvara.
Razlog za ovu vrstu CassandraArhitektura je takva da se hardverski kvar može dogoditi bilo kada. Svaki čvor može biti neispravan. U slučaju kvara mogu se koristiti podaci pohranjeni u drugom čvoru. Stoga, Cassandra je dizajniran sa svojom distribuiranom arhitekturom.
Cassandra pohranjuje podatke na različitim čvorovima s peer to peer distribuiranom modnom arhitekturom.
Svi čvorovi međusobno razmjenjuju informacije pomoću Protokol ogovaranja. Ogovaranje je protokol u Cassandra pomoću kojih čvorovi mogu međusobno komunicirati.
Komponente Cassandra Architektura
Postoje sljedeće komponente u Cassandra Architekstura:

Čvor
Čvor je mjesto gdje se pohranjuju podaci. To je osnovna komponenta Cassandra.
Data Center
Skup čvorova naziva se podatkovni centar. Mnogi čvorovi su kategorizirani kao podatkovni centar.
Cluster
Klaster je skup mnogih podatkovnih centara.
Dnevnik predaje
Svaka operacija pisanja zapisuje se u Dnevnik predaje. Dnevnik predaje koristi se za oporavak od pada.
Mem-stol
Nakon upisa podataka u Commit log, podaci se upisuju u Mem-table. Podaci se privremeno upisuju u Mem-table.
SSTable
Kada Mem-tablica dosegne određeni prag, podaci se ispiru u datoteku diska SSTable.
Replikacija podataka u Cassandra
Budući da se problem s hardverom može pojaviti ili veza može biti prekinuta u bilo kojem trenutku tijekom obrade podataka, potrebno je rješenje za pružanje sigurnosne kopije kada se problem pojavi. Dakle, podaci se repliciraju kako bi se osiguralo da nema niti jedne točke kvara.
Cassandra postavlja replike podataka na različite čvorove na temelju ova dva faktora.
- Gdje postaviti sljedeću repliku određuje Strategija replikacije.
- Dok je ukupan broj replika postavljenih na različite čvorove određen Faktor replikacije.
Jedan faktor replikacije znači da postoji samo jedna kopija podataka, dok faktor tri replikacije znači da postoje tri kopije podataka na tri različita čvora.
Kako bi se osiguralo da ne postoji niti jedna točka kvara, faktor replikacije mora biti tri.
Postoje dvije vrste strategija replikacije Cassandra.
SimpleStrategy u Cassandra
SimpleStrategy koristi se kada imate samo jedan podatkovni centar. SimpleStrategy postavlja prvu repliku na čvor koji je odabrao particioner. Nakon toga, preostale replike postavljaju se u smjeru kazaljke na satu u prsten čvora.
Ovdje je slikovni prikaz SimpleStrategy:

NetworkTopologyStrategy in Cassandra
NetworkTopologyStrategy koristi se kada imate više od dva podatkovna centra. U NetworkTopologyStrategy, replike su postavljene za svaki podatkovni centar posebno. NetworkTopologyStrategy postavlja replike u smjeru kazaljke na satu u prstenu dok ne dosegne prvi čvor u drugom stalku. Ova strategija pokušava postaviti replike na različite police u istom podatkovnom centru.
To je zbog razloga što ponekad može doći do kvara ili problema u stalku. Tada replike na drugim čvorovima mogu pružiti podatke.
Ovdje je slikovni prikaz strategije mrežne topologije:

Pisati Operacija u Cassandra
Koordinator šalje zahtjev za pisanje replikama. Ako su sve replike podignute, primit će zahtjev za pisanje bez obzira na njihovu razinu dosljednosti.
Razina dosljednosti određuje koliko će čvorova odgovoriti potvrdom uspjeha.
Čvor će odgovoriti potvrdom uspjeha ako su podaci uspješno zapisani u zapisnik predaje i memTable.
Na primjer, u jednom podatkovnom centru s faktorom replikacije jednakim tri, tri će replike primiti zahtjev za pisanje. Ako je razina dosljednosti jedan, samo će jedna replika odgovoriti potvrdom uspjeha, a preostale dvije ostat će u stanju mirovanja.
Pretpostavimo da preostale dvije replike izgube podatke zbog pada čvora ili nekog drugog problema, Cassandra učinit će red konzistentnim pomoću ugrađenog mehanizma za popravak Cassandra.
Ovdje je objašnjeno kako se odvija proces pisanja Cassandra,
- Kada zahtjev za pisanje dođe do čvora, on se prije svega prijavljuje u zapisnik predaje.
- Tada Cassandra zapisuje podatke u mem-tablicu. Podaci zapisani u mem-tablici na svakom zahtjevu za pisanje također se zasebno zapisuju u zapisnik predaje. Mem-tablica je privremeno pohranjen podatak u memoriji dok Commit log bilježi zapise transakcija u svrhu sigurnosnog kopiranja.
- Kada je mem-tablica puna, podaci se ispiru u podatkovnu datoteku SSTable.

Čitaj Operacija u Cassandra
Postoje tri vrste zahtjeva za čitanje koje koordinator šalje replikama.
- Izravni zahtjev
- Zahtjev za sažetak
- Pročitajte zahtjev za popravak
Koordinator šalje izravni zahtjev jednoj od replika. Nakon toga koordinator šalje sažetak zahtjeva broju replika zadanih razinom dosljednosti i provjerava jesu li vraćeni podaci ažurirani podaci.
Nakon toga koordinator šalje sažetak zahtjeva svim preostalim replikama. Ako bilo koji čvor daje zastarjelu vrijednost, zahtjev za popravkom čitanja u pozadini ažurirat će te podatke. Taj se proces naziva mehanizam popravka čitanja.
rezime
- Ovaj vodič objašnjava Cassandra unutarnju arhitekturu i kako Cassandra replicira, piše i čita podatke u različitim fazama.
- Također, ovdje se objašnjava kako Cassandra održava razinu dosljednosti tijekom cijelog procesa.
- Komponente Cassandra Archistruktura: čvor, podatkovni centar, Cluster, Dnevnik predaje, Mem-table, SSTable
- Jedan faktor replikacije znači da postoji samo jedna kopija podataka, dok faktor tri replikacije znači da postoje tri kopije podataka na tri različita čvora.
- SimpleStrategy se koristi kada imate samo jedan podatkovni centar.
- NetworkTopologyStrategy se koristi kada imate više od dva podatkovna centra.