Uvod
Pojam tabela u svakodnevnom govoru često označava jednostavnu strukturu redaka i stupaca koja služi za organizaciju podataka. No u svijetu poslovne inteligencije i skladištenja podataka riječ tabela poprima specifičnije značenje. Ovaj članak bavi se upravo tom specijaliziranom uporabom – tabelom činjenica, koja na portugalskom jeziku glasi tabela de fatos. Iako se u hrvatskom jeziku termin tabela koristi kao istoznačnica za tablicu, u nastavku ćemo ga koristiti u kontekstu dimenzijskog modeliranja, gdje tabela činjenica predstavlja središnji element zvjezdaste ili pahuljaste sheme. Cilj je pružiti jasan pregled, dati konkretne primjere i pokazati kako se takve tabele praktično koriste u analitičkim sustavima.
Što je tabela činjenica?
Tabela činjenica (eng. fact table) jest osnovna struktura u skladištu podataka koja pohranjuje kvantitativne mjere poslovnih procesa. Na primjer, u sustavu za praćenje prodaje tabela činjenica sadržavala bi iznose prodaje, količine prodanih proizvoda i ostvarene popuste. Ove brojčane vrijednosti nazivaju se mjerama ili činjenicama. Svaki redak u tabeli činjenica odgovara jednom događaju ili transakciji, a stupci se dijele na strane ključeve (koji povezuju tabelu s dimenzijama) i same mjere. Dimenzijske tabele pružaju deskriptivni kontekst – tko je kupac, koji je proizvod, kada je prodaja izvršena, u kojem gradu. Tabela činjenica nalazi se u središtu zvjezdaste sheme i omogućuje agregiranje podataka na različite načine, primjerice zbroj prodaje po regijama ili prosječna cijena po kategoriji proizvoda.

Za razumijevanje ove teme korisno je konzultirati članak na Wikipediji o fact table koji detaljno opisuje povijest i primjenu. Također, važno je napomenuti da tabela činjenica nije isto što i obična računska tablica; ona je relacijska struktura optimizirana za brzo pretraživanje i zbrajanje velikih količina podataka. U praksi se često susreću tabele činjenica s milijunima redaka, a njihov dizajn izravno utječe na performanse izvještavanja.
Struktura tabele činjenica
Svaka tabela činjenica sastoji se od dvije osnovne vrste stupaca. Prvi su strani ključevi koji referenciraju primarne ključeve dimenzijskih tabela. Na primjer, ako imamo dimenzije Vrijeme, Proizvod i Trgovina, tabela činjenica prodaje sadržavat će stupce ID_Vrijeme, ID_Proizvod i ID_Trgovina. Drugi stupci su numeričke mjere koje opisuju događaj – na primjer Količina, Iznos i Popust. Ove mjere su aditivne, poluaditivne ili neaditivne. Aditivne mjere (npr. ukupna prodaja) mogu se zbrajati po svim dimenzijama. Poluaditivne (npr. stanje zaliha) mogu se zbrajati samo po određenim dimenzijama, dok se neaditivne (npr. postotak) ne mogu zbrajati uopće.

U tabeli činjenica ključ je često složeni ključ koji se sastoji od kombinacije stranih ključeva. To omogućuje jedinstveno identificiranje svakog retka. Međutim, u suvremenim sustavima često se dodaje i zasebni identifikator (surrogate key) radi jednostavnijeg indeksiranja. Bitno je naglasiti da tabela činjenica ne sadrži opisne tekstualne atribute – svi opisi čuvaju se u dimenzijama. Ovakva dekompozicija smanjuje redundanciju i olakšava održavanje podataka.
Vrste tabela činjenica
Postoje tri glavne vrste tabela činjenica, a razlikuju se prema načinu na koji bilježe promjene u poslovnom procesu. U nastavku donosimo popis s kratkim objašnjenjima:

- Transakcijska tabela činjenica – bilježi svaki pojedinačni događaj ili transakciju u trenutku nastanka. Primjerice, svaki klik na web stranicu ili svaka prodana stavka na računu. Ova vrsta pruža najdetaljniji uvid, ali zahtijeva najviše prostora.
- Periodična tabela snimaka – uzima stanje poslovnog procesa u redovitim vremenskim intervalima (dnevno, mjesečno). Na primjer, stanje zaliha na kraju svakog dana. Ne prikazuje svaki događaj, već periodične presjeke.
- Akumulirana tabela snimaka – prati napredak procesa kroz njegov životni vijek. Najčešće se koristi za procese koji imaju više faza, poput obrade narudžbe (kada je zaprimljena, kada je poslana, kada je isporučena). Svaki redak predstavlja cjelokupni tijek događaja za jednu instancu.
Ove tri vrste omogućuju analitičarima da odaberu najprikladniju strukturu ovisno o prirodi poslovnog procesa i potrebama izvještavanja. Kombinacija različitih vrsta unutar istog skladišta podataka uobičajena je praksa.
Primjer tabele činjenica
Kako bismo lakše razumjeli koncept, prikazat ćemo pojednostavljenu tabelu činjenica prodaje. Pretpostavimo da imamo dimenzije Vrijeme, Proizvod i Kupac. Tabela činjenica sadržavat će sljedeće stupce:

| ID_Vrijeme | ID_Proizvod | ID_Kupac | Kolicina | Iznos (kn) | Popust (kn) |
|---|---|---|---|---|---|
| 20250101 | 101 | 5001 | 2 | 100.00 | 5.00 |
| 20250101 | 102 | 5002 | 1 | 50.00 | 0.00 |
| 20250102 | 101 | 5001 | 3 | 150.00 | 10.00 |
| 20250103 | 103 | 5003 | 1 | 200.00 | 20.00 |
U ovom primjeru svaki redak predstavlja jednu prodaju. Strani ključevi (ID_Vrijeme, ID_Proizvod, ID_Kupac) povezuju se s odgovarajućim dimenzijama koje sadrže opisne podatke: naziv proizvoda, ime kupca, datum itd. Mjere su Kolicina, Iznos i Popust. Ova tabela omogućuje analizu poput ukupne prodaje po kupcu, dnevne prodaje ili prosječnog popusta. Važno je napomenuti da se u stvarnom okruženju tabela činjenica ne prikazuje izravno korisnicima; oni kroz alate za izvještavanje definiraju agregacije koje sustav izračunava na temelju ove strukture.
Praktična uporaba u poslovnoj inteligenciji
U praksi se tabele činjenica koriste kao temelj za izradu izvješća, nadzornih ploča i naprednih analiza. Na primjer, u maloprodaji analitičari mogu pratiti prodaju po kategorijama proizvoda, uspoređivati performanse prodavaonica ili identificirati trendove kroz vrijeme. Tabele činjenica omogućuju brzo izračunavanje ključnih pokazatelja uspješnosti (KPI) poput ukupnog prihoda, marže ili prosječne vrijednosti narudžbe. Osim toga, one su ključne za implementaciju OLAP (Online Analytical Processing) kocki, gdje se unaprijed agregiraju podaci radi ubrzanog odziva.

Dimenzijsko modeliranje, koje uključuje tabele činjenica, široko je prihvaćeno u industriji. Pristup koji su popularizirali Ralph Kimball i njegov tim temelji se na upravo ovakvoj strukturi. Za dublje razumijevanje preporučuje se čitanje službenog članka Kimball Groupa o fact tables. U modernim okruženjima poput Microsoft Fabrica ili cloud skladišta podataka, tabele činjenica i dalje su osnova za modeliranje, iako se ponekad kombiniraju s drugim pristupima poput Data Vaulta radi veće fleksibilnosti.
Važno je napomenuti da kvaliteta tabele činjenica izravno ovisi o dizajnu dimenzija. Pogrešno definirani ključevi ili nedosljedne mjere mogu dovesti do netočnih izvješća. Stoga je preporuka da se prilikom izrade skladišta podataka pažljivo dokumentira svaka tabela činjenica – koje mjere sadrži, jesu li aditivne te koji poslovni proces pokriva. Osim toga, potrebno je redovito provjeravati integritet podataka kako bi se izbjegle anomalije poput dupliciranih redaka ili nepotpunih unosa.
Zaključak
Razumijevanje pojma tabela u kontekstu skladištenja podataka ključno je za svakoga tko se bavi analitikom i poslovnom inteligencijom. Tabela činjenica, bilo da je riječ o transakcijskoj, periodičnoj ili akumuliranoj, predstavlja okosnicu dimenzijskog modeliranja. Omogućuje učinkovito pohranjivanje i analizu brojčanih mjera, dok dimenzijske tabele pružaju kontekst. Kroz primjere i popis vrsta pokazali smo kako se takve tabele oblikuju i koriste u praksi.
U današnje vrijeme, kada podaci postaju sve brojniji i složeniji, pravilno strukturirane tabele činjenica omogućuju brz i pouzdan uvid u poslovanje. Bez obzira koristite li tradicionalne relacijske baze ili moderne cloud platforme, principi ostaju isti. Preporučuje se daljnje istraživanje kroz navedene izvore kako biste produbili znanje i primijenili ga u vlastitim projektima.
Reference
U izradi ovog članka korišteni su sljedeći izvori:
Wikipedia – Fact table: https://en.wikipedia.org/wiki/Fact_table
Microsoft Fabric Documentation – Dimensional modeling fact tables: https://learn.microsoft.com/pl-pl/fabric/data-warehouse/dimensional-modeling-fact-tables
Kimball Group – Fact Tables: https://www.kimballgroup.com/2008/11/fact-tables/
Monte Carlo Data – Fact vs. Dimension Tables Explained: https://montecarlo.ai/blog-fact-vs-dimension-tables-in-data-warehousing-explained/
Wikipedija (portugalski) – Tabela de fatos: https://pt.wikipedia.org/wiki/Tabela_de_fatos





