Kako upravljati milijunima zahtjeva dnevno uz alat Cassandra

Infobip ❤️ Netokracijašto akvizicija znači za vas - i nas?

Shift

Kako upravljati milijunima zahtjeva dnevno uz Cassandru koju koriste Apple i Netflix?

Na ovogodišnjoj konferenciji Shift, održanoj u Splitu početkom lipnja, Aki Colocić, Lead Software Engineer u tvrtki Signal Digital iz Chicaga, predstavio je alat za upravljanje velikim bazama podataka pod imenom Cassandra.

Shift

Danas je gotovo nemoguće poslovati bez ogromne količine podataka. Tvrtke koje se bave marketingom moraju poznavati svoje klijente, financijske agencije moraju poznavati kretanje dionica na tržištu, a tvrtke za streaming različitih medija moraju osigurati lak i brz pristup svom sadržaju. Svaka bi tvrtka morala imati svoje interne sekcije za izvlačenje korisnih informacija iz gomile podataka, koja svakim danom postaje sve veća, te bi se sve više ulagalo u unaprjeđenje infrastrukture za obradu podataka, a ne u core business. Upravo zato javlja se potreba za tvrtkama koje će preuzeti zadaću upravljanja i prezentiranja podataka, a jedna od njih je Signal Digital koju smo prošli tjedan upoznali na konferenciji Shift u Splitu.

Zašto je danas potrebna Cassandra

Aki, koji je tamo prezentirao kako problemu pristupaju uz alat zvan Cassandra, izdvojio je nekoliko problema s kojima se njihovi klijenti susreću, a najveći od njih je prijelaz korisnika s klasičnih laptop i desktop računala na mobilne uređaje. Navodi da su ljudi još nesigurni kada kupuju online, a posebno preko mobitela. Naime, 65% korisnika “gugla” proizvode koje žele kupiti preko pametnog telefona, ali kada trebaju kupiti proizvod, 61% njih prelazi na laptop kako bi ga platili.

Kako upravo to čini noćnu moru za oglašavanje (jer je teško pratiti pojedinog korisnika kroz sve njegove uređaje), napravili su sučelje na kojem se tvrtkama prezentiraju svi relevantni podaci. Sučelje koristi Apache Cassandru kako bi, iz preko 500 nodova, 1,5 milijarde querija po danu, 90,96 terabajta podataka u 6 podatkovnih centara diljem svijeta, svojim klijentima prezentirali samo ono što ih uistinu zanima. Osim Signal Digitala, isti alat koriste Apple, Netflix i mnogi drugi te se postavlja pitanje – zašto baš Cassandra?

Zašto koriste Cassandru

Kao odgovor Aki navodi da se Cassandra može lako “tjunati”, može biti decentralizirana, lako je dostupna i lako raste. Klijenti pristupaju jednom nodu koji zatim komunicira sa svim nodovima u prstenu. Pogodna je za upravljanje s velikom količinom podataka i, ako jedan node prestane raditi, ostali ga automatski zamijene.

Slika prstenova po regijama Signal Digital

Pomoću Cassandre preživjeli su razne probleme koje su imali s Amazonovim servisom S3, rekao je govornik, te istaknuo Kafku kao streaming platformu koju koriste, ali i naveo neke negativne strane Cassandre.

Negativne strane Cassandre

Najveći problem je CQL != SQL – što u prijevodu znači da Cassandra query language nije isto što i Structured query language, premda izgledaju slično. Na primjer, prilikom stvaranja baze koristeći CQL, potrebno je više specificirati što se kreira.

Primjer razlika između CQL i SQL:

/* Create a new keyspace in CQL */
CREATE KEYSPACE myDatabase WITH replication =
  {‘class’: ‘SimpleStrategy’, ‘replication_factor’: 1};

/* Create a new database in SQL */
CREATE DATABASE myDatabase;

Aki navodi još jednu činjenicu na koju se korisnici Cassandre moraju naviknuti, a to je da nema relacija između tablica, no zato ne treba puno resursa za stvaranje nove tablice, dok se spajanje odvija na razini aplikacije.

Razlike eBay Tech Blog

Još jedna negativna stvar kod Cassandre je ta što nije lako brisati. Kada se radi s puno različitih servera koji moraju biti sinkronizirani, naredba za brisanje prvo će se primijeniti na jednom nodeu i onda dalje proširiti na sve ostale, a to zahtijeva određeno vrijeme i moguće su komplikacije. Kada se mora puno brisati, onda se radi veliko skeniranje baze, što zahtijeva puno resursa od servera i ne preporučuje se. Osim negativnih stvari, Aki navodi i one pozitivne.

Pozitivne strane Cassandre

Zajednica korisnika Cassandre velika je i jaka te se prilikom nastanka problema može vrlo brzo očekivati pomoć. Ona se čak brine o tome da ne dođe do problema tako što se prave testovi. Postoji puno testova koji olakšavaju rad, posebno za testiranje querija, a većina njih pisani su u programskom jeziku Java. Jedni od najboljih testova su oni koje je napravio Netflix – Chaosmonkey.

Shift

Jedna od prednosti je lak monitoring nodova te brzo gašenje pojedinih dijelova lanca ako ne rade kako treba, što je najčešće uzrokovano zagađenjem servera.

Opis Cassandre te kako je integrirati s različitim alatima, sigurno može ispuniti nekoliko knjiga, ali važno je prvo odlučiti koji se cilj želi postići i što će najprikladnije zadovoljiti potrebe. Potrebno je odlučiti hoće li se koristiti Apacheova Cassandra, koja je besplatna, ili Datasax Cassandra, koja se plaća i dolazi s uključenim Spark i Elasticsearch, ali u oba slučaja developer može očekivati podršku zajednice te uz malo uloženog vremena svladati tako moćan alat. Za kraj, Aki još navodi da Signal Digital i druge tvrtke koje se bave sličnim rješenjima stalno traže perspektivne kadrove –  pa ako ste razmišljali kako unaprijediti svoj životopis i naučiti nešto novo o upravljanju velikim bazama podataka, možda bi ovo bio dobar početak.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Kolumna

Što Infobipova akvizicija Netokracije znači za hrvatsku tehnološku scenu i Netokracijin tim

Najveća tehnološka tvrtka u Hrvatskoj nas je upravo akvizirala, a mi nastavljamo urednički neovisno pratiti startup i developersku scenu, a globalno stvarati kvalitetan developerski sadržaj.

Startupi i poslovanje

Novi Zakon o radu regulira platformski rad. Što o tome misle Uber, Bolt i Glovo, a što sindikat?

Načinom na koji je u izmjenama i dopunama Zakona o radu reguliran rad putem digitalnih platformi nisu zadovoljne ni digitalne platforme, ni sindikati. Platforme se, naravno, pozivaju na fleksibilnost i slobodu koju njihovi vozači ili dostavljači cijene, a sindikat smatra kako su se opet izvukle od odgovornosti.

Startupi i poslovanje

Trebaju li se hrvatski osnivači pripremiti na “zimu” u investicijama i kako?

Kako će se kriza odraziti na domaće startupe, koji su u boljem, a koji u lošijem položaju te što savjetuju osnivačima kao obrambene mjere komentiraju Vedran Blagus iz South Central Ventures, Stevica Kuharski iz Fil Rouge Capitala i Ivaylo Simov iz Eleven Venturesa.

Što ste propustili

Intervju

Lovre de Grisogono studente sociologije priprema za zapošljavanje – u IT industriji!

Kako jednim rješenjem riješiti dva problema? Kolegij Sociologija informatičke profesije na Fakultetu hrvatskih studija buduće sociologe čini spremnijima za tržište rada, a domaćim tehnološkim poslodavcima pomaže riješiti kronični nedostatak radne snage.

Digitalni proizvodi

Operacija kralježnice potaknula je Domagoja da osmisli aplikaciju koja olakšava oporavak

Od pripreme za operaciju do korisnih informacija, vježbi i lakšeg praćenja boli ili bitnih nalaza, saznajemo kako domaća aplikacija MySpine olakšava život pacijentima i liječnicima.

Startupi i poslovanje

Napraviti dobru stvar ili napraviti stvari – dobro? Vječna dilema svakog Product Managera

Vječno pitanje koje nerijetko daje vrlo polarizirane odgovore, a postavi si ga svaki product manager u nekom trenutku - neovisno radi li se o startupu gdje tu funkciju nerijetko obavlja osnivač - ili velikoj kompaniji s 50+ product managera.

Startupi i poslovanje

Maistra i Infobip traže najbolje domaće FoodTech startupe!

Ako razvijate rješenje usmjereno na ugostiteljstvo, gastronomiju, prehrambenu tehnologiju ili razvijate tehnologije za promicanje budućnosti gastronomije i/ili ugostiteljstva - razmislite o prijavi na FoodTech Startup natjecanje. Što uključivanjem dobivate otkrivamo u nastavku.

Novost

U napadu na tisuće digitalnih novčanika povezanih sa Solanom, domaći Solflare ostao netaknut

Solana blockchain i niz drugih platformi povezanih s istim jutros su doživjele veliki napad kojim je zahvaćeno nekoliko tisuća digitalnih novčanika. Više saznajemo od Filipa Dragoslavića, su-osnivača tvrtke koja se posvetila razvoju proizvoda na ovom blockchainu.

Kultura 2.0

The Lokals: animirani NFT film koji će vas provozati kroz Jugoslaviju 80-ih

Kako je jednom malom splitskom multimedijalnom studiju koji iza sebe ima preko 70 nagrada uspjelo spojiti sedmu umjetnost i blockchain, a da ih pritom podrže i dvije francuske produkcijske kuće koje na svojim policama drže Oskara? Zvuči kao pitanje s izmišljenom premisom, ali to svakako nije.