Data Warehouse
Data Warehouse je arhitektura namenjena čuvanju, objedinjavanju i analitičkoj upotrebi poslovnih podataka. U najjednostavnijem smislu, to je uređeno skladište podataka koje prikuplja podatke iz različitih izvora, sređuje ih, povezuje i priprema za izveštavanje, analizu, praćenje pokazatelja i donošenje odluka. Njegova glavna svrha nije svakodnevni unos transakcija, već razumevanje poslovanja kroz vreme.
Za razliku od operativnih sistema, kao što su aplikacije za prodaju, finansije, korisnike, skladište robe, kadrove ili tehničku podršku, Data Warehouse ne postoji zato da bi obradio pojedinačnu transakciju što brže. On postoji zato da bi omogućio pitanja kao što su: koliko smo prodali po mesecima, koji proizvodi rastu, koje oblasti zaostaju, koji korisnici su najvažniji, kako se troškovi menjaju kroz vreme i koji pokazatelji najbolje opisuju stanje sistema.
Ovaj tutorijal-praktikum namenjen je početnicima koji žele da razumeju šta je Data Warehouse, ali i svima koji već rade sa bazama podataka, SQL upitima, izveštajima, ETL i ELT procesima, analitičkim modelima, OLAP sistemima ili poslovnom analitikom. Data Warehouse je jedan od temeljnih pojmova rada sa podacima, jer povezuje tehničku obradu podataka sa poslovnim značenjem.
U stvarnim organizacijama podaci se najčešće nalaze rasuti po različitim sistemima. Jedan sistem čuva kupce, drugi prodaju, treći proizvode, četvrti finansije, peti korisničke zahteve, šesti tehničke evidencije. Svaki od tih sistema ima svoju strukturu, svoje šifre, svoja pravila i svoje greške. Data Warehouse pomaže da se ti odvojeni delovi povežu u jednu razumljivu analitičku celinu.
Važna osobina skladišta podataka jeste istorijska perspektiva. Operativni sistemi često čuvaju trenutno stanje, dok Data Warehouse čuva promene kroz vreme. To znači da možemo pratiti trendove, porediti periode, analizirati sezone, meriti rast ili pad, posmatrati ponašanje korisnika i razumeti posledice poslovnih odluka. Vreme je jedna od najvažnijih dimenzija svakog ozbiljnog skladišta podataka.
U prvom delu praktikuma upoznaćemo osnovne slojeve Data Warehouse arhitekture. Govorićemo o izvorima podataka, staging sloju, integracionom sloju, analitičkom sloju i prezentacionom sloju. Svaki od tih slojeva ima svoju ulogu. Podaci najpre dolaze iz izvornih sistema, zatim se privremeno smeštaju i proveravaju, potom se čiste i objedinjuju, a na kraju se pripremaju za upite, izveštaje i analitičke alate.
Posebno mesto u ovom tutorijalu imaju ETL i ELT procesi. ETL znači ekstrakcija, transformacija i učitavanje podataka. ELT znači ekstrakcija, učitavanje i zatim transformacija podataka. Oba pristupa imaju isti cilj: da podaci iz različitih izvora postanu pouzdani, dosledni i spremni za analitičku upotrebu. Razumevanje ovih procesa pomaže da shvatimo kako se sirovi poslovni zapisi pretvaraju u uređeno znanje.
Ekstrakcija podataka podrazumeva preuzimanje podataka iz izvornih sistema. To mogu biti relacione baze, CSV fajlovi, aplikacije, API servisi, ERP sistemi, CRM sistemi, logovi ili drugi izvori. Transformacija podataka obuhvata čišćenje, standardizaciju, uklanjanje duplikata, usklađivanje šifara, primenu poslovnih pravila i pripremu za zajednički model. Učitavanje je trenutak kada podaci ulaze u skladište i postaju deo analitičkog sistema.
Jedna od najvažnijih tema biće modelovanje podataka. Data Warehouse se često oslanja na dimenzione modele, jer su oni razumljivi i pogodni za poslovnu analitiku. U takvom modelu razlikujemo činjenice i dimenzije. Činjenice su merljivi događaji, iznosi, količine, rezultati i brojevi. Dimenzije daju kontekst: vreme, korisnik, proizvod, lokacija, organizaciona jedinica, kanal prodaje ili bilo koji drugi poslovni ugao posmatranja.
Upoznaćemo star schema, odnosno model zvezde, u kome se centralna tabela činjenica povezuje sa dimenzionim tabelama. Ovaj model je često jednostavan za razumevanje i brz za analitičke upite. Upoznaćemo i snowflake schema, odnosno model pahuljice, gde su dimenzije dodatno normalizovane i razložene na više povezanih tabela. Oba pristupa imaju svoje prednosti, a izbor zavisi od složenosti podataka i potreba sistema.
Drugi deo praktikuma bavi se praktičnom upotrebom skladišta podataka. Data Warehouse nije sam sebi svrha. Njegova vrednost se vidi onda kada iz njega nastaju izveštaji, dashboardi, KPI pokazatelji, OLAP analize i poslovni uvidi. Zato ćemo govoriti o data mart sistemima, tematskim skladištima podataka namenjenim određenoj oblasti poslovanja, kao što su prodaja, finansije, korisnici, ljudski resursi ili tehnička podrška.
KPI pokazatelji predstavljaju merljive pokazatelje onoga što je poslovno važno. To mogu biti prihod, trošak, broj korisnika, broj zahteva, vreme rešavanja, procenat uspešnosti, iskorišćenost resursa, rast prodaje ili bilo koja druga mera koja pomaže organizaciji da razume svoje rezultate. Dobro skladište podataka omogućava da se KPI pokazatelji računaju dosledno, proverljivo i na isti način za sve korisnike.
Govorićemo i o agregacijama. Kada analiziramo podatke, retko nas zanima samo pojedinačan red u tabeli. Često želimo zbir po mesecu, prosek po korisniku, maksimum po proizvodu, broj događaja po danu ili trend po godinama. Agregacije omogućavaju da velike količine detaljnih podataka pretvorimo u pregledne i korisne informacije. One su osnova mnogih izveštaja i kontrolnih tabli.
OLAP analiza omogućava posmatranje podataka iz više uglova. Kroz pojmove kao što su slice, dice, drill-down i roll-up naučićemo kako analitičar prelazi od šire slike ka detaljima i nazad. Na primer, možemo najpre posmatrati ukupnu prodaju po godinama, zatim se spustiti na kvartale, mesece, regione, proizvode ili korisnike. Takva analiza pomaže da se iza brojeva pronađu obrasci i objašnjenja.
Posebno ćemo obratiti pažnju na izveštavanje i dashboarde. Dobar izveštaj ne prikazuje samo podatke, već pomaže korisniku da razume stanje, promenu i prioritet. Dobar dashboard ne treba da bude pretrpan, već jasan, pregledan i usmeren na najvažnije pokazatelje. Data Warehouse obezbeđuje stabilnu pozadinu iz koje takvi izveštaji mogu pouzdano da nastaju.
Kvalitet podataka je jedna od centralnih tema svakog Data Warehouse sistema. Ako su podaci netačni, nepotpuni, duplirani, zastareli ili neusklađeni, izveštaji mogu izgledati lepo, ali neće biti pouzdani. Zato ćemo govoriti o proverama kvaliteta, master data podacima, referentnim šifrarnicima, kontroli poslovnih pravila i načinu na koji organizacija gradi poverenje u svoje podatke.
Data governance, prava pristupa, audit i lineage takođe su neophodni. U skladištu podataka često se nalaze finansijski, korisnički, organizacioni i drugi poslovno osetljivi podaci. Mora se znati ko sme da pristupi kom skupu podataka, ko je odgovoran za značenje podataka, kako se prati korišćenje i odakle je svaki važan podatak došao. Bez tih pravila, skladište podataka može postati tehnički korisno, ali poslovno rizično.
Na kraju praktikuma radićemo praktične primere i mini projekte. Krenućemo od jednostavnog primera prodaje, prepoznaćemo činjenice i dimenzije, napravićemo osnovne izveštaje, uvešćemo vremensku dimenziju i pokazati kako Data Warehouse može postati osnova za dashboard i KPI analitiku. Cilj je da veliki koncept razumemo kroz male, jasne i upotrebljive korake.
Cilj ovog tutorijala nije samo da zapamtimo definiciju Data Warehouse sistema. Cilj je da razumemo zašto je nastao, šta rešava, kako povezuje podatke iz različitih izvora i zašto je važan za svaku ozbiljnu poslovnu analitiku. Dobro projektovan Data Warehouse pretvara rasute podatke u pouzdano znanje, a pouzdano znanje je osnova boljeg odlučivanja.