Canva svakog dana prikuplja 25 milijardi događaja, omogućavajući timovima da analiziraju upotrebu proizvoda i donose odluke na osnovu podataka. Ovaj proces uključuje praćenje korisničkih interakcija, testiranje novih funkcija i pružanje personalizovanih preporuka. Svi ovi događaji se obrađuju kroz složen analitički sistem, koji održava 99.999% vremena dostupnosti.
Tim za analitiku u Canvi odgovoran je za prikupljanje i distribuciju podataka sa ciljem da osigura pouzdan, jednostavan i isplativ način za beleženje korisničkih događaja. Podaci se koriste za kreiranje statistika, personalizaciju i analize u realnom vremenu.
Jedan od ključnih izazova bio je stvaranje kompatibilnih i fleksibilnih šema podataka koje omogućavaju analitičarima da pristupaju podacima prikupljenim godinama unazad. Korišćenje jezika Protobuf omogućilo je inženjerima Canve da eliminišu potrebu za migracijom istorijskih podataka. Za ovo su razvili alat po imenu Datumgen, koji automatski generiše kod i osigurava poštovanje pravila kompatibilnosti.
Canva koristi sistem Amazon Kinesis Data Stream (KDS) za obradu događaja u realnom vremenu, ali je kako bi smanjila troškove uvela i kompresiju podataka, što je donelo značajne uštede. Kompresija podataka smanjila je troškove za 600.000 dolara godišnje.
Uprkos visokom učinku KDS-a, Canva je implementirala sistem "fallback" rešenja koristeći SQS kako bi osigurala kontinuiranu obradu podataka čak i kada dođe do opterećenja na KDS shardovima. Ovaj pristup omogućava da se događaji obrađuju bez kašnjenja.
Podaci se distribuiraju korisnicima putem sistema kao što je Snowflake, koji služi kao centralni izvor za analize, modele i dashboard-ove. Canva obrađuje stotine milijardi događaja mesečno uz minimalne troškove i visok stepen tačnosti.
0 komentara