Blog

FP7 Projekt “FERARI”

(Flexible Event pRocessing for big dAta aRchItectures)

Piše: Marko Brakus

Nekoliko tehnoloških inovacija je promijenilo svijet: razvoj interneta, velika aktivnost na društvenim mrežama, popularnost pametnih telefona i sličnih osobnih elektroničkih uređaja i sveprisutnost senzora.

Danas, kao posljedica dostupnosti podataka koje nam donosi internet, društvene mreže te mobilne tehnologije, pojavljuje se potreba prikupljanja i analiziranja ogromne količine podataka. Sveprisutnost i cjenovna pristupačnost osobnih elektroničkih uređaja te bitno povećanje njihove moći procesiranja i spremanja podataka nas je dovela do eksponencijalnog rasta količine podataka. No, nije se samo količina podataka mijenjala, njihova struktura je poprimala sve složeniji oblik, zahtijevajući nove načine pohrane i obrade. Te nove tehnike pohrane i obrade nestandardno velikih količina podataka nazivamo Big Data. Big Data metode su okarakterizirane sa 3V dimenzijama:

  • Volume (veličina podataka),
  • Velocity (brzina kojom podaci dolaze i bivaju obrađivani),
  • Variety (raznolikost strukture podataka, ako ona uopće postoji),

odnosno sa 6V dimenzijama gdje su osim prethodno navedenih 3V dimenzija uključene i sljedeće:

  • Veracity (vjerodostojnost koja se odnosi na šumove i abnormalnosti u podacima),
  • Validity (neospornost podataka odnosno njihova točnost i ispravnost za određenu namjenu) te
  • Volatility (nestalnost koja se odnosi na trajanje vjerodostojnosti podataka i vrijeme njihove pohrane).

Većina postojećih Big Data rješenja bazira se na pretpostavci da su podaci koje ljudi generiraju dosljedni i pohranjeni na duže vrijeme. Takva rješenja rade u načinu paketne obrade podataka (batch processing) gdje se podaci nagomilani u distribuiranom klasteru, kao što je Apache Hadoop, obrađuju neko vrijeme. No to nije u potpunosti interaktivno. Takav princip je ograničavajući u slučaju brzo dolazećih podataka koji zahtijevaju brzu obradu i odluke. Brzi, strojno generirani podaci su poprimili veći udio sa rastom interakcija između uređaja (M2M – machine-to-machine interaction) i interneta stvari (IoT – Internet of Things). Tipični primjeri u tim  područjima su nadzor pametne energetske mreže, kontrola prometa u velikom gradu, nadzor kontrole kvalitete telekomunikacijske mreže, detekcija grešaka u velikom oblaku sa mnogo računala ili inspekcija prijevarnih transakcija kreditnih kartica u realnom vremenu.

U velikom toku strojno generiranih podataka poželjno je uspješno detektirati važne događaje (event processing). Takvi događaji mogu, na primjer, biti greška u mobilnoj mreži, povećanje latentnosti u klasteru računala, promjena u vremenu dolaska robe u trgovine ili bilo kakva slična promjena koja bi mogla biti od važnosti.

Kao primjer analize M2M toka podataka tj. potrebe za analizom velike količine podataka u skoro realnom vremenu (near real-time) možemo navesti detekciju krađe mobilnog broja pomoću analize uzoraka poziva u mobilnoj mreži. U ovom slučaju, ograničenje se može vezati uz generirane podatke (podaci telekomunikacijskih operatera o mrežnom prometu) koji jednostavno mogu biti preveliki da se centralizirano obrađuju. No, i kada bi se mogli obrađivati, detektiranje prevarantskih uzoraka ponašanja ne bi bilo dovoljno brzo i uspješno jer nedostaje takvo rješenje na distribuiranom sistemu (poput npr. Apache Hadoopa). U ovom slučaju radi se o nekoliko milijuna događaja u sekundi.

Strojni podaci su obično, za razliku od podataka koje generiraju ljudi, strukturirani i ne moraju biti pohranjeni ali moraju biti brzo procesirani. Nedostaci trenutnih Big Data rješenja pri radu s brzim M2M strojnim podacima su nefleksibilnost (potreba za ekspertnim znanjem za pohranu i analitiku), sporost (pohrana podataka i paketno procesiranje uzrokuje visoku latentnost), preveliki troškovi (pohrana takvih podataka zahtijeva puno infrastrukture i energije) te još uvijek nedovoljna skalabilnost za podatke planetarnih razmjera.

Batch_procesiranjePaketno (batch) procesiranje

Ograničenje koje ishodi iz paketne (batch) prirode je MapReduce način obrade na Hadoop sistemu i prepoznale su ga vodeće firme iz Big Data područja. Pokušale su ga zaobići izvršavanjem paketnih MapReduce poslova uslijed sporosti ali ujedno iskorištavajući Hadoop-ov HDFS (Hadoop Distributed File System) distribuirani sistem podataka. Primjeri za to su Clouderin Impala – upitni jezik sličan SQL-u ili Apache Drill koji nude mogućnost brzih SQL upita bez pokretanja suvišnih MapReduce poslova. Iako se takva rješenja često reklamiraju kao real-time, ona samo smanjuju latentnost paketnih ad hoc upita nad podacima koji su već nagomilani no ne omogućuju obradu tokova u realnom vremenu (real time stream processing).

U današnje vrijeme uistinu postoji dosta sistema za obradu tokova i događaja u realnom vremenu no procjenjuje se da je 95% njih implementirano pomoću ad-hoc programiranja i bez upotrebe postojećih frameworka. Glavni razlozi za to su nepraktičnost razmišljanja u oblicima asinhronog procesiranja događaja, kompliciranost takvih frameworka te stoga i nepristupačnost za poslovne korisnike.

Vizija FERARI projekta

Projekt je okupio tim vrhunskih svjetskih znanstvenika (Fraunhoffer IAIS, Technion – Israel Institute of Technology, IBM Israel – Science and Technology LTD, Technical University of Crete) i komercijalnih firmi (Poslovna Inteligencija d.o.o., HT – Hrvatski Telekom d.d.) koji će razviti i promovirati inovativno softversko Big Data rješenje za analizu događaja u velikim tokovima podataka. FERARI će inovativno rješenje za Big Data distribuirani sistem planetarne veličine realizirati dekompozirajući ga na nekoliko ciljeva. Rješenje će nuditi online procesiranje (online in-situ processing) umjesto paketnog centraliziranog procesiranja što je, po trenutnim saznanjima, jedini efektivni način brze obrade velikih senzorskih podataka. Takav način izbjegava mrežni promet potreban za prijenos podataka na centralizirano mjesto (distribuirani klaster) što je ujedno i presporo za analizu u skoro realnom vremenu. Postojeća Hadoop MapReduce tehnologija primjerena za paketnu obradu biti će spojena sa metodama obrade tokova (stream processing) s ciljem brže analize podataka tamo gdje su stvorene i brze isporuke analitičkih rezultata. Nove tehnike će omogućiti distribuirano izvršavanje analiza kompleksnih događaja (Complex Event Processing) tamo gdje su podaci stvoreni (in-situ). Dodatan izazov koji nas očekuje je mogućnost proširenja izvorne primjene ovog Big Data rješenja (obrada velikih podataka s weba) i na ostale grane poslovanja i industrije.

In-situ_procesiranjeIn-situ procesiranje

Procesiranje događaja u velikim tokovima će, koristeći ovo rješenje, biti pristupačnije poslovnim primjenama jer će biti ugrađene posebne tehnike strojnog učenja s ciljem omogućavanja brzog učenja i odlučivanja bez potrebe za pohranjivanjem i agregiranjem dolazećih podataka. Potencijal rješenja će biti demonstriran prvenstveno na dva primjera u ICT industriji koji imaju poteškoća s tehničkim ograničenjima. Ti primjeri su analiza prijevarnih poziva u mobilnoj telekomunikacijskoj mreži i nadzor računala u velikim računalnim oblacima i podatkovnim centrima gdje velika količina podataka već danas jako ograničava nadzor. Dok su ti primjeri upotrebe možda naočigled različiti, dijele zajednički problem, koji trenutno sprečava daljnji napredak u tim domenama s obzirom da ovise o obradi velikih količina podataka u (skoro) realnom vremenu. Napredak je blokiran primarno uslijed nemogućnosti centraliziranja podataka i zadovoljavajućih metoda brze distribuirane obrade.

Uspjeh projekta će biti rigorozno praćen kroz nekoliko kriterija: redukcija u prijenosu podataka (relevantno za Volume aspekt kod Big Data), redukcija u vremenu potrebnom za procesiranje odnosno odlučivanje (Velocity aspekt kod Big Data), mjerenje broja pogrešnih alarma (false alarms) koje sistem javlja, što je kriterij preciznosti rješenja, broj rješenja na koje je sistem primjenjiv (Variety aspekt kod Big Data) i fleksibilnost – koliko se sistem može prilagoditi na nove nepredviđene uvjete. Na projektu će ujedno, uz pomoć krajnjih korisnika, biti mjerena i lakoća upotrebe.

Utjecaj na poslovanje

Na kraju možemo reći da živimo u stoljeću u kojem se nove tehnologije razvijaju i unapređuju gotovo svakodnevno a tim tehnološkim razvojem zahvaćeno je i poslovanje samih poduzeća. Poslovna inteligencija donijela je tu velike promjene omogućujući korisnicima da na temelju svojih podataka proizašlih iz poslovanja poduzeća dobiju ključne i točne informacije na temelju kojih će donositi bitne poslovne odluke. No je li za potpunu sliku dovoljna informacija izvučena samo iz vlastitih baza podataka?

Upravo se iz tih razloga ovim projektom želi omogućiti i napraviti revolucija u poslovanju poduzeća. Tehnologije korištene na ovom projektu će omogućiti, u razmjerno kratkom vremenu, prepoznati navike korisnika te njihova mišljenja o određenim uslugama, proizvodima pa čak i o pojedinim poduzećima. Procesiranjem tih podataka možemo utjecati na poslovanje donoseći brze i kvalitetne odluke a time ostvariti bolje rezultate tj. veću konkurentnost na tržištu.

Primjenjivanje novih tehnologija ne treba smatrati luksuzom, nego potrebom, koja će umanjiti rizik od neželjenih događaja te doprinijeti podršci i osiguranju kvalitete poslovanja.

Više o samom projektu i članicama konzorcija možete saznati na web-stranici projekta na kojoj će biti objavljivani i svi javni rezultati projekta http://www.ferari-project.eu/