Seminarski Rad .doc

  • Uploaded by: danijela
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Seminarski Rad .doc as PDF for free.

More details

  • Words: 5,679
  • Pages: 40
UVOD Kvalitetna i pravovremena informacija je osnov za donošenje poslovnih odluka od strane menadžmenta preduzeća. Menadžeri su u svom svakodnevnom radu okruženi mnoštvom različitih podataka i informacija koje mogu biti manje ili više upotrebljive. Samo uz korišćenje savremenih softverskih alata za poslovnu analizu podataka menadžeri mogu imati kvalitetan i brz uvid u poslovanje. Sistemi za analitičko procesiranje podataka (OLAP) omogućavaju menadžerima da, samostalno, bez znanja programiranja, u realnom vremenu, obavljaju višedimenzionu analizu podataka dobijajući pritom informacije u preglednim tabelarnim i grafičkim formama. Ukratko skladište podataka je skup odabranih podataka određenog preduzeća koji je temelj sistemu za podršku odlučivanju. NJegova je glavna funkcija da izdvoji podatke iz baze 10 podataka, dobijenih iz operativne nivoa, pa ih spremi u posebnu bazu podataka u kojoj će ti podaci biti pripremljeni za dalju analizu kako bi se iz njih izvukle informacije potrebne za efikasno odlučivanje. Podaci koji se nalaze u skladištu podataka su prikupljani u dužem vremenskom periodu, što omogućava bolju analizu odnosno poređenje i predviđanje. Zbog analize podataka koji se nalaze u skladištu, verovatnoća da će se određeni podaci morati ažurirati je manja. Osnovne karakteristike skladišta podataka: • Povezanost sa produktivnim bazama podataka koje se koriste u preduzeću, koja ne podrazumeva i podudaranje u organizaciji podataka. • Orijentiranost na predmet poslovanja, umesto na aplikacije, čime se osigurava konzistentnost pogleda na poslovne podatke. • Integrisanost usled konsolidacije podataka iz različitih sistema (prema navedenom autoru, najvažnija karakteristika). • Vremenska orijentisanost koja proizlazi iz posmatranja podataka kroz vremensku dimenziju, za razliku od transakcijskih sistema koji prikazuju podatke u određenom trenutku. • Konzistentnost koja je posledica činjenice da se podaci u skladištu podataka dodaju umesto da se postojeći menjaju. Prema Nagabhushani (2008: 29) glavna svrha skladišta podataka je: • Da obezbedi korisnicima pristup podacima • Pružiti jednu verziju istine • Precizno beleženje prošlih događanja

• Efikasno pretraživanje podataka • Razdvajanje analitičkih i operativnih procesa • Pružiti podršku sistemu odlučivanja Skladišta pružaju pristup podacima koji su inače bili zaključani u okruženjima koji inače nisu "user friendli", kada kažem zaključani, mislim na to da bi korisnici morali raditi veća pretraživanja da bi došli do podataka koji su im potrebni ili bi za te podatke morali tražiti različite dozvole jer se nalaze na lokacijama koji im nisu ili ne smeju biti dostupni. Pod pružanjem jedne verzije istine se podrazumeva da određeni podaci za određene korisnike mogu značiti jednu informaciju dok ti isti podaci za nekog drugog korisnika znači nešto sasvim drugo. Iako te raznolikosti u shvatanju određenih podataka mogu prividno biti trivijalne, ali ponekad vode do brojnih loše donesenih odluka. Dinamički izveštaji pružaju korisnicima mogućnost da vide podatke iz različitih uglova, korisnici koji će trebati određene informacije izvući iz podataka koji im stoje na raspolaganju jednostavno moraju imati mogućnost efikasnog prolaženja kroz podatke iliti "slice and dice through data".

OLAP OLAP je skraćenica za "On-Line Analitical Processing" koja u prevodu označava on-line analitičku obradu, to nam ne govori mnogo o tome šta ta skraćenica zapravo označava. Najkraće bi smo mogli definisati OLAP kada bi smo rekli da je to skup alata koji nam služi za izvođenje znanja iz određenih skladišta podataka. Ono ključno što svaki OLAP alat ima zajedničko je multidimenzionalnost, odnosno mogućnost pružanja korisniku da određene podatke pregledaju odnosno analizira u različitim dimenzijama. Pod različite dimenzije podrazumevamo da određene podatke možemo analizirati prema određenom kriterijumu (mernim jedinicama) kao što je vreme, dužina, količina, lokacija, itd. Na slici 1 možemo videti odnos korisnika i OLAP-a.

korisnici

OLAP

skladište podataka

Slika 4 Odnos korisnika s OLAP sustavom

Slika prikazuje korisnike koji će analizirati podatke preko OLAP-a, koji će podatke vaditi iz skladišta podataka. OLAP omogućuje dimenzioniranje tako zvanih OLAP kocki (OLAP cube) odnosno višedimenzionalne „kocke“ podataka koje će korisnici moći analizirati različitim metodama. Korisnici će zapravo biti OLAP klijenti koji će pomoću aplikacija moći vršiti različite analize na učitanim podacima. Jezgro OLAP sistema je multidimenzionalni model podataka koji se može predstaviti u vidu OLAP kocke odn. multidimenzionalne ili hiper kocke (slika 1.1). OLAP kocku čine numerički podaci (činjenice) koje se nazivaju mere, kategorisane u dimenzije. Mere se izvode iz činjenica u tabeli činjenica sa stranim

ključevima a dimenzije se izvode iz tabela dimenzija (sadrži primarne ključeve i ostale atribute). Jedna tabela činjenica obično pokazuje na više tabela dimenzija, po hijerarhijskom principu. Obeležja i varijante OLAP alata Prema Panian i Klepce (2003: 236) OLAP ima sledeća svojstva: • OLAP predstavlja konceptualni i intuitivni model koji će razumeti svi korisnici, nezavisno o tome koliko oni obrazovani bili, čak i ako nisu specijalizovani za obavljanje analitičkih poslova. Model se zasniva na multidimenzionalnosti odnosno mogućnosti pregledanja podataka kroz veći broj filtera. • OLAP alati omogućavaju obavljanje brzih analiza što menadžerima omogućava dobijanje odgovora na pitanja koje stoje pred njima u kraćem vremenu, a to se odražava na kvalitet odluka koje kasnije donose. • Multidimenzijska struktura postavlja specifične budžetske zahteve koje OLAP alati moraju znati rešiti. Broj dimenzija je teoretski neograničen što nam govori da ti alati moraju uključiti snažne sposobnosti računanja. Kako Nagabhushana (2008) navodi, postoje 18 pravila kojih se OLAP alati moraju držati, a Codd2 je ta pravila podelio u četiri grupe nazivajući ih karakteristikama. Neka od Coddovih pravila za OLAP prema Nagabhusani (2008: 205-209): 1. Osnovne funkcije • Multidimenzionalni konceptualni pogled - pogled kroz više dimenzija iliti filtera. • Intuitivno manipulacija podataka - prema Coddle to se odnosi na model pružanja izbora prilikom manipulacije odnosno obrade podataka, jer svaki korisnik ima svoj pristup određenim operacijama stoga treba imati mogućnost izbora na koji način će određene operacije obavljati. • Pristupačnost 2 Edgar Frank Codd (1923/08/19. - 18.04.2003.) - osmislio relacijski model 13 • Batch vađenje vs interpretativno - pravilo koje nalaže da alati pružaju mogućnost pristup eksternim bazama podataka koliko i sopstvenim bazama podataka. • OLAP modeli analiziranja - odnosi se na analiziranju i istraživanju podataka koji uključuju operacije kao što su slice, dice, drill dovn, drill up ali i parametarskog statičkog izveštavanja. • Klijent / Server arhitektura • Transparentnost - korisnici bi trebali imati puni pristup svim podacima koji su im potrebni, ali ne bi ih se trebalo zamarati s informacijom odakle dolaze ti podaci ukoliko to oni ne žele znati.

• Višekorisnička podrška 2. Specijalne funkcije • Obrada ne normaliziranih podataka - to se odnosi na integraciju OLAP sistema i ne normaliziranih izvora podataka, Codd navodi da bilo koja ažuriranja podataka u OLAP okruženju ne bi smeli dopustiti menjanje ne normaliziranih podataka u sistemu. • Čuvanje OLAP rezultata - radi se o tome da Codd smatra kako OLAP aplikacije ne bi trebale biti implementirane direktno na transakcijskih podacima, a OLAP promene podataka bi se trebali držati odvojeno od tih transakcijskih podataka. Nagabhushana navodi kako je najbolji primer za to upravo Microsoftov Analisis Services o kojemu će autor detaljnije pisati u praktičnom delu ovog završnog rada. • Ekstrakcija vrednosti koji nedostaju • Obrada vrednosti koji nedostaju - sve NULL vrednosti bi se trebali ignorisati od strane OLAP sistema nezavisno o izvoru tih podataka odnosno vrednosti. 3. Izveštajnoj funkcije • Fleksibilni izveštaji - korisnici bi trebali imati mogućnost kreiranja fleksibilnih izveštaja, odnosno mogućnost da kreiraju izveštaje prema onim dimenzijama koje oni žele. • Ujednačeni izveštaji • Automatsko prilagođavanje fizičkom nivou 4. Kontrola dimenzija 14 • Generička dimenzionalnost - svaka dimenzija mora biti ekvivalentna u strukturalnim i operativnim sposobnostima. • Neograničen broj dimenzija • Neograničen broj operacija ukrštanja dimenzija - Codd navodi da bilo koja forma kalkulacija mora biti moguća u svakoj dimenziji, to je vrlo važno ako se rade složeni proračuni ne samo preko tablica, a posebno su važni u aplikacijama koje analiziraju profitabilnost. OLAP alati Postoje četiri glavne vrste OLAP alata: 1. Relacijski OLAP 2. Multidimenzionalni OLAP 3. Desktop OLAP 4. Hibridni OLAP

Slika 5 Varijante OLAP alata (Nagabhushana, 2008: 222) Relacijski OLAP iliti ROLAP alati sve podatke koje dobiju spremaju u standardne sisteme relacijskih baza podataka, ne spremivši tako ništa u eksterne repozitorije. Sposobni su raditi sa vrlo velikim skupom podataka, ali su kompleksni što dovodi do toga da su vrlo skupi za implementirati, a isto tako imaju spore performanse izvođenja upita te nisu sposobni izvoditi složenije finansijske kalkulacije. ROLAP alati ne spremaju nužno podatke za analizu odvojeno od ostalih izvornih podataka. Panian i Klepac (2003) isto tako navode kako u ROLAP alati imaju otežanu primenu standardnih upitnih jezika (npr. SQL-a), na koje su korisnici zapravo navikli pa neke druge oblike interakcije sa bazama podataka ne smatraju zapravo prednošću nego nedostatkom. Multidimenzionalni OLAP, skraćeno MOLAP predstavlja alate kod kojih su podaci sačuvani u multidimenzionalne kocke, kako se ne mogu koristiti relacijske baze podataka većinom su ti podaci sačuvani u vlastite optimizovane baze podataka višedimenzionalne matrične strukture. Panian i Klepac (2003) navode da je najveća prednost ovakve OLAP arhitekture zapravo brzina, a Nagabhushana (2008) navodi kako takvi alati jednostavno moraju pružiti visoke performanse, sofisticirane multidimenzionalne kalkulacije i funkcionalnosti. No baš zbog toga, mana ovih alata se vidi u zauzeću ogromnog prostora u slučaju postojanja većeg broja dimenzija. DOLAP alati su klijent bazirane te često koriste i relacijske i multidimenzionalne baze podataka. Neretko imaju vrlo limitirane funkcionalnosti u

poređenju sa ostalim specijalizovanim OLAP proizvodima. Razlog tome je što su prilagođene za stone računare, a samim time su prilagođene da zadovoljavaju potrebe pojedinačnih korisnika. Hibridni OLAP koristi kombinaciju tehnika spremanja podataka. Predstavljaju kombinaciju ROLAP i MOLAP arhitekture jer će određene podatke spremati u multidimenzionalne baze podataka dok će drugi deo podataka spremiti u relacijske baze podataka te tako koristi neke pogodnosti oba tehnika. Panian i Klepac (2003) su opisali kako HOLAP prvobitne informacije drži u relacijskoj bazi podataka i pristupa njima pomoću drill-through procedura, a sažetak drži u multidimenzionalnoj kocki, čime se postiže velika brzina pristupa i relativno malo zauzimanje prostora.

Struktura OLAP kocke OLAP kocka predstavlja multidimenzionalni niz podataka, odnosno grupu ćelija podataka raspoređeni po dimenzijama. Ako govorimo o OLAP kocki podrazumeva se da postoje tri dimenzije kojima se definišu podaci, a primer OLAP kocke možemo videti na slici 8. Multidimenzionalni niz podataka može imati i više od tri dimenzije, ali takav niz je teško predočiti i naziva se hiper-kocka.

.

Slika: Primer OLAP kocke Na primeru OLAP kocke (slika 8) možemo videti da sadrži tri dimenzije: • Godine • Promenljive • Klase Navedena kocka zapravo predstavlja godišnji strukturno-poslovni pokazatelj preduzeća prema NKD-u 2007 za delatnost trgovine.

Operacije nad kockom Kako bi se što lakše pročitali određene informacije iz podataka, kreiraju se izveštaji, a kako bi korisnik mogao sastaviti izveštaj koji će njemu u tom određenom trenutku odgovarati, on mora imati mogućnost različitih operacija nad podacima sa kojima raspolaže. Vercellis (2009) navodi kako su OLAP analize bazirane na hijerarhijskih koncepata kako bi se podaci konsolidirali te kako bi se kreirali logički pogledi preko dimenzija skladišta podataka. Hijerarhije koncepata

odnosno pojmova se koristi kako bi se izvele određene vizuelizacije operacija koje se čine sa data kockom u skladištima. Operacije koje se mogu izvoditi nad kockom su sledeće: • Roll-upp / Drill up - operacija koja se sastoji od agregiranja odnosno sakupljanja podataka u kocki čime ovu operaciju možemo nazvati agregiranjem. Isto kao i drill dovn to je jedna od analitičkih tehnika gde korisnik ima mogućnost navigacije nivo podataka od najsažetijih (drill up) do najdetaljnijih (drill down).

Slika 9: Hijerarhija pojmova za dimenzije lokacije i vremena (Vercellis, 2009: 60) 

Roll-down / Drill down - operacija koja omogućava korisniku analizu podataka prema većem nivou detalja u hijerarhiji koncepata. Kao primer možemo uzeti dimenziju lokacija (imamo mogućnost analize za državu, županiju, opštinu, grad, itd.), Gde spuštanjem kroz dimenzijske nivoa lokacije nazivamo drill down operacijom odnosno detaljiziranjem.



Slice and Dice - operacije koje pokreću korisnici, a uključuje interaktivnu navigaciju kroz pogled stranice, kroz specifikaciju kriški (slices) 5 pomoću rotacija i agregiranja i detaljisanja. Postoji mogućnost horizontalnog i vertikalnog analiziranja podataka. Pogled stranice je pojam koji označava trenutnu orijentaciju odnosno pogled na multidimenzionalnu krišku. Horizontalne dimenzije idu preko pogleda definišući dimenziju kolone, dok

vertikalne dimenzije idu niz pogled stranice definišući tako sadržaj reda dimenzija.



Pivot - operacija rotacije koja omogućava rotiranje osi, menjajući određene dimenzije kako bi se stekao drugi pogled na multidimenzionalnu kocku. Operacija se može sastojati od menjanja redova i kolona, pomeranja 1 reda dimenzije u dimenziju kolone, itd. Zavisno o tome koliko kocka ima dimenzija, povećava se broj mogućnosti pivotiranja.



Neograničen broj operacija ukrštanja dimenzija - Codd navodi da bilo koja forma kalkulacija mora biti moguća u svakoj dimenziji, to je vrlo važno ako se rade složeni proračuni ne samo preko tablica, a posebno su važni u aplikacijama koje analiziraju profitabilnost.

Slika 10 Primer pivot operacije6 Skladišta podataka Analitičke baze podataka uslovile su nastanak skladišta podataka (Data Warehouse-DW), čija je osnovna namena izveštavanje korišćenjem transakcionih podataka, istorijskih podataka, kao i podataka iz drugih sistema. Skladištenje podataka - DW je proces integracije podataka u jedan repozitorijum iz kojeg krajnji korisnici mogu sprovoditi ad-hock analize podataka i praviti izveštaje. Warehousing koncept je skladištenje agregiranih, ekstrahovanih i filtriranih podataka u meta baze, koje omogućavaju slojevit, multidimenzionalni pristup podacima, kakav je potreban za donošenje odluka najvišeg strateškog nivoa. Skladište podataka je informaciona baza podataka dizajnirana za podršku jedne ili više klasa analitičkih zadataka, kao što su nadgledanje i izveštavanje, analiza i dijagnoza i simulacija i planiranje. Osnovni cilj skladištenja podataka je prikupljanje i distribucija informacija kroz preduzeće, tj. korišćenje bilo koje informacije, sa bilo kog mesta, u bilo koje vreme, tačnije- ostvarenje principa „Biti uvek na usluzi korisniku informacija“. Cilj skladištenja podataka nije da se podaci samo skladište, već je cilj da menadžeri mogu sami da vrše analize. Čak i u svetu uspešnih menadžera postoje ljudi koji nisu tehnički obrazovani, a imaju potrebu za informacijama i ne znaju da programiraju. Skladište podataka je arhitektura za organizovanje informacionih sistema. Sastoji se od skupa programa koji vrše ekstrakciju podataka iz transakcionih sistema, baze podataka u koju se smeštaju podaci i sistema koji obezbeđuju podatke korisnicima.

Slika 1. Osnovna arhitektura skladišta podataka 2.1Izrada skladišta podataka Pri izgradnji skladišta podataka najbitniji su sami podaci, a ne poslovni procesi i funkcije, kao što je to slučaj sa transakcionim sistemima. Za razvoj skladišta podataka potrebno je:  izvršiti analizu izvora podataka,  pripremiti podatake,  izgraditi skladište podataka. Izgradnja „skladišta“ podataka nije samo prosto kopiranje podataka i prepuštanje korisnika alatima za podršku odlučivanju već pretpostavlja i restrukturiranje podataka denormalizacijom tabela, čišćenjem podataka od redundansi i nelogičnosti i dodavanjem novih polja i ključeva radi zadovoljenja korisnikovih potreba za sortiranjem, kombinovanjem i sumiranjem podataka.

Slika 2. Razvoj skladišta podataka Prvi korak je identifikacija dimenzija i atributa koja podseća na klasično projektovanje upotrebom ER modela i zove se dimenziono modeliranje. Dimenziono modeliranje je tehnika logičkog dizajna čiji je cilj prezentacija podataka u obliku koji obezbeđuje visoke performanse sistema radi vršenja analize podataka. U dimenzionom modeliranju, strukture podataka su tako organizovane da opisuju mere i dimenzije.  Mere su numerički podaci smešteni u centralnoj, takozvanoj tabeli činjenica (fakt tabela).  Dimenzije su standardni poslovni parametri koji definišu svaku transakciju. Osnovu za izradu dimenzionog modela predstavljaju meta podaci, na osnovu kojih se vrši definisanje hijerarhija, elemenata i atributa, normalizacija i denormalizacija i definisanje agregacija. Svaka dimenziona tabela ima svoj primarni ključ, a svi oni učestvuju u stvaranju primarnog ključa tabele činjenica. Ovakvi modeli se nazivaju šemama zvezde.

Tabele činjenica sadrže podatke koji su, najčešće, numeričkog tipa i mogu sadržati veliki broj zapisa.

Slika 3. Primeri dvodimenzionih i trodimenzionih modela podataka Kao što se vidi na predhodnoj slici, u slučaju pod a) podaci o prodaji za svaku oblast se nalaze u različitim tabelama, dok su u slučaju pod b) svi podaci smešteni u trodimenzioni niz. Iako su podaci sačuvani samo jednom i to na jednom mestu, svaki korisnik može dobiti različite poglede na jedne iste podatke. Jedan od primera dat je na sledećoj slici.

Slika 4. Različiti pogledi na iste podatke Sve dimenzione tabele su denormalizovane , što znači da se isti podaci čuvaju na više mesta da bi se obezbedila jednostavnost i poboljšale performanse. Primer normalizovane i denormalizovane reprezentacije podataka dat je na sledećoj slici.

Slika 5. Različiti načini reprezentacije podataka Izgradnja skladišta podataka se sastoji od sledećih zadataka:

 denormalizacija podataka,  definisanje hijerarhija,  kreiranje agregacija,  kreiranje fizičkog modela,  generisanje baze podataka,  učitavanje podataka. 2.1.1. Denormalizacija podataka U zavisnosti od predstave dimenzija na modelu, govorimo o normalizovanom ili denormalizovanom modelu. Kod denormalizovanog modela dimenzije su ogranizovane u šemu zvezde, a kod normalizovanog u šemu snežne pahuljice. Postoji situacije u kojima šema zvezde nije pogodna za skladište podataka. Osnovni razlozi za to su:  Denormalizovana šema zvezde može zahtevati previše memorijskog kapaciteta,  Veoma velike dimenzione tabele mogu uticati na pad performansi sistema. Ovi problemi se mogu rešiti normalizacijom dimenzija. Time se šema zvezde prevodi u šemu pahulje. Glavni nedostatak šeme pahulje je njena složenost u odnosu na šemu zvezde, čime se otežava održavanje skladišta podataka. Zato je potrebno vršiti normalizaciju samo onih dimenzija koje sadrže mnogo redova podataka i koje imaju mnogo atributa. Osnovna karakteristika šeme pahulje jeste da se ne vrši denormalizacija tabela, čime se poboljšavaju performanse sistema. Šema galaksije predstavlja kolekciju šema zvezde, tj. ako se ne može kreirati model koji bi imao samo jednu činjeničku tabelu, tada je potrebno povezati dve šeme zvezde da bi se zadovoljile potrebe korisnika.

Slika 6. Šeme zvezde, pahulje i galaksije. Fizička arhitektura dimenzionog modela opisana je pomoću šeme zvezde definisane sa dve vrste tabela – dimenzione tabele (dimension table) i tabele činjenica (fact table). Tabela činjenica sadrži kvantitativne podatke o poslovima koji opisuju specifične događaje u poslovanju, kao što su bankarske transakcije ili prodaja proizvoda, a koje korisnici analiziraju. Može sadržati i agregirane podatke, kao što je npr., mesečna prodaja. Ovi podaci su najčešće numeričkog tipa i mogu se sastojati i od nekoliko miliona redova i kolona. Dimenzione tabele su znatno manje i sadrže podatke koji opisuju dati posao, tj. one podatke po kojima se vrši analiziranje. Ti podaci se nazivaju atributi. Osnovne prednosti šeme zvezde su što omogućava definisanje složenih višedimenzionih podataka u vidu jednostavnog modela, smanjuje broj fizičkih veza koje se moraju procesirati pri zadavanju upita, čime se postiže poboljšanje performansi sistema i omogućava proširenje skladišta podataka uz relativno jednostavno održavanje. Velika mana šeme zvezde je što se povećava redundantnost podataka. Svaka tabela mora sadržati primarni ključ čiji sadržaj jedinstveno identifikuje zapise.

DIMENZIJA1 IDdimenzije1 Atribut11 Atribut12 Atribut13

CINJENICE DIMENZIJA2 IDdimenzije2 Atribut21 Atribut22 Atribut23

IDdimenzije1 (FK) IDdimenzije2 (FK) IDdimenzije3 (FK) Mera1 Mera2 Mera3

DIMENZIJA3 IDdimenzije3 Atribut31 Atribut32 Atribut33

Slika 7. Jednostavna šema zvezde (logički model) Na primeru, primarni ključ tabele činjenica je sastavljen od tri spoljna ključa. Spoljni ključ je kolona jedne tabele, čija je vrednost definisana kao primarni ključ druge tabele.

2.1.2. Definisanje hijerarhija Dimenzione tabele memorišu sledeće elemente:  traženje hijerarhijskih relacija u svakoj dimenziji,  definisanje opisnih atributa svake dimenzije. Dimenzije veoma često mogu biti organizovane u hijerarhiji. Na primer, kod dimenzije proizvod, mogu postojati tri dimenziona elementa: prozvod, grupa i vrsta proizvoda. U ovom modelu možemo reći da dimenzioni element "proizvod" predstavlja najniži hijerarhijski nivo u dimenziji proizvod, dok vrsta proizvoda predstavlja najviši nivo. Posmatranje podataka iz različitih, ali blisko povezanih perspektiva omogućava da korisnik analizira podatke na različitim nivoima detalja. Drill-down - Postupak prelaska sa nivoa sa manjim brojem detalja na nivo sa većim brojem detalja naziva se spuštanje u dubinu (drill down) i predstavlja zahtev korisnika da mu se prikaže više detalja. Na primer, pošto se pronađe

podatak o prodaji nekog regiona, spušta se naniže da bi se saznalo kako se prodaja odvija po opštinama. Drill-up - Postupak prelaska sa nivoa sa većim brojem detalja na nivo sa manjim brojem detalja, na tzv. sumarne podatke, naziva se dizanje naviše (drill up). Na primer, upit bi mogao prezentovati prodaju u odnosu na neke regione. Drill across – koristi se za povezivanje dve ili više činjeničnih tabela na istom nivou hijerarhije. 2.1.3. Agregacija Agregacijama se sumiraju detalji podataka i smeštaju u posebne tabele. Ove tabele se koriste od strane aplikacija da bi se eliminisala potreba da se ponovo vrše proračuni koji bi se inače morali sprovesti ako ove tabele ne bi postojale. Glavni razlozi kreiranja agregacija su da se poboljšaju performanse upita, tj. da se smanji vreme odziva na upit, kao i da se smanji broj resursa potrebnih za izvršenje upita. 2.1.3.1.

Agregacije zasnovane na SQL naredbama

Jedan od načina na koji se mogu kreirati agregacije jeste korišćenje SQL naredbi. Iako ovaj način nije najbolji po pitanju performansi sistema, on je najjednostavniji. 2.1.3.2.

Agregacije koje nisu zasnovane na SQL naredbama

U slučaju kreiranja agregacija koje nisu zasnovane na SQL naredbama, potrebno je razviti specijalizovane programe, što usložnjava procese razvoja i održavanja skladišta podataka.

Na primer, ako se izvrši sortiranje redova podataka po dimenziji Vreme, u tabeli će se prvo nalaziti redovi podataka koji se odnose na Dan, iza njih će biti redovi podataka koji se odnose na Nedelju itd. Zatim se na svakom mestu prelaza sa jednog nivoa dimenzije na drugi (na primer, sa Dana na Nedelju) kreiraju podzbirovi za taj nivo dimenzije. Pri tome je moguće iskoristiti prednosti paralelnog procesiranja jer su podaci podeljeni po grupama (jedan proces može računati podzbirove vezane za nivo Dan, a drugi za nivo Nedelja). Tako dobijene podzbirove treba učitati i izvršiti agregaciju. Time je proces agregacije podataka završen.

2.1.4. Kreiranje fizičkog modela U okviru kreiranja fizičkog modela baze podataka, izvodi se postupak prevođenja logičkog modela u fizički model prikazan preko dijagrama entiteti – veze koji fokusira podatke. Fizički model za potrebe našeg skladišta podataka biće orijentisan relacionim bazama podataka i koristiće se za kreiranje šeme baze podataka. Za kreiranje fizičkog modela koristiće se CASE alat ERWin, koji omogućava ostvarivanje veze između konceptualnog, dimenzionog i fizičkog modela. U okviru procesa prevođenja klasa u entitete trebalo je rešiti probleme multiplikativnosti, referencijalnog integriteta i kreiranja indeksa. Multiplikativnost definiše broj instanci jednog entiteta u relaciji sa jednom instancom drugog entiteta. Ovaj problem je rešen direktnim preuzimanjem ovih parametara sa modela objekti – veze. Referencijalni integritet se reflektuje kao postojanje prenesenog ključa u nekoj tabeli. Tamo gde se nalazi preneseni ključ, postoji “ciljna tabela”, a tamo gde je definisan primarni ključ, nalazi se “izvorna” tabela. Referencijalni integritet tabele zahteva da unesena vrednost atributa odgovara vrednosti atributa koji je primarni ključ druge tabele. Referencijalni integritet se definiše za operacije ubacivanja, brisanja i ažuriranja. Kreiranje indeksa je izvršeno automatski za sve primarne ključeve u entitetima i za prenesene ključeve u entitetu. Na primeru (slika 7), primarni ključ tabele činjenica je sastavljen od 4 spoljna ključa. Spoljni ključ je kolona jedne tabele, čija je vrednost definisana kao primarni ključ druge tabele. Na sledećoj slici prikazana je šema zvezde na primeru Magacinskog poslovanja (dokumenta – prijemnica i trebovanje).

Slika 9: Šema zvezde na primeru magacinskog poslovanja 2.1.5. Generisanje baze podataka Aktivnost generisanja baze podataka vrši se korišćenjem SQL jezika. ERWin omogućava automatsko generisanje koda preko tzv. DDL (Data Definition Language) datoteka. U sledećem koraku se vrši izvršavanje DDL datoteka pomoću Query Analyzer-a, alata koji je sastavni deo SQL Servera 2000. Ovaj alat omogućava direktno zadavanje SQL naredbi i njihovo izvršavanje u cilju generisanja baze podataka. Prilikom generisanja baze mora se doneti odluka o načinu mapiranja operacija koje će biti na raspolaganju u okviru fizičke baze podataka. Kada se ovi poslovi uspešno urade, baza (skladište) podataka je generisana. 2.1.6. Učitavanje podataka U toku učitavanja se mogu eventalno izvršiti još neke transformacije, mada bi sa transformacijama podataka trebalo završiti pre učitavanja zbog problema konzistentnosti baze.

Za učitavanje podataka može se koristiti alat MS SQL Server-a DTS (Data Transformation Services) i njegova procedura učitavanja podataka pomoću takozvanih DTS paketa. 2.2.

Primena skladišta podataka

Primena skladišta podataka u magacinskom poslovanju vezana je za analizu kretanja artikala po magacinima, kao i uvid u stanje zaliha po magacinima za određeni vremenski period, odgovora na pitanja kao što su: 1. Koji artikal ima najviše promena po magacinima? 2. Količine utrošenih i primljenih artikala po magacinima za određen vremenski period? 3. Koji magacin ima najviše promena? 4. Količina artikala za određeni vremenski period? Precizna analiza može biti osnova za planiranje nabavke utrošenih artikala i olakšava uvid u troškove po magacinima. 1.

OLAP sistemi

Interaktivno analitičko procesiranje (On Line Analytical Processing - OLAP) namenjeno je on line analizama i izveštajima, za razliku od produkcionih sistema namenjenih ažuriranju baza podataka i obradi transakcija (On Line Transaction Processing - OLTP). Postavlja se pitanje: šta je to krajnem korisniku potrebno? Ono što krajnem korisniku treba je sledeće:  Da može da postavi bilo koje poslovno pitanje,  Da bilo koji podatak iz preduzeća koristi za analizu,  Mogućnost neograničenog izveštavanja. U tu svrhu se koriste analitički OLAP sistemi koji obezbeđuju informacije koje se koriste za analizu problema ili situacija. Analitičko procesiranje se primarno vrši korišćenjem poređenja ili analiziranjem šablona i trendova. Na primer, analitički sistem bi mogao da prikaže kako se određena vrsta štampača prodaje u različitim delovima zemlje. Takođe, mogao bi da prikaže i kako se jedna vrsta proizvoda trenutno prodaje u odnosu na period kada se proizvod prvi put pojavio na tržištu.

OLAP sistemi omogućavaju jednostavnu sintezu, analizu i konsolidaciju (agregacija podataka po zadatom kriterijumu) podataka. Koriste se za intuitivnu, brzu i fleksibilnu manipulaciju transakcionim podacima. OLAP sistemi podržavaju kompleksne analize koje sprovode analitičari i omogućavaju analizu podataka iz različitih perspektiva (poslovnih dimenzija). OLAP sistemi kao skladišta podataka koriste multidimenzionalnost i denormalizaciju i može se reći da predstavljaju nadgradnju skladišta podataka.

Osnovni elementi OLAP sistema su:  baza podataka, koja služi kao osnova za analizu,  OLAP server, za upravljanje i manipulaciju podacima,  interfejs sistem, prema korisniku i prema drugim aplikacijama,  alati za administriranje. Za korišćenje OLAP složene procedure potrebno je transakcione podatke prebaciti u posebnu bazu podataka. OLAP pristup mora od hardvera da poseduje poseban računar, tzv. OLAP server, na koji se povezuju relacione BP, eksterni izvori podataka i ostali interni podaci, koji su podržani grafičkim interfejsima, radnim tabelama i ostalim PC alatima. OLAP serveri koriste višedimenzione strukture za čuvanje podataka i veza između njih. Višedimenzione strukture se najbolje vizuelizuju kao kocke podataka i kao kocke u kockama podataka. Svaka strana kocke se naziva dimenzijom. Dimenzija predstavlja kategoriju podataka, kao što su tip proizvoda, region, vreme itd. Svaka ćelija kocke sadrži agregirane podatke koji su u vezi sa dimenzijama. Na primer, jedna ćelija može sadržati podatke o ukupnoj prodaji za dati proizvod i region u toku jednog meseca. OLAP serveri podržavaju tipične analitičke operacije:  konsolidacija – ovom operacijom se vrši agregacija podataka po zadatom kriterijumu,  drill down/up – ove operacije omogućavaju prikazivanje više ili manje detalja podataka,

 isecanje (slice & dice) – ove operacije obezbeđuju prikazivanje podataka iz različitih perspektiva, pri čemu se isecanje najčešće vrši po vremenskoj dimenziji da bi se analizirali trendovi (na primer, jedan isečak kocke može prikazivati sve podatke o prodaji za zadati tip proizvoda za sve regione, a drugi isečak može prikazivati sve podatke o prodaji po kanalima za svaki tip proizvoda). Još jedna karakteristika OLAP servera jeste ta što oni smeštaju podatke u sabijenom, zgusnutom obliku. Ovo se postiže dinamičkom selekcijom tehnika za kompresiju podataka da bi se što bolje iskoristili prostori za čuvanje podataka. Retko popunjene matrice se čuvaju odvojeno od dosta popunjenih matrica. Na ovaj način OLAP serveri minimizuju zahteve za čuvanje podataka. Interfejs OLAP sistema treba da omogući korisniku komforan rad, samostalno izvođenje analitičkih operacija i dobijanje pregleda i poslovne grafike, bez znanja programiranja i strukture baze podataka.

Zahtevi koje OLAP mora da ispuni su:  mogućnost rada sa velikim skupom podataka i velikim brojem korisnika,  kratko vreme odziva na upit,  mogućnost rada sa podacima sa različitim nivoima detalja,  sposobnost proračuna složenih matematičkih funkcija,  podrška za šta-ako analizu, modelovanje i planiranje,  jednostavnost uvođenja i održavanja sistema,  zaštita podataka,  mogućnost rada sa velikim brojema alata pomoću kojih će se pristupati podacima, vršiti analiza i prikazivati podaci.

5. Analiza podataka korišćenjem Microsoft Excel dinamičke tabele Analiza podataka organizovanih u OLAP kocke može da se vrši korišćenjem PivotTable (dinamička tabela sa objedinjenim podacima iz neke baze podataka) servisa koji omogućava pristup podacima u OLAP kockama. Na sledećoj slici su prikazana dva načina pristupa podacima u OLAP kockama, korišćenjem Microsoft Excel-a ili izradom posebne aplikacije, primenom tzv. ADO mehanizama.

Slika 19. Pristup OLAP kockama U našem slučaju korišćen je Microsoft Excel jer je to alat čija je osnovna namena analiza podataka (Microsoft klasifikacija). Analiza podataka organizovanih u OLAP kocke u Excel-u se vrši izradom tzv. pivot tabela. Microsoft Excel omogućava i vršenje analiza korišćenjem dodatnih alata, koji su njegov sastavni deo. Korisnik ima mogućnost da direktno iz Excel-a vrši štampanje izveštaja za određeni pogled na podatke (izabrani nivoi detaljnosti i raspored dimenzija).

Pivot tabela predstavlja dinamičku tabelu sa objedinjenim podacima iz neke baze podataka. Ona služi za tabelarno prikazivanje više vrsta podataka. U okviru nje se sumarni podaci mogu prikazivati na bilo kom nivou detaljnosti. Za potrebe izrade pivot tabela, u Microsoft Excel-u postoji čarobnjak (PivotTable Wizard). Sam postupak izrade se odvija u sledećim koracima: Formiranje pivot tabele – sa prozora PivotTable Fild vrši se prevlačenje polja (dimenzija i sumarnih podataka) na odgovarajuća mesta u pivot tabeli (polja, strane, reda i kolone). Formirana pivot tabela je prikazana na sledećoj slici.

Slika 20. Formiranje pivot tabele

Izgradnja OLAP kocke

Izgradnja OLAP kocke biće opisana na primeru kreiranja dimenzionog modela kontrole kvaliteta. Kao izvor podataka u ovom primeru korišćen je upit (višetabelarna šema podataka) .

,

Slika 2: OLAPCube Explorer

Kao alat za kreiranje OLAP Kocke, korišćen je AderSoft –OlapCube softver. Pri pokretanju OlapCube programa, otvara se OLAPCube Explorer. Klikom na opciju New Cube otvara se dijalog za kreiranje nove kocke. U dijalog upisujemo naziv kocke koju kreiramo. I Korak: Povezivanje na izvor podataka Uz pomoć opcije Link To bira se tip izvora iz koga se preuzimaju podaci za kreiranje OLAP kocke. U ovom slučaju tip izvora podataka će biti Microsoft Access (Slika 3).

Slika 3: Povezivanje na izvor podataka Odabirom izvora Microsoft Access, iz padajućeg menija opcije Link To, otvara se sistem datoteka iz koga biramo Northwind bazu podataka.

Slika 4: Izbor izvora podataka Po izboru baze podataka, otvara se dijalog Tables iz koga se bira jedna ili vise tabela koje će se koristiti pri izgradnji OLAP kocke (Slika 5).

Slika 5: Izbor izvora podataka U ovom primeru koristiće se tabela Prodaja (Slika 5) koja je kreirana kao upit nad bazom NorthWind.

. II Korak: Definisanje dimenzija i mera U ovom primeru biće kreirano pet dimenzija: 1. 2. 3. 4. 5. 6.

Dobavljač, Dostavljač, Proizvod, Kupac, Prodavac, Vreme,

kao i četiri agregirane mere: 1. 2. 3. 4.

Količina, Cena, Popust, Cena sa popustom.

Za definisanje dimenzija i mera, pristupa se OlapCube Writer dijalogu. OlapCube Writer dijalog se sastoji od tri celine (Slika 5): 1. Na levoj strani se nalazi panel na kome je prikazana struktura kocke koja će biti kreirana: Dimensions – sekcija za definisanje dimenzija Measures – sekcija za definisanje mera Calculated Members – sekcija za definisanje izvedenih mera 2. U gornjem desnom uglu se nalazi panel u kome se nalazi struktura podataka koja je preuzeta iz izvora. 3. U donjem desnom delu, nalazi se panel koji prikazuje izabrane podatke (iz izvora ili iz kocke)

Slika 6: OlapCube Writer dijalog Da bi se definisala dimenzija Prodavac, prevlači se (Drag and Drop), atribut RegionProdavca iz izvora u sekciju Dimensions (Slika 6).

Slika 7. Kreiranje hijerarhijskog nivoa dimenzije (TeritorijaProdavca)

Prevlačenjem atributa na već definisanu dimenziju kreiraju se hijerarhijski nivoi dimenzije. U ovom slučaju kreiraće se još dva hijerarhijska nivoa: Teritorija prodavca i Prodavac (Slika 7 i Slika 8).

Slika 8. Kreiranje hijerarhijskog nivoa dimenzije (Prodavac) Kada su svi hijerarhijski nivoi dimenzije definisani, naziv dimenzije RegionProdavca, biće promenjen u Prodavac. Naziv dimenzije se menja tako što se iz padajućeg menija, koji se dobija desnim klikom miša nad željenom dimenzijom odabere opcija Properties (Slika 9).

Slika 9: Promena naziva dimenzije Opcija Properties otvara dijalog za redefinisanje naziva dimenzije.

Slika 10: Dijalog za definisanje novog naziva dimenzije Konačno definisana je hijerarhijska dimenzija Prodavac. Analognim postupkom se definišu i ostale dimenzije.

III Korak: Definicija vremenske dimenzije Vremenska dimenzija u OlapCube programu, može se direktno kreirati ukoliko postoji datumski atribut u izvoru podataka. U ovom primeru korišćen je atribut OrderDate.

Slika 11: Kreiranje vremenske dimenzije Prevlačenjem atributa OrderDate u sekciju za dimenzije otvara se dijalog za kreiranje vremenske dimenzije (Slika 11). U ovom dijalogu se određuju nivoi granularnosti vremenske dimenzije po kojima će se vršiti agregiranje mera. U ovom primeru su izabrani sledeći nivoi: Godina, Kvartal, Mesec, Dan (Slika 12)

Slika 12: Kreiranje vremenske dimenzije Kao rezultat ovog postupka dobijena je hijerahijska dimenzija Vreme (Slika 13).

Slika 13: Kreiranje vremenske dimenzije

IV Korak: Definisanje mera Za kreiranje mera u programu OlapCube, postoje dve sekcije: 1. Sekcija Measures – služi za definisanje osnovnih mera na osnovu atributa iz izvora podataka 2. Sekcija Calculated Members – služi za definisanje izvedenih mera na osnovu prethodno definisanih osnovnih mera U ovom primeru definisane su tri osnovne mere: Sum of Cena – proivod atributa CenaPoKomadu i Količina Sum of Kolicina, Sum of Popust – proizvod atributa CenaPoKomadu, Količina i Popust. Kao i jedna izvedena mera: CenaSaPopustom – razlika mera Sum of Cena i Sum of Popust

Slika 14: Kreiranje osnovnih mera modela

Odabirom opcije Properties za svaku osnovnu meru otvara se dijalog Measure u kome se definše formula na osnovu koje će se mere agregirati po dimenzijama, kao i funkcija agregiranja (Sum, Count, Max, MIn). U ovom primeru mera Cena, koja predstavlja ukupnu cenu jedne prodaje, definisana je kao proizvod izvornih atributa CenaPoKomadu i Količina. Kao funkcija agregiranja, izabrana je funkcija Sum (Slika 15).

Slika 15: Definisanje mere Cena Mera Popust, koja predstavlja apsolutnu vrednost popusta jedne prodaje, definisana je kao proizvod izvornih atributa CenaPoKomadu i Popust (u izvornim podacima Popust je dat procentualno). Kao funkcija agregiranja, izabrana je funkcija Sum (Slika 16).

Slika 16: Definisanje mere Popust

Odabirom opcije Properties za svaku izvedenu meru otvara se dijalog Calculated member u kome se definše formula na osnovu koje će se definisati izvedene mere na osnovu prethodno definisanih prostih mera. U ovom primeru, kao izvedena mera definisana je CenaSaPopustom, koja se računa kao razlika osnovnih mera Sum of Cena i Sum of Popust.

Slika 17: Definisanje izvedene mere CenaSaPopustom Konačno, kada je definisana kompletna struktura kocke (dimenzije i mere), na osnovu strukture izvornih podataka, klikom na opciju Build, prelazi se na popunjavanje kocke podacima iz izvora.

Slika 18: Kreiranje OLAP kocke

Seminarski rad

Danijela Ćirušić

Ukoliko je izgradnja kocke uspešno izvršena OlapCube daje mogućnost manipulacije kockom na dva načina: Uz pomoć OlapCube Reader – a (ugrađeni alat za izveštavanje) U z pomoć Microsoft Excel –a

Slika 19: Izbor alata za izveštavanje nad OLAP kockom

40

Related Documents


More Documents from ""