Svi projekti

Praćenje ekonomskih podataka

Automatizovan sistem za praćenje i analitiku ekonomskih podataka iz raspršenih spoljnih izvora

Backend analitičkog proizvoda isporučen od početka do kraja: od discovery faze i razrade pokazatelja, preko automatizovanog prikupljanja sa sajtova i raščlanjivanja Excel fajlova, do izračunavanja, REST API-ja i 4 godine podrške u produkciji. Podaci dolaze iz 7 spoljnih izvora, od kojih većina nema API.

7
spoljnih izvora podataka
≈50
pokazatelja i preseka
4×/mesečno
automatsko osvežavanje
4 godine
u produkciji
Praćenje ekonomskih podataka

Kontekst

Klijent je razvijao javni analitički proizvod namenjen ekspertima i profesionalnoj publici. Na sajtu je trebalo redovno objavljivati aktuelne ekonomske pokazatelje, analitičke preseke, grafikone i kontrolne table koje omogućavaju praćenje promena ključnih pokazatelja kroz vreme.

Za to je bio potreban jedinstven sistem koji sam prikuplja podatke iz mnoštva spoljnih izvora, svodi ih na uporediv oblik, izračunava potrebne pokazatelje i prosleđuje gotove podatke interfejsu sajta.

Izvorni podaci bili su raspoređeni između 7 spoljnih izvora, uključujući sajtove različitih organizacija i redovno objavljivane Excel fajlove. Većina izvora nije imala API.

Za šta smo bili odgovorni

NekaSoft je bio odgovoran za backend analitičkog proizvoda: od discovery faze do višegodišnje podrške. Frontend je razvijao poseban tim, a metodologiju izračunavanja obezbedile su kolege klijenta; NekaSoft je učestvovao u njenoj proveri i u razmatranju pokazatelja, preseka i logike prikaza podataka.

1

Istraživanje

  • Discovery i poslovna analiza
  • Skup pokazatelja i analitičkih preseka
  • Provera i razmatranje dobijene metodologije izračunavanja
2

Razvoj

  • Arhitektura backend-a
  • Automatizovano prikupljanje podataka sa spoljnih sajtova
  • Obrada i raščlanjivanje Excel fajlova
  • Normalizacija i agregacija podataka
  • Logika izračunavanja
  • REST API za frontend
3

Pokretanje

  • Pomoć pri postavljanju u produkciju
4

Podrška

  • Dalja podrška i razvoj sistema

Rešenje

Vidljivi deo proizvoda su grafikoni i kontrolne table na sajtu klijenta. Iza njih radi pipeline koji raspršene spoljne podatke pretvara u izračunate pokazatelje.

  • Automatizovano prikupljanje podataka pomoću Selenium-a za izvore bez API-ja
  • Poseban modul raščlanjuje Excel fajlove složene strukture: pronalazi potrebne tabele, redove i pokazatelje
  • Normalizacija svih dolaznih podataka na jedinstvenu internu strukturu
  • Agregacija po svih 7 izvora i izračunavanje oko 50 pokazatelja i prikaza
  • Rezultati se čuvaju u PostgreSQL-u i prosleđuju frontend-u preko REST API-ja
  • Pun ciklus osvežavanja izvršava se automatski 4 puta mesečno
  • Novi pokazatelji i izveštaji dodaju se kako proizvod raste

Vrednost nije u čitanju pojedinačnih stranica. Ona je u punom pipeline-u: sa jedne strane raspršeni izvori bez API-ja i nestabilni formati, sa druge uporedivi, redovno osvežavani ekonomski pokazatelji spremni za javne kontrolne table.

Snimci ekrana

Rezultat

Sistem je postao osnova podataka javnog analitičkog proizvoda klijenta.

  • Automatizovano prikupljanje podataka iz 7 spoljnih izvora
  • Obrađuju se i veb izvori i Excel fajlovi
  • Izračunava se oko 50 pokazatelja i analitičkih prikaza
  • Jedinstven backend za prikupljanje, normalizaciju, agregaciju i izračunavanja
  • REST API za integraciju sa frontend-om
  • Podaci se automatski osvežavaju 4 puta mesečno
  • Novi pokazatelji i izveštaji dodaju se kako analitički proizvod raste

Rokovi

Prva radna verzija sistema razvijena je za oko mesec i po dana.

Servis radi u produkciji već 4 godine i NekaSoft ga i dalje podržava i razvija: tim je prilagođavao prikupljanje podataka promenama spoljnih izvora, dorađivao logiku izračunavanja i dodavao nove analitičke izveštaje.

Tehnologije

JavaSpring BootSeleniumPostgreSQLApache POI

Backend je u celini rad NekaSoft-a: prikupljanje, raščlanjivanje, normalizacija, izračunavanja i REST API. Frontend je pravio poseban tim, a metodologiju izračunavanja obezbedile su kolege klijenta, uz učešće NekaSoft-a u njenoj proveri.

Da li su podaci potrebni vašem proizvodu raspršeni po izvorima koji nisu predviđeni za integraciju?