Treba pripisati posebne značajke olap tehnologije. Analitički OLAP sustavi. Što je OLAP

1993. utemeljitelj relacijskog pristupa izgradnji baza podataka, Edgar Codd i partneri (Edgar Codd, matematičar i IBM-ov kolega), objavili su članak koji je pokrenula tvrtka "Arbor Software" (danas je to poznata tvrtka "Hyperion Solutions") , pod nazivom „Pružanje OLAP-a (operativna analitička obrada) za korisnike analitičara“, koji je formulirao 12 značajki OLAP tehnologije, koje su naknadno dopunjene sa još šest. Ove odredbe postale su glavni sadržaj nove i vrlo obećavajuće tehnologije.

Glavne značajke OLAP tehnologije (osnovne):

  • višedimenzionalni konceptualni prikaz podataka;
  • intuitivna manipulacija podacima;
  • dostupnost i detaljnost podataka;
  • skupna ekstrakcija podataka naspram interpretacije;
  • OLAP modeli analize;
  • klijent-poslužitelj arhitektura (OLAP je dostupan s desktopa);
  • transparentnost (transparentan pristup vanjskim podacima);
  • podrška za više korisnika.

Posebne značajke (posebnosti):

  • obrada neformaliziranih podataka;
  • spremanje OLAP rezultata: njihovo pohranjivanje odvojeno od izvornih podataka;
  • isključivanje vrijednosti koje nedostaju;
  • rukovanje vrijednostima koje nedostaju.

Značajke izvješćivanja (Izvješće):

  • fleksibilnost u izvješćivanju;
  • standardno izvješćivanje;
  • automatska konfiguracija fizičkog sloja ekstrakcije podataka.

Upravljanje dimenzijama:

  • univerzalnost mjerenja;
  • neograničen broj dimenzija i razina agregacije;
  • neograničen broj operacija između dimenzija.

Povijesno gledano, danas pojam "OLAP" podrazumijeva ne samo višedimenzionalni prikaz podataka krajnjeg korisnika, već i višedimenzionalni prikaz podataka u ciljnoj bazi podataka. S tim je povezana pojava kao neovisnih pojmova "Relacijski OLAP" (ROLAP) i "Multidimenzionalni OLAP" (MOLAP).

OLAP usluga je alat za analizu velikih količina podataka u stvarnom vremenu. U interakciji s OLAP-sustavom, korisnik će moći provoditi fleksibilan pregled informacija, dobivati ​​proizvoljne rezove podataka i izvoditi analitičke operacije detaljiranja, konvolucije, end-to-end distribucije, usporedbe tijekom vremena u mnogim parametrima istovremeno. Sav rad s OLAP sustavom odvija se u terminima predmetnog područja i omogućuje izgradnju statistički valjanih modela poslovne situacije.

OLAP softver je alat za online analizu podataka sadržanih u skladištu. Glavna značajka je da ovi alati nisu namijenjeni da ih koristi stručnjak za informacijske tehnologije, ne stručnjak za statistiku, već profesionalac u primijenjenom području upravljanja - voditelj odjela, odjela, menadžmenta i, na kraju, direktor. Alati su osmišljeni kako bi omogućili analitičaru da komunicira s problemom, a ne s računalom. Na sl. 6.14 prikazuje elementarnu OLAP kocku koja vam omogućuje procjenu podataka u tri dimenzije.


Višedimenzionalna OLAP kocka i sustav odgovarajućih matematičkih algoritama za statističku obradu omogućuju vam analizu podataka bilo koje složenosti u bilo kojem vremenskom intervalu.

Riža. 6.14. Elementarna OLAP kocka

Imajući na raspolaganju fleksibilne mehanizme za manipulaciju podacima i vizualizaciju (sl. 6.15, sl. 6.16), upravitelj najprije razmatra podatke iz različitih kutova, koji mogu (a ne moraju) biti povezani s problemom koji se rješava.

Zatim, on međusobno uspoređuje različite poslovne pokazatelje, pokušavajući identificirati skrivene odnose; može detaljnije pogledati podatke, granulirati ih, na primjer, raščlaniti ih po vremenu, regiji ili kupcu, ili, obrnuto, dodatno generalizirati prezentaciju informacija kako bi se uklonili detalji koji ometaju. Nakon toga, pomoću modula statističke evaluacije i simulacije, gradi se nekoliko scenarija, a od njih se odabire najprihvatljivija opcija.

Riža. 6.15.

Menadžer tvrtke, na primjer, može doći do hipoteze da širenje rasta imovine u različitim granama tvrtke ovisi o omjeru stručnjaka s tehničkom i ekonomskom naobrazbom u njima. Kako bi provjerio ovu hipotezu, upravitelj može zatražiti od skladišta i prikazati na grafikonu omjer interesa za njega za one podružnice čiji je rast imovine u tekućem tromjesečju smanjen za više od 10% u odnosu na prošlu godinu, te za one čija je imovina porasla za više od 25%. Trebao bi moći koristiti jednostavan odabir s ponuđenog izbornika. Ako se dobiveni rezultati uočljivo svrstavaju u dvije odgovarajuće skupine, onda bi to trebao postati poticaj za daljnje ispitivanje postavljene hipoteze.

Trenutačno se brzo razvijao smjer zvan Dinamička simulacija, koji u potpunosti provodi gore navedeni princip FASMI.

Koristeći dinamičko modeliranje, analitičar gradi model poslovne situacije koja se razvija tijekom vremena, prema nekom scenariju. Istodobno, rezultat takvog modeliranja može biti nekoliko novih poslovnih situacija koje generiraju stablo mogućih odluka s procjenom vjerojatnosti i izgleda svake.

Riža. 6.16. Analitički IS za izdvajanje, obradu podataka i prezentiranje informacija

Tablica 6.3 prikazuje usporedne karakteristike statičke i dinamičke analize.

U seriji članaka "Uvod u baze podataka", nedavno objavljenom (vidi ComputerPress br. 3'2000 - 3'2001), raspravljali smo o različitim tehnologijama i softverskim alatima koji se koriste za izradu informacijskih sustava - desktop i poslužiteljski DBMS, alati za dizajn podataka, aplikacije razvojni alati, kao i Business Intelligence – alati za analizu i obradu podataka za cijelo poduzeće koji su trenutno sve popularniji u svijetu, pa tako i u našoj zemlji. Napominjemo, međutim, da su pitanja korištenja alata Business Intelligence i tehnologije koja se koristi za izradu aplikacija ove klase još uvijek nedovoljno obrađena u domaćoj literaturi. U novoj seriji članaka pokušat ćemo popuniti ovu prazninu i govoriti o tome koje su tehnologije u osnovi ovih aplikacija. Kao primjere implementacije uglavnom ćemo koristiti Microsoftove OLAP tehnologije (uglavnom Analysis Services u Microsoft SQL Server 2000), no nadamo se da će većina materijala biti korisna korisnicima drugih alata.

Prvi članak u ovoj seriji posvećen je osnovama OLAP-a (On-Line Analytical Processing) – tehnologije za višedimenzionalnu analizu podataka. U njemu ćemo pokriti koncepte skladištenja podataka i OLAP-a, zahtjeve za skladištenje podataka i OLAP alate, logičku organizaciju OLAP podataka te osnovne pojmove i koncepte koji se koriste kada se raspravlja o višedimenzionalnoj analizi.

Što je skladište podataka

Informacijski sustavi na razini poduzeća u pravilu sadrže aplikacije namijenjene složenoj višedimenzionalnoj analizi podataka, njihove dinamike, trendova itd. Takva analiza je u konačnici namijenjena pomoći u donošenju odluka. Često se ti sustavi nazivaju sustavima za podršku odlučivanju.

Nemoguće je donijeti bilo kakvu menadžersku odluku bez posjedovanja za to potrebnih informacija, obično kvantitativnih. To zahtijeva stvaranje skladišta podataka, odnosno proces prikupljanja, pregleda i predobrade podataka kako bi se dobivene informacije pružile korisnicima za statističku analizu (a često i izradu analitičkih izvješća).

Ralph Kimball, jedan od začetnika koncepta skladišta podataka, opisao je skladište podataka kao "mjesto gdje ljudi mogu pristupiti svojim podacima" (vidi, na primjer, Ralph Kimball, "The Data Warehouse Toolkit: Practical Techniques for Building Dimensional Data Warehouses ", John Wiley & Sons, 1996. i "The Data Webhouse Toolkit: Building the Web-Enabled Data Warehouse", John Wiley & Sons, 2000.). Također je formulirao osnovne zahtjeve za skladišta podataka:

  • podrška za brzo dohvaćanje podataka iz skladišta;
  • podrška internoj konzistentnosti podataka;
  • mogućnost dobivanja i usporedbe tzv. podatkovnih kriški (slice and dice);
  • dostupnost prikladnih uslužnih programa za pregled podataka u pohrani;
  • potpunost i pouzdanost pohranjenih podataka;
  • podrška za kvalitetan proces nadopune podataka.

Često nije moguće zadovoljiti sve navedene zahtjeve u okviru istog proizvoda. Stoga se za implementaciju skladišta podataka obično koristi nekoliko proizvoda, od kojih su neki zapravo sredstva za pohranu podataka, drugi su sredstva za njihovo izdvajanje i pregledavanje, treći su sredstva za njihovo punjenje itd.

Tipično skladište podataka obično se razlikuje od tipične relacijske baze podataka. Prvo, konvencionalne baze podataka dizajnirane su da pomognu korisnicima u svakodnevnom radu, dok su skladišta podataka dizajnirana za donošenje odluka. Na primjer, prodaja proizvoda i izdavanje računa vrše se pomoću baze podataka dizajnirane za obradu transakcija, te analize dinamike prodaje tijekom nekoliko godina, što vam omogućuje planiranje rada s dobavljačima, korištenjem skladišta podataka.

Drugo, redovite baze podataka podložne su stalnim promjenama u radu korisnika, a skladište podataka je relativno stabilno: podaci u njemu obično se ažuriraju prema rasporedu (npr. tjedno, dnevno ili po satu, ovisno o potrebe). U idealnom slučaju, proces nadopune je jednostavno dodavanje novih podataka tijekom određenog vremenskog razdoblja bez mijenjanja starih podataka koji su već u pohrani.

I treće, konvencionalne baze podataka najčešće su izvor podataka koji ulaze u skladište. Osim toga, repozitorij se može nadopuniti iz vanjskih izvora, kao što su statistička izvješća.

Što je OLAP

Sustavi za podršku odlučivanju obično imaju sredstva za pružanje skupnih podataka za različite uzorke iz početnog skupa u obliku prikladnom za percepciju i analizu. Obično takve agregatne funkcije tvore višedimenzionalni (i stoga nerelacijski) skup podataka (koji se često naziva hiperkocka ili metakocka) čije osi sadrže parametre i čije ćelije sadrže agregatne podatke koji ovise o njima. Duž svake osi podaci se mogu organizirati u hijerarhiju koja predstavlja različite razine detalja. Zahvaljujući ovom modelu podataka, korisnici mogu formulirati složene upite, generirati izvješća i primati podskupove podataka.

Tehnologija složene višedimenzionalne analize podataka naziva se OLAP (On-Line Analytical Processing). OLAP je ključna komponenta skladištenja podataka. Koncept OLAP-a opisao je 1993. Edgar Codd, poznati istraživač baze podataka i autor relacijskog modela podataka (vidi EF Codd, SB Codd i CTSalley, Pružanje OLAP-a (on-line analitičke obrade) korisničkim analitičarima: IT mandat, tehničko izvješće, 1993.). Godine 1995., na temelju zahtjeva koje je iznio Codd, formuliran je tzv. FASMI test (Fast Analysis of Shared Multidimensional Information – brza analiza zajedničkih multidimenzionalnih informacija), koji uključuje sljedeće zahtjeve za aplikacije za višedimenzionalnu analizu:

  • pružanje korisniku rezultata analize u prihvatljivom vremenu (obično ne duže od 5 s), čak i po cijenu manje detaljne analize;
  • mogućnost provođenja bilo kakve logičke i statističke analize specifične za ovu aplikaciju i spremanja je u obliku dostupnom krajnjem korisniku;
  • višekorisnički pristup podacima s podrškom za odgovarajuće mehanizme zaključavanja i autorizirane alate za pristup;
  • višedimenzionalni konceptualni prikaz podataka, uključujući punu podršku za hijerarhije i višestruke hijerarhije (ovo je ključni zahtjev OLAP-a);
  • mogućnost pristupa svim potrebnim informacijama, bez obzira na njihov volumen i mjesto pohrane.

Treba napomenuti da se OLAP funkcionalnost može implementirati na različite načine, od najjednostavnijih alata za analizu podataka u uredskim aplikacijama do distribuiranih analitičkih sustava temeljenih na poslužiteljskim proizvodima. No prije nego što govorimo o raznim implementacijama ove funkcionalnosti, pogledajmo što su OLAP kocke s logičnog stajališta.

Višedimenzionalne kocke

U ovom ćemo odjeljku pobliže pogledati koncept OLAP-a i višedimenzionalnih kocki. Kao primjer relacijske baze podataka koju ćemo koristiti za ilustraciju OLAP principa, koristit ćemo bazu podataka Northwind, koja je uključena u Microsoft SQL Server ili Microsoft Access, što je tipična baza podataka koja pohranjuje informacije o trgovačkim operacijama veleprodaje hrane. opskrbna tvrtka. Takvi podaci uključuju podatke o dobavljačima, kupcima, dostavnim tvrtkama, popis isporučenih roba i njihovih kategorija, podatke o narudžbama i naručenoj robi, popis zaposlenika tvrtke. Detaljan opis baze podataka Northwind možete pronaći u sustavima pomoći Microsoft SQL Server ili Microsoft Access - ovdje ga ne pružamo zbog nedostatka prostora.

Da bismo istražili koncept OLAP-a, upotrijebimo prikaz računa i tablice Proizvodi i kategorije iz baze podataka Northwind, kreirajući upit koji će vratiti pojedinosti o svim naručenim proizvodima i izdanim fakturama:

ODABIR dbo.Fakture.Zemlja, dbo.Fakture.Grad, dbo.Fakture.Naziv kupca, dbo.Računi.Prodavač, dbo.Fakture.Datum narudžbe, dbo.Kategorije.Naziv kategorije, dbo.Fakture.Naziv proizvoda, dbo.Nazivnavoka.dbo. .Fakture.ExtendedPrice FROM dbo.Proizvodi INNER JOIN dbo.Kategorije NA dbo.Products.CategoryID = dbo.Categories.CategoryID INNER JOIN dbo.Fakture NA dbo.Products.ProductID = dbo.Invoices.ProductID = dbo.Categories.CategoryID.

U Accessu 2000 sličan upit izgleda ovako:

ODABIR fakture.Country, Invoices.Grad, Invoices.Customers.CompanyName AS CustomerName, Invoices.Salesperson, Invoices.OrderDate, Categories.CategoryName, Invoices.ProductName, Invoices.Shippers.CompanyesName.Ime Shippers.CompanyNameInvo JORINO INNER JOIN Proizvodi NA fakturama.ProductID = Products.ProductID) ON Categories.CategoryID = Products.CategoryID;

Ovaj upit pristupa prikazu Računi koji sadrži informacije o svim izdanim računima, kao i tablicama Kategorije i Proizvodi, koje sadrže informacije o kategorijama proizvoda koji su naručeni, odnosno samim proizvodima. Kao rezultat ovog zahtjeva, primit ćemo skup podataka o narudžbi, uključujući kategoriju i naziv naručenog artikla, datum narudžbe, ime osobe koja je izdala račun, grad, državu i naziv tvrtku naručitelja, kao i naziv tvrtke odgovorne za isporuku.

Radi praktičnosti, spremimo ovaj zahtjev kao prikaz, nazovimo ga Invoices1. Rezultat pristupa ovom prikazu prikazan je na Sl. jedan .

Koje skupne podatke možemo dobiti na temelju ovog prikaza? Obično su to odgovori na pitanja poput:

  • Kolika je ukupna vrijednost narudžbi kupaca u Francuskoj?
  • Kolika je ukupna vrijednost narudžbi kupaca u Francuskoj i isporučenih putem Speedy Expressa?
  • Kolika je ukupna vrijednost narudžbi koje su naručili kupci u Francuskoj 1997. i isporučili ih je Speedy Express?

Prevedimo ova pitanja u SQL upite (Tablica 1).

Rezultat bilo kojeg od gornjih upita je broj. Ako parametar 'Francuska' u prvom upitu zamijenite s 'Austrija' ili imenom druge zemlje, možete ponovno pokrenuti ovaj upit i dobiti drugi broj. Nakon što obavimo ovaj postupak sa svim zemljama, dobit ćemo sljedeći skup podataka (isječak je prikazan ispod):

Zemlja SUM (Proširena cijena)
Argentina 7327.3
Austrija 110788.4
Belgija 28491.65
Brazil 97407.74
Kanada 46190.1
Danska 28392.32
Finska 15296.35
Francuska 69185.48
Njemačka 209373.6

Rezultirajući skup agregatnih vrijednosti (u ovom slučaju sume) može se tumačiti kao jednodimenzionalni skup podataka. Isti skup podataka može se dobiti i kao rezultat upita s klauzulom GROUP BY sljedećeg oblika:

ODABERITE zemlju, ZBIR (Proširena cijena) IZ faktura1 GRUPA PO DRŽAVA

Pogledajmo sada drugi upit iznad, koji sadrži dva uvjeta u klauzuli WHERE. Ako izvršimo ovaj upit, zamjenjujući u njega sve moguće vrijednosti parametara Country i ShipperName, dobit ćemo dvodimenzionalni skup podataka sljedećeg oblika (isječak je prikazan ispod):

ime pošiljatelja
Zemlja savezna plovidba Speedy Express Ujedinjeni paket
Argentina 1 210.30 1 816.20 5 092.60
Austrija 40 870.77 41 004.13 46 128.93
Belgija 11 393.30 4 717.56 17 713.99
Brazil 16 514.56 35 398.14 55 013.08
Kanada 19 598.78 5 440.42 25 157.08
Danska 18 295.30 6 573.97 7 791.74
Finska 4 889.84 5 966.21 7 954.00
Francuska 28 737.23 21 140.18 31 480.90
Njemačka 53 474.88 94 847.12 81 962.58

Takav skup podataka naziva se zaokretna tablica ili križna tablica (cross table, crosstab). Mnoge proračunske tablice i desktop DBMS-ovi omogućuju stvaranje takvih tablica - od Paradoxa za DOS do Microsoft Excel 2000. Na primjer, sličan upit izgleda ovako u Microsoft Accessu 2000:

TRANSFORM ZUM(Fakture1.ExtendedPrice) AS SumOfExtendedPrice SELECT Invoices1.Country FROM Fvoices1 GROUP BY Fvoices1.Country PIVOT fakture1.ShipperName;

Zbirni podaci za takvu zaokretnu tablicu također se mogu dobiti pomoću uobičajenog upita GROUP BY:

ODABERITE Country,ShipperName, SUM (ExtendedPrice) IZ faktura1 GROUP PO COUNTRY, ShipperName Imajte na umu, međutim, da rezultat ovog upita neće biti sama zaokretna tablica, već samo skup zbirnih podataka za njegovu konstrukciju (fragment je prikazan ispod ):

Zemlja ime pošiljatelja SUM (Proširena cijena)
Argentina savezna plovidba 845.5
Austrija savezna plovidba 35696.78
Belgija savezna plovidba 8747.3
Brazil savezna plovidba 13998.26

Treći od gornjih upita već ima tri parametra u klauzuli WHERE. Njihovim variranjem dobit ćemo trodimenzionalni skup podataka (slika 2).

Stanice kocke prikazane na sl. 2 sadrže skupne podatke koji odgovaraju vrijednostima parametara upita u klauzuli WHERE koja se nalazi na osi kocke.

Skup dvodimenzionalnih tablica možete dobiti rezanjem kocke s ravninama paralelnim s njezinim plohama (označuju se pojmovima presjeci i kriške).

Očito se podaci sadržani u ćelijama kocke također mogu dobiti pomoću odgovarajućeg upita s klauzulom GROUP BY. Osim toga, neke proračunske tablice (osobito, Microsoft Excel 2000) također vam omogućuju da izgradite trodimenzionalni skup podataka i pregledate različite dijelove kocke, paralelne s njezinim rubom, prikazane na listu radne knjige (radne knjige).

Ako klauzula WHERE sadrži četiri ili više parametara, rezultirajući skup vrijednosti (koji se također naziva OLAP kocka) može biti 4-dimenzionalni, 5-dimenzionalni i tako dalje.

Nakon što smo razmotrili što su višedimenzionalne OLAP kocke, prijeđimo na neke ključne pojmove i koncepte koji se koriste u višedimenzionalnoj analizi podataka.

Neki pojmovi i pojmovi

Zajedno sa zbrojevima, ćelije OLAP kocke mogu sadržavati rezultate izvršavanja drugih agregatnih funkcija SQL jezika, kao što su MIN, MAX, AVG, COUNT, au nekim slučajevima i druge (varijanca, standardna devijacija itd.). Pojam sažetak koristi se za opisivanje vrijednosti podataka u ćelijama (u općem slučaju može ih biti nekoliko u jednoj kocki), pojam mjera se koristi za označavanje početnih podataka na temelju kojih se izračunavaju , a izraz dimenzija (preveden na ruski) koristi se za označavanje parametara upita. obično kao "dimenzija" kada se govori o OLAP kockama i kao "dimenzija" kada se odnosi na skladišta podataka). Vrijednosti ucrtane na osi nazivaju se članovima dimenzija.

Govoreći o dimenzijama, treba napomenuti da vrijednosti ucrtane na osi mogu imati različite razine detalja. Na primjer, može nas zanimati ukupni trošak narudžbi kupaca u različitim zemljama ili ukupni trošak narudžbi kupaca iz drugih gradova ili čak pojedinačnih kupaca. Naravno, rezultirajući skup zbirnih podataka u drugom i trećem slučaju bit će detaljniji nego u prvom. Imajte na umu da mogućnost dobivanja agregatnih podataka s različitim stupnjevima detalja odgovara jednom od zahtjeva za skladišta podataka - zahtjevu za dostupnost različitih rezova podataka za usporedbu i analizu.

Budući da u razmatranom primjeru, u općem slučaju, svaka država može imati nekoliko gradova, a grad može imati nekoliko kupaca, možemo govoriti o hijerarhijama vrijednosti u dimenzijama. U ovom slučaju zemlje su na prvoj razini hijerarhije, gradovi na drugoj, a kupci na trećoj (slika 3.).

Imajte na umu da se hijerarhije mogu izbalansirati, kao što je, na primjer, hijerarhija prikazana na Sl. 3 , kao i hijerarhije temeljene na podacima datum-vrijeme i one neuravnotežene. Tipičan primjer neuravnotežene hijerarhije je hijerarhija tipa "šef-podređeni" (može se izgraditi, na primjer, korištenjem vrijednosti polja Prodavač izvornog skupa podataka iz prethodnog primjera), prikazana je na sl. 4 .

Ponekad se za takve hijerarhije koristi izraz hijerarhija roditelj-dijete.

Postoje i hijerarhije koje zauzimaju srednju poziciju između uravnoteženih i neuravnoteženih (označuju se izrazom raščupane - "neravne"). Obično sadrže članove čiji logički "roditelji" nisu na neposredno višoj razini (na primjer, postoje razine države, grada i države u geografskoj hijerarhiji, ali postoje zemlje u skupu podataka koje nemaju države ili regije između Razine države i grada ; Slika 5).

Imajte na umu da neuravnotežene i "neravne" hijerarhije ne podržavaju svi OLAP alati. Na primjer, obje vrste hijerarhije podržane su u Microsoft Analysis Services 2000, dok su samo one uravnotežene podržane u Microsoft OLAP Services 7.0. Različiti u različitim OLAP alatima može biti broj razina hijerarhije, i najveći dopušteni broj članova jedne razine, te najveći mogući broj samih dimenzija.

Zaključak

U ovom članku upoznali smo se s osnovama OLAP-a. Naučili smo sljedeće:

  • Svrha skladišta podataka je pružiti korisnicima informacije za statističku analizu i donošenje upravljačkih odluka.
  • Skladišta podataka moraju osigurati veliku brzinu prikupljanja podataka, mogućnost dobivanja i usporedbe takozvanih podatkovnih kriški, kao i konzistentnost, potpunost i pouzdanost podataka.
  • OLAP (On-Line Analytical Processing) ključna je komponenta izgradnje i korištenja skladišta podataka. Ova tehnologija temelji se na konstrukciji višedimenzionalnih skupova podataka – OLAP kocki, čije osi sadrže parametre, a ćelije agregatne podatke koji o njima ovise.
  • Aplikacije s OLAP funkcionalnošću moraju korisniku pružiti rezultate analize u razumnom vremenu, izvršiti logičku i statističku analizu, podržati višekorisnički pristup podacima, implementirati višedimenzionalni konceptualni prikaz podataka i biti u mogućnosti pristupiti svim potrebnim informacijama.

Osim toga, ispitali smo osnovne principe logičke organizacije OLAP kocki, te naučili osnovne pojmove i koncepte koji se koriste u multidimenzionalnoj analizi. Konačno smo naučili koje su različite vrste hijerarhija u dimenzijama OLAP kocke.

U sljedećem članku ove serije pogledat ćemo tipičnu strukturu skladišta podataka, govoriti o tome što čini klijentski i poslužiteljski OLAP, a također ćemo se zadržati na nekim tehničkim aspektima višedimenzionalne pohrane podataka.

ComputerPress 4 "2001

OLAP (OnLine Analytical Processing) nije naziv određenog proizvoda, već cijele tehnologije online analitičke obrade koja uključuje analizu podataka i izvješćivanje. Korisniku se pruža višedimenzionalna tablica koja automatski sažima podatke u različitim odjeljcima i omogućuje brzo upravljanje izračunima i oblikom izvješća.

Iako se u nekim publikacijama analitička obrada naziva i online i interaktivnom, pridjev "online" najtočnije odražava značenje OLAP tehnologije. Razvoj upravljačkih upravljačkih odluka spada u kategoriju područja koja se najviše lažno podvrgavaju automatizaciji. Međutim, danas postoji mogućnost pomoći menadžeru u izradi odluka i, što je najvažnije, značajno ubrzati proces izrade odluka, njihovog odabira i donošenja.

Sustavi za podršku odlučivanju obično imaju sredstva za pružanje skupnih podataka za različite uzorke iz početnog skupa u obliku prikladnom za percepciju i analizu. Takve agregatne funkcije u pravilu tvore višedimenzionalni skup podataka, koji se često naziva hiperkocka ili metakocka, čije osi sadrže parametre, a ćelije sadrže agregatne podatke koji o njima ovise – a takvi se podaci također mogu pohraniti u relacijske tablice, ali u ovom U slučaju govorimo o logičkoj organizaciji podataka, a ne o fizičkoj implementaciji njihove pohrane.

Duž svake osi podaci se mogu organizirati u hijerarhiju koja predstavlja različite razine detalja.

Prema dimenzijama u višedimenzionalnom modelu, čimbenici koji utječu na aktivnosti poduzeća stavljaju se po strani (na primjer: vrijeme, proizvodi, podružnice poduzeća itd.). Rezultirajuća OLAP-kocka se zatim puni pokazateljima aktivnosti poduzeća (cijene, prodaja, plan, dobit, novčani tijek, itd.). Treba napomenuti da, za razliku od geometrijske kocke, lica OLAP kocke ne moraju imati istu veličinu. Ovo popunjavanje može se provesti kako sa stvarnim podacima operativnih sustava, tako i predvidjeti na temelju povijesnih podataka. Dimenzije hiperkocke mogu biti složene, hijerarhijske i između njih se mogu uspostaviti odnosi. Tijekom analize korisnik može promijeniti točku gledišta na podatke (tzv. operacija promjene logičkog pogleda), pri čemu pregledava podatke u različitim dijelovima i rješava specifične probleme. Na kockama se mogu izvesti razne operacije, uključujući predviđanje i uvjetno zakazivanje (što ako analiza).

Zahvaljujući ovom modelu podataka, korisnici mogu formulirati složene upite, generirati izvješća i primati podskupove podataka. Operativno-analitička obrada može značajno pojednostaviti i ubrzati proces pripreme i donošenja odluka od strane upravljačkog osoblja. Online analitička obrada služi u svrhu pretvaranja podataka u informaciju. Temeljno se razlikuje od tradicionalnog procesa potpore odlučivanju, koji se najčešće temelji na razmatranju strukturiranih izvješća.


OLAP tehnologija se odnosi na vrstu intelektualne analize i uključuje 12 principa:

1. Konceptualni višedimenzionalni prikaz. Korisnički analitičar vidi svijet poduzeća kao višedimenzionalnu prirodu, odnosno, a OLAP model u svojoj srži mora biti višedimenzionalan.

2. Transparentnost. Arhitektura OLAP sustava trebala bi biti otvorena, omogućujući korisniku, gdje god se nalazio, da komunicira pomoću analitičkog alata - klijenta - s poslužiteljem.

3. Dostupnost. Korisnik OLAP analitičar mora biti sposoban izvesti analizu na temelju zajedničke konceptualne sheme koja sadrži podatke za cijelo poduzeće u relacijskoj bazi podataka, kao i podatke iz naslijeđenih naslijeđenih baza podataka, na uobičajenim metodama pristupa i na zajedničkom analitičkom modelu. OLAP sustav bi trebao pristupiti samo podacima koji su stvarno potrebni, a ne primjenjivati ​​opći princip "kuhinjskog lijevka" koji podrazumijeva nepotreban unos.

4. Dosljedna izvedba u razvoju izvješća. S povećanjem broja dimenzija ili veličine baze podataka, korisnik analitičar ne bi trebao doživjeti značajno smanjenje performansi.

5. Arhitektura klijent-poslužitelj. Većina podataka koje danas treba podvrgnuti online analitičkoj obradi nalazi se na mainframe-ima s pristupom korisničkim radnim stanicama putem LAN-a. To znači da OLAP proizvodi moraju moći raditi u okruženju klijent-poslužitelj.

6. Opća višedimenzionalnost. Svaku dimenziju treba primijeniti bez obzira na njezinu strukturu i operativne mogućnosti. Temeljne strukture podataka, formule i formati izvješća ne bi trebali biti pristrani prema bilo kojoj dimenziji.

7. Dinamičko upravljanje rijetkim matricama. Fizički dizajn OLAP alata mora biti potpuno prilagodljiv specifičnom analitičkom modelu kako bi se optimalno upravljalo rijetkim matricama. Rijetkost (mjereno kao postotak praznih ćelija prema svim mogućim) jedna je od karakteristika širenja podataka.

8. Podrška za više korisnika. OLAP alat mora pružiti mogućnost dijeljenja upita i povećanja broja korisnika analitičara uz održavanje integriteta i sigurnosti.

9. Neograničene unakrsne operacije. Različite operacije, zbog svoje hijerarhijske prirode, mogu predstavljati zavisne odnose u OLAP modelu, odnosno međufunkcionalne su. Njihovo izvođenje ne bi trebalo zahtijevati od korisnika analitičara da redefinira ove izračune i operacije.

10. Intuitivna manipulacija podacima. Pogled korisnika analitičara na dimenzije definirane u analitičkom modelu mora sadržavati sve potrebne informacije za izvođenje radnji na OLAP modelu, t.j. ne bi trebali zahtijevati korištenje sustava izbornika ili drugih operacija višestrukog korisničkog sučelja.

11. Fleksibilne opcije izvješćivanja. Alati za izvješćivanje trebaju biti sintetizirani podaci ili informacije koje proizlaze iz modela podataka u bilo kojoj mogućoj orijentaciji. To znači da retki, stupci ili stranice izvješća moraju istovremeno prikazati više dimenzija OLAP modela, s mogućnošću prikaza bilo kojeg podskupa elemenata (vrijednosti) sadržanih u dimenziji i bilo kojim redoslijedom.

12. Neograničena dimenzija i broj razina agregacije. Studija o mogućem broju potrebnih mjerenja potrebnih u analitičkom modelu pokazala je da korisnik analitičar može koristiti do 19 mjerenja istovremeno. To dovodi do preporuke o broju dimenzija koje podržava OLAP sustav. Štoviše, svaka od zajedničkih dimenzija ne bi trebala biti ograničena brojem razina agregacije koje definira korisnik-analitičar.

Kao specijalizirani OLAP sustavi koji se trenutno nude na tržištu, možete navesti CalliGraph, Business Intelligence.

Za rješavanje jednostavnih zadataka analize podataka moguće je koristiti proračunsko rješenje – Microsoft Excel i Access uredske aplikacije, koje sadrže elementarne OLAP tehnološke alate koji vam omogućuju izradu zaokretnih tablica i izradu različitih izvješća na temelju njih.

Koncept višedimenzionalne analize podataka usko je povezan s operativnom analizom koja se provodi pomoću OLAP sustava.

OLAP (On-Line Analytical Processing) je tehnologija za online analitičku obradu podataka koja koristi metode i alate za prikupljanje, pohranu i analizu višedimenzionalnih podataka kako bi podržala procese donošenja odluka.

Glavna svrha OLAP sustava je podrška analitičkim aktivnostima, proizvoljnim (često se koristi izraz ad-hoc) zahtjevima korisnika analitičara. Svrha OLAP analize je testirati nove hipoteze.

U podrijetlu OLAP tehnologije utemeljitelj je relacijskog pristupa E. Codd. Godine 1993. objavio je članak pod naslovom "OLAP za korisnike analitičara: što bi trebalo biti". Ovaj rad opisuje osnovne koncepte online analitičke obrade i identificira sljedećih 12 zahtjeva koje moraju ispuniti proizvodi koji omogućuju online analitičku obradu. Tokmakov G.P. Baza podataka. Koncept baze podataka, relacijski model podataka, SQL jezici. S. 51

Dolje je navedeno 12 pravila koja je Codd iznio a koja definiraju OLAP.

1. Multidimenzionalnost - OLAP-sustav na konceptualnoj razini treba prikazati podatke u obliku višedimenzionalnog modela, koji pojednostavljuje procese analize i percepcije informacija.

2. Transparentnost - OLAP sustav bi trebao sakriti od korisnika stvarnu implementaciju višedimenzionalnog modela, način organizacije, izvore, alate za obradu i pohranu.

3. Dostupnost -- OLAP sustav mora osigurati jedan, dosljedan i dosljedan model podataka korisniku, dopuštajući pristup podacima bez obzira na to kako i gdje su pohranjeni.

4. Uspješnost razvoja dosljednog izvješća -- Izvedba OLAP sustava ne bi se trebala značajno smanjiti kako se povećava broj dimenzija koje se analiziraju.

5. Arhitektura klijent-poslužitelj -- OLAP sustav mora biti sposoban raditi u okruženju klijent-poslužitelj, kao većina podataka koje danas treba podvrgnuti online analitičkoj obradi pohranjuje se distribuirano. Glavna ideja ovdje je da poslužiteljska komponenta OLAP alata treba biti dovoljno inteligentna da omogući izgradnju zajedničke konceptualne sheme temeljene na generalizaciji i konsolidaciji različitih logičkih i fizičkih shema baze podataka poduzeća kako bi se osigurao transparentan učinak.

6. Jednakost dimenzija -- OLAP sustav mora podržavati višedimenzionalni model u kojem su sve dimenzije jednake. Po potrebi se pojedinim mjerenjima mogu dati dodatne karakteristike, ali takva mogućnost treba pružiti svakom mjerenju.

7. Dinamičko upravljanje rijetkim matricama -- OLAP sustav mora osigurati optimalno rukovanje rijetkim matricama. Brzina pristupa mora se održavati bez obzira na mjesto podatkovnih ćelija i biti stalna vrijednost za modele s različitim brojem dimenzija i različitim stupnjem rijetkosti podataka.

8. Podrška za višekorisnički način rada - OLAP-sustav bi trebao omogućiti rad s više korisnika zajedno s jednim analitičkim modelom ili kreirati različite modele za njih iz jednog podatka. Pritom je moguće i čitanje i upisivanje podataka, pa sustav mora osigurati njihov integritet i sigurnost.

9. Neograničene unakrsne operacije – OLAP sustav mora osigurati da se funkcionalni odnosi opisani određenim formalnim jezikom između hiperkockastih stanica sačuvaju prilikom izvođenja bilo koje operacije rezanja, rotiranja, konsolidacije ili drill down. Sustav bi trebao samostalno (automatski) izvršiti transformaciju uspostavljenih odnosa, bez potrebe da ih korisnik redefinira.

10. Intuitivna manipulacija podacima -- OLAP sustav mora osigurati način za izvođenje operacija rezanja, rotiranja, konsolidacije i bušenja na hiperkocki bez potrebe da korisnik mora puno raditi na korisničkom sučelju. Dimenzije definirane u analitičkom modelu moraju sadržavati sve potrebne informacije za izvođenje gore navedenih operacija.

11. Fleksibilne opcije izvješćivanja -- OLAP sustav mora podržavati različite načine vizualizacije podataka, tj. izvješća treba podnositi u svim mogućim smjerovima. Alati za izvješćivanje trebaju predstavljati sintetizirane podatke ili informacije koje proizlaze iz modela podataka u bilo kojoj mogućoj orijentaciji. To znači da bi retki, stupci ili stranice trebali istovremeno prikazivati ​​od 0 do N dimenzija, gdje je N broj dimenzija cijelog analitičkog modela. Osim toga, svaka dimenzija sadržaja prikazana u jednom postu, stupcu ili stranici mora dopustiti da se bilo koji podskup elemenata (vrijednosti) sadržanih u dimenziji prikaže bilo kojim redoslijedom.

12. Neograničena dimenzionalnost i broj razina agregacije - Studija o mogućem broju potrebnih dimenzija potrebnih u analitičkom modelu pokazala je da se do 19 dimenzija može koristiti istovremeno. Otuda snažna preporuka da analitički alat može pružiti najmanje 15, a po mogućnosti 20 mjerenja istovremeno. Štoviše, svaka od zajedničkih dimenzija ne bi trebala biti ograničena brojem razina agregiranja i staza konsolidacije koje definira korisnik-analitičar.

Dodatna pravila Codd.

Skup ovih zahtjeva, koji je služio kao de facto definicija OLAP-a, često izaziva razne kritike, na primjer, pravila 1, 2, 3, 6 su zahtjevi, a pravila 10, 11 su neformalizirane želje. Tokmakov G.P. Baza podataka. Koncept baze podataka, relacijski model podataka, SQL jezici. P. 68 Dakle, navedenih 12 Coddovih zahtjeva ne dopušta vam da točno definirate OLAP. 1995. Codd je na popis dodao sljedećih šest pravila:

13. Skupna ekstrakcija naspram interpretacije -- OLAP sustav mora biti jednako učinkovit u pružanju pristupa internim i vanjskim podacima.

14. Podrška za sve modele OLAP analize -- OLAP sustav mora podržavati sva četiri modela analize podataka koje je definirao Codd: kategorički, interpretativni, spekulativni i stereotipni.

15. Rukovanje denormaliziranim podacima -- OLAP sustav mora biti integriran s denormaliziranim izvorima podataka. Izmjene podataka napravljene u OLAP okruženju ne bi trebale rezultirati promjenama podataka pohranjenih u izvornim vanjskim sustavima.

16. Spremanje OLAP rezultata: njihovo čuvanje odvojeno od izvornih podataka -- OLAP sustav koji radi u načinu čitanja i pisanja, nakon modificiranja izvornih podataka, rezultate mora pohraniti zasebno. Drugim riječima, osigurana je sigurnost izvornih podataka.

17. Isključivanje vrijednosti koje nedostaju – Prilikom predstavljanja podataka korisniku, OLAP sustav mora odbaciti sve vrijednosti koje nedostaju. Drugim riječima, vrijednosti koje nedostaju moraju se razlikovati od nul vrijednosti.

18 Rukovanje nedostajućim vrijednostima – OLAP sustav mora zanemariti sve nedostajuće vrijednosti, bez obzira na njihov izvor. Ova značajka povezana je sa 17. pravilom.

Osim toga, Codd je razbio svih 18 pravila u sljedeće četiri grupe, nazvavši ih značajkama. Ove grupe su nazvane B, S, R i D.

Glavne značajke (B) uključuju sljedeća pravila:

Višedimenzionalni konceptualni prikaz podataka (pravilo 1);

Intuitivna manipulacija podacima (pravilo 10);

Dostupnost (pravilo 3);

Skupna ekstrakcija naspram interpretacije (pravilo 13);

Podrška za sve modele OLAP analize (pravilo 14);

Arhitektura "klijent-poslužitelj" (pravilo 5);

Transparentnost (pravilo 2);

Podrška za više igrača (pravilo 8)

Posebne značajke (S):

Obrada nenormaliziranih podataka (pravilo 15);

Spremanje OLAP rezultata: njihovo pohranjivanje odvojeno od izvornih podataka (pravilo 16);

Isključivanje vrijednosti koje nedostaju (pravilo 17);

Rukovanje vrijednostima koje nedostaju (pravilo 18). Značajke izvješćivanja (R):

Fleksibilnost generiranja izvješća (pravilo 11);

Standard izvedbe izvješća (pravilo 4);

Automatska konfiguracija fizičkog sloja (izmijenjeno izvorno pravilo 7).

Kontrola mjerenja (D):

Univerzalnost mjerenja (pravilo 6);

Neograničen broj dimenzija i razina agregacije (pravilo 12);

Neograničene operacije između dimenzija (pravilo 9).

dirigiranje

U posljednje vrijeme mnogo se piše o OLAP-u. Možemo reći da je oko ovih tehnologija neki bum. Istina, za nas ovaj bum nešto kasni, ali to je naravno zbog opće situacije u zemlji.

Informacijski sustavi na razini poduzeća u pravilu sadrže aplikacije namijenjene složenoj višedimenzionalnoj analizi podataka, njihove dinamike, trendova itd. Takva analiza je u konačnici namijenjena pomoći u donošenju odluka. Često se ti sustavi nazivaju sustavima za podršku odlučivanju.

Sustavi za podršku odlučivanju obično imaju sredstva za pružanje skupnih podataka za različite uzorke iz početnog skupa u obliku prikladnom za percepciju i analizu. Takve agregatne funkcije u pravilu tvore višedimenzionalni (i stoga nerelacijski) skup podataka (često se naziva hiperkocka ili metakocka), čije osi sadrže parametre, a ćelije sadrže agregatne podatke koji ovise o njima - a takvi podaci također mogu biti pohranjene u relacijske tablice, ali u ovom slučaju govorimo o logičkoj organizaciji podataka, a ne o fizičkoj implementaciji njihove pohrane). Duž svake osi podaci se mogu organizirati u hijerarhiju koja predstavlja različite razine detalja. Zahvaljujući ovom modelu podataka, korisnici mogu formulirati složene upite, generirati izvješća i primati podskupove podataka.

Tehnologija složene višedimenzionalne analize podataka naziva se OLAP (On-Line Analytical Processing).

OLAP je ključna komponenta skladištenja podataka.

Koncept OLAP-a opisao je 1993. Edgar Codd, poznati istraživač baze podataka i autor relacijskog modela podataka.E.F. Codd, S.B. Codd i C.T.Salley, Pružanje OLAP-a (on-line analitičke obrade) korisničkim analitičarima: IT mandat. tehničko izvješće, 1993.).

Godine 1995., na temelju zahtjeva koje je iznio Codd, formuliran je tzv. FASMI test (Fast Analysis of Shared Multidimensional Information – brza analiza zajedničkih multidimenzionalnih informacija), koji uključuje sljedeće zahtjeve za aplikacije za višedimenzionalnu analizu:

· pružanje korisniku rezultata analize u prihvatljivom vremenu (obično ne duže od 5 s), čak i po cijenu manje detaljne analize;

· mogućnost provođenja bilo kakve logičke i statističke analize specifične za ovu aplikaciju i spremanja je u obliku dostupnom krajnjem korisniku;

· višekorisnički pristup podacima s podrškom za odgovarajuće mehanizme zaključavanja i autorizirane alate za pristup;

· višedimenzionalni konceptualni prikaz podataka, uključujući punu podršku za hijerarhije i višestruke hijerarhije (ovo je ključni zahtjev OLAP-a);

· mogućnost pristupa svim potrebnim informacijama, bez obzira na njihov volumen i mjesto pohrane.

Treba napomenuti da se OLAP funkcionalnost može implementirati na različite načine, od najjednostavnijih alata za analizu podataka u uredskim aplikacijama do distribuiranih analitičkih sustava temeljenih na poslužiteljskim proizvodima. Korisnici mogu jednostavno pregledavati podatke na višedimenzionalnoj strukturi primijenjene na njihove vlastite zadatke.

2. Što je OLAP

OLAP - skraćenica za engleski On-Line Analytical Processing - nije naziv određenog proizvoda, već cijele tehnologije. Na ruskom je najprikladnije nazvati OLAP operativnu analitičku obradu. Iako se u nekim publikacijama analitička obrada naziva i online i interaktivna, pridjev “online” najtočnije odražava značenje OLAP tehnologije.

Razvoj upravljačkih upravljačkih odluka spada u kategoriju područja koja je najteže automatizirati. Međutim, danas postoji mogućnost pomoći menadžeru u izradi odluka i, što je najvažnije, značajno ubrzati proces izrade odluka, njihovog odabira i donošenja. Za to možete koristiti OLAP.

Razmotrite kako se obično odvija proces razvoja rješenja.

Povijesno gledano, rješenja za automatizaciju operativnih aktivnosti su najrazvijenija. Riječ je o sustavima za obradu transakcijskih podataka (OLTP), jednostavno nazvanim operativnim sustavima. Ovi sustavi osiguravaju evidentiranje određenih činjenica, njihovo kratkoročno pohranjivanje i čuvanje u arhivima. Osnovu takvih sustava čine sustavi upravljanja relacijskim bazama podataka (RDBMS). Tradicionalni pristup je pokušaj korištenja već izgrađenih operativnih sustava za podršku odlučivanju. Obično pokušavaju izgraditi razvijeni sustav upita operativnom sustavu i koristiti izvješća primljena nakon interpretacije izravno za podršku odlukama. Izvješća se mogu graditi na prilagođenoj osnovi, tj. upravitelj zahtijeva izvješće, i to redovito, kada se izvješća grade po dolasku do određenih događaja ili vremena. Na primjer, tradicionalni proces podrške odlučivanju može izgledati ovako: menadžer odlazi do informacijskog stručnjaka i s njim dijeli svoje pitanje. Zatim informacijski stručnjak izgrađuje zahtjev operativnom sustavu, prima elektroničko izvješće, tumači ga, a zatim ga upućuje na pozornost upravljačkog osoblja. Naravno, takva shema u određenoj mjeri pruža potporu odlučivanju, ali ima izrazito nisku učinkovitost i ogroman broj nedostataka. Mala količina podataka koristi se za podršku kritičnim odlukama. Postoje i drugi problemi. Takav je proces vrlo spor, budući da je proces pisanja zahtjeva i tumačenja elektroničkog izvješća dugotrajan. Potrebno je mnogo dana, u vrijeme kada će vođa možda morati donijeti odluku upravo sada, odmah. Ako uzmemo u obzir da bi upravitelja nakon zaprimanja izvješća moglo zanimati neko drugo pitanje (recimo, pojašnjenje ili zahtijevanje razmatranja podataka u drugom kontekstu), onda se ovaj spori ciklus mora ponoviti, a budući da se proces analize podaci iz operativnih sustava bit će iterativni, tada se troši još više vremena. Drugi problem je problem različitih područja djelovanja stručnjaka za informacijske tehnologije i menadžera, koji mogu razmišljati u različitim kategorijama i kao rezultat toga se međusobno ne razumiju. Tada će biti potrebne dodatne iteracije dorade, a to je opet vrijeme, koje uvijek nije dovoljno. Još jedno važno pitanje je složenost izvješća za razumijevanje. Menadžer nema vremena birati brojeve od interesa iz izvješća, pogotovo jer ih je možda previše (prisjetite se ogromnih višestraničnih izvještaja koji zapravo koriste nekoliko stranica, a ostalo za svaki slučaj). Također napominjemo da posao prevođenja najčešće pada na stručnjake u informacijskim odjelima. Odnosno, kompetentnog stručnjaka ometa rutinski i neučinkovit rad na crtanju dijagrama itd., Što, naravno, ne može povoljno utjecati na njegove kvalifikacije. Osim toga, nije tajna da u lancu tumačenja postoje dobronamjernici koji su zainteresirani za namjerno iskrivljavanje dolaznih informacija.

Navedeni nedostaci tjeraju nas na razmišljanje kako o ukupnoj učinkovitosti operativnog sustava tako i o troškovima vezanim za njegovo postojanje, budući da se ispostavlja da troškovi stvaranja operativnog sustava nisu u dovoljnoj mjeri nadoknađeni učinkovitošću njegovog rada.

Zapravo, ovi problemi nisu posljedica loše kvalitete operacijskog sustava ili njegove neuspješne konstrukcije. Korijeni problema leže u temeljnoj razlici između operativnih aktivnosti koje su automatizirane operativnim sustavom i aktivnosti razvoja i donošenja odluka. Ta razlika leži u činjenici da su podaci operativnih sustava jednostavno zapisi nekih događaja koji su se dogodili, činjenice, ali ne i informacija u općem smislu riječi. Informacija je nešto što smanjuje nesigurnost u bilo kojem području. I bilo bi jako lijepo kada bi informacija smanjila neizvjesnost u pripremi odluka. Zloglasni E.F. Codd, čovjek koji je bio pionir tehnologije upravljanja relacijskim bazama podataka 1970-ih: “Iako su sustavi za upravljanje relacijskim bazama podataka dostupni korisnicima, oni se nikada nisu smatrali alatom koji pruža moćne funkcije za sintezu, analizu i konsolidaciju (funkcije koje se nazivaju multidimenzionalna analiza podataka)” . Govorimo o sintezi informacija, o tome kako podatke operativnih sustava pretvoriti u informaciju, pa čak i u kvalitativne procjene. OLAP vam omogućuje ovu transformaciju.

OLAP se temelji na ideji višedimenzionalnog modela podataka. Ljudsko razmišljanje je po definiciji višedimenzionalno. Kada osoba postavlja pitanja, postavlja ograničenja, formulirajući pitanja u više dimenzija, pa je proces analize u višedimenzionalnom modelu vrlo blizak stvarnosti ljudskog mišljenja. Prema dimenzijama u višedimenzionalnom modelu odgađaju se čimbenici koji utječu na aktivnosti poduzeća (npr. vrijeme, proizvodi, odjeli poduzeća, geografija itd.). Tako se dobiva hiperkocka (naravno, naziv nije baš prikladan, budući da se pod kockom obično podrazumijeva lik s jednakim rubovima, što u ovom slučaju daleko od toga nije slučaj), koja se zatim puni indikatorima aktivnosti poduzeća (cijene, prodaja, plan, dobit, gubici, itd.) itd.). Ovo popunjavanje može se provesti kako sa stvarnim podacima operativnih sustava, tako i predvidjeti na temelju povijesnih podataka. Dimenzije hiperkocke mogu biti složene, hijerarhijske i između njih se mogu uspostaviti odnosi. Tijekom analize korisnik može promijeniti točku gledišta na podatke (tzv. operacija promjene logičkog pogleda), pri čemu pregledava podatke u različitim dijelovima i rješava specifične probleme. Na kockama se mogu izvesti razne operacije, uključujući predviđanje i uvjetno zakazivanje (što ako analiza). Štoviše, operacije se izvode odjednom na kockama, t.j. umnožak će, na primjer, rezultirati umnoškom hiperkocke, čija je svaka ćelija umnožak stanica odgovarajućih hiperkocki množenja. Naravno, moguće je izvoditi operacije na hiperkockama koje imaju različit broj dimenzija.

3. Povijest nastanka OLAP tehnologije

Ideja obrade podataka na višedimenzionalnim nizovima nije nova. Zapravo, to seže do 1962. godine, kada je Ken Iverson objavio svoju knjigu Programski jezik (APL). Prva praktična implementacija APL-a dogodila se kasnih šezdesetih od strane IBM-a. APL je vrlo elegantan, matematički definiran jezik s višedimenzionalnim varijablama i upravljanim operacijama. Bio je namijenjen kao izvorni moćan alat za rad s višedimenzionalnim transformacijama u usporedbi s drugim praktičnim programskim jezicima.

No, ideja dugo nije dobila masovnu primjenu, jer još nije došlo vrijeme za grafička sučelja, kvalitetne ispisne uređaje, a prikaz grčkih znakova zahtijevao je posebne ekrane, tipkovnice i uređaje za ispis. Kasnije su se engleske riječi ponekad koristile za zamjenu grčkih operatera, ali borci za čistoću APL-a osujetili su pokušaje popularizacije svog omiljenog jezika. APL je također trošio resurse strojeva. U to je vrijeme njegova upotreba bila skupa. Programi su bili vrlo spori za izvođenje i, štoviše, bili su vrlo skupi za izvođenje. Bilo je potrebno puno memorije, u to vrijeme samo šokantne količine (oko 6 MB).

Međutim, ljutnja zbog ovih početnih pogrešaka nije ubila ideju. Korišten je u mnogim poslovnim aplikacijama 70-ih i 80-ih godina. Mnoge od ovih aplikacija imale su značajke modernih sustava analitičke obrade. Tako je IBM razvio operativni sustav za APL nazvan VSPC, a neki su ga ljudi smatrali idealnim okruženjem za osobnu upotrebu sve dok proračunske tablice nisu postale sveprisutne.

Ali APL je bio pretežak za korištenje, pogotovo jer je svaki put bilo nedosljednosti između samog jezika i hardvera na kojem se pokušao implementirati.

U 1980-ima, APL je postao dostupan na osobnim strojevima, ali nije našao tržišnu primjenu. Alternativa je bilo programiranje višedimenzionalnih aplikacija korištenjem nizova na drugim jezicima. To je bio vrlo težak zadatak čak i za profesionalne programere, što ih je natjeralo da čekaju sljedeću generaciju višedimenzionalnih softverskih proizvoda.

Godine 1972. nekoliko višedimenzionalnih softverskih aplikacija koje su se ranije koristile u obrazovne svrhe našlo je komercijalnu upotrebu: Express. Ostaje u potpuno prepisanom obliku čak i sada, međutim, izvorni koncepti 70-ih prestali su biti relevantni. Danas, u 90-ima, Express je jedna od najpopularnijih OLAP tehnologija, a Oracle(r) će je nastaviti poticati i dodavati nove značajke.

Više multidimenzionalnih proizvoda pojavilo se 80-ih godina. Početkom desetljeća proizvod pod nazivom Stratagem, kasnije nazvan Acumate (danas u vlasništvu Kenan Technologies), koji se još promovirao do ranih 90-ih, danas se, za razliku od Expressa, praktički ne koristi.

Comshare System W bio je višedimenzionalni proizvod drugačijeg stila. Predstavljen 1981. godine, bio je prvi koji je bio više fokusiran na krajnjeg korisnika i razvoj financijskih aplikacija. Uveo je mnoge koncepte koji nisu bili dobro prilagođeni, kao što su potpuno neproceduralna pravila, pregled na cijelom zaslonu i uređivanje višedimenzionalnih podataka, automatsko ponovno izračunavanje i skupna integracija s relacijskim podacima. Međutim, Comshare System W bio je prilično težak za hardver tog vremena u usporedbi s drugim proizvodima i manje se koristio u budućnosti, manje se prodavao i nije bilo poboljšanja na proizvodu. Iako je i danas dostupan na UNIX-u, nije klijent-poslužitelj, što ne doprinosi povećanju njegove ponude na tržištu analitičkih proizvoda. U kasnim 80-ima Comshare je izdao proizvod za DOS i kasnije za Windows. Ovi proizvodi su se zvali Commander Prism i koristili su iste koncepte kao System W.

Još jedan kreativni proizvod kasnih 80-ih zvao se Metaphor. Namijenjena je profesionalnim trgovcima. Također je predložio mnoge nove koncepte koji se tek sada počinju široko koristiti: računalstvo klijent-poslužitelj, korištenje višedimenzionalnog modela na relacijskim podacima, objektno orijentirani razvoj aplikacija. Međutim, standardni PC hardver tog dana nije bio sposoban za pokretanje Metaphore, pa su dobavljači bili prisiljeni razviti vlastite standarde za računala i mreže. Postupno je Metaphor počeo uspješno raditi na serijskim osobnim strojevima, ali proizvod je napravljen isključivo za OS / 2 i imao je vlastito grafičko korisničko sučelje.

Tada je Metaphor ušao u marketinški savez s IBM-om, koji je kasnije apsorbiran. Sredinom 1994. IBM je odlučio integrirati Metaphor tehnologiju (preimenovanu u DIS) sa svojim budućim tehnologijama i na taj način prestati financirati odvojeni smjer, no kupci su izrazili svoje nezadovoljstvo i zatražili nastavak podrške za proizvod. Podrška je nastavljena za preostale kupce, a IBM je ponovno izdao proizvod pod novim imenom DIS, što ga, međutim, nije učinilo popularnim. Ali Metaphorovi kreativni, inovativni koncepti nisu zaboravljeni i vidljivi su u mnogim proizvodima danas.

Sredinom 80-ih nastao je pojam EIS (Executive Information System). Prvi proizvod koji je jasno pokazao ovaj smjer bio je Pilot's Command Center. Bio je to proizvod koji je omogućio kolaborativno računanje, ono što danas nazivamo računalstvom klijent-poslužitelj. Budući da je snaga osobnih računala u 80-ima bila ograničena, proizvod je bio vrlo "usmjeren na poslužitelj", no ovaj princip je i danas vrlo popularan. Pilot nije dugo prodavao Command Center, ali je ponudio mnoge koncepte koji su prepoznatljivi u današnjim OLAP proizvodima, uključujući podršku za automatsko mjerenje vremena, višedimenzionalno računanje klijent-poslužitelj i pojednostavljenu kontrolu procesa analize (miš, osjetljivi zasloni itd.). ). Neki od ovih koncepata ponovno su primijenjeni kasnije u Pilot Analysis Server.

Kasnih 1980-ih, proračunske tablice su dominirale tržištem alata za analizu za krajnje korisnike. Prvu višedimenzionalnu tablicu uveo je proizvod Compete. Tržio se kao vrlo skup proizvod za profesionalce, ali dobavljači nisu uspjeli osigurati da proizvod osvoji tržište, a Computer Associates je stekao prava na njega zajedno s drugim proizvodima, uključujući Supercalc i 20/20. Glavni učinak akvizicije CA Compete bio je naglo smanjenje njegove cijene i ukidanje zaštite od kopiranja, što je naravno pridonijelo njegovoj distribuciji. Međutim, nije bio uspješan. Competi je u središtu Supercalc 5, ali se višedimenzionalni aspekt toga ne promovira. Stari Compete se još uvijek ponekad koristi zbog činjenice da je svojedobno u njega uloženo mnogo novca.

Lotus je bio sljedeći koji je pokušao ući na tržište višedimenzionalnih proračunskih tablica s proizvodom Improv, koji radi na NeXT stroju. To je osiguralo, u najmanju ruku, da prodaja 1-2-3 neće pasti, ali kada je konačno objavljen za Windows, Excel je već imao veliki tržišni udio, što je spriječilo Lotus da napravi bilo kakve promjene u tržišnoj distribuciji. Lotus je, kao i CA s Competeom, pomaknuo Improv na dno tržišta, ali to nije postao uvjet za uspješnu promociju na tržištu, a novi razvoji na ovom području nisu nastavljeni. Pokazalo se da korisnici osobnih računala preferiraju proračunske tablice 1-2-3 i da nisu zainteresirani za nove višedimenzionalne značajke osim ako nisu u potpunosti kompatibilne sa svojim starim proračunskim tablicama. Isto tako, koncepti malih, stolnih proračunskih tablica koji se nude kao osobne aplikacije nisu se baš pokazali prikladnima i nisu se uspjeli uhvatiti u stvarnom poslovnom svijetu. Microsoft(r) je krenuo tim putem dodavanjem zaokretnih tablica u Excel. Iako je malo korisnika Excela imalo koristi od korištenja ove značajke, ovo je vjerojatno jedina činjenica da se mogućnosti multivarijantne analize naširoko koriste u svijetu, jednostavno zato što u svijetu ima toliko korisnika Excela.

4. OLAP, ROLAP, MOLAP…

Dobro je poznato da kada je Codd 1985. objavio svoja pravila za izgradnju relacijskog DBMS-a, ona su izazvala snažnu reakciju i nakon toga imala snažan utjecaj na industriju DBMS-a općenito. Međutim, malo ljudi zna da je 1993. Codd objavio djelo pod nazivom "OLAP za korisnike analitičara: što bi trebalo biti". U njemu je iznio osnovne koncepte online analitičke obrade i identificirao 12 pravila koja proizvodi moraju zadovoljiti kako bi se omogućila online analitička obrada.

Evo pravila (izvorni tekst zadržava se gdje je moguće):

1. Konceptualni višedimenzionalni prikaz. Korisnik analitičar vidi svijet poduzeća kao višedimenzionalnu prirodu. Sukladno tome, OLAP model u svojoj osnovi mora biti višedimenzionalan. Višedimenzionalni konceptualni dijagram ili prilagođeni prikaz olakšava modeliranje i analizu, kao i izračune.

2. Transparentnost. Bez obzira na to je li OLAP proizvod dio alata korisnika ili ne, ta činjenica mora biti transparentna za korisnika. Ako OLAP osigurava računalstvo klijent-poslužitelj, tada bi ta činjenica također, ako je moguće, trebala biti nevidljiva korisniku. OLAP bi trebao biti isporučen u kontekstu istinski otvorene arhitekture, dopuštajući korisniku, gdje god se nalazio, da komunicira s poslužiteljem pomoću analitičkog alata. Osim toga, transparentnost se također mora postići kada je analitički alat u interakciji s homogenim i heterogenim okruženjima baze podataka.

3. Dostupnost. Korisnik OLAP analitičar mora biti sposoban izvesti analizu na temelju zajedničke konceptualne sheme koja sadrži podatke za cijelo poduzeće u relacijskoj bazi podataka, kao i podatke iz naslijeđenih naslijeđenih baza podataka, na uobičajenim metodama pristupa i na zajedničkom analitičkom modelu. To znači da OLAP mora osigurati vlastitu logiku za pristup u heterogenom okruženju baze podataka i izvesti odgovarajuće transformacije kako bi podatke predstavio korisniku. Štoviše, potrebno je unaprijed voditi računa o tome gdje i kako, te koje vrste fizičke organizacije podataka će se zapravo koristiti. OLAP sustav bi trebao pristupiti samo podacima koji su stvarno potrebni, a ne primjenjivati ​​opći princip "kuhinjskog lijevka" koji podrazumijeva nepotreban unos.

4. Dosljedna produktivnost u razvoju izvješća. Ako se broj dimenzija ili veličina baze podataka poveća, korisnik analitičar ne bi trebao doživjeti značajnu degradaciju u izvedbi. Dosljedna izvedba ključna je za održavanje jednostavnosti korištenja krajnjeg korisnika i ograničavanje složenosti OLAP-a. Ako korisnik analitičar iskusi značajne razlike u izvedbi prema broju dimenzija, tada će analitičar nastojati nadoknaditi te razlike razvojnom strategijom, što će uzrokovati da podaci budu predstavljeni na način koji nije na način na koji podaci zapravo trebaju biti predstavljeni. Gubljenje vremena zaobilaženjem sustava kako bi se kompenzirala njegova neadekvatnost nije ono za što su dizajnirani analitički proizvodi.

5. Arhitektura klijent-poslužitelj. Većina podataka potrebnih za online analitiku danas se nalazi na glavnim računalima kojima se pristupa putem računala. To znači, dakle, da OLAP proizvodi moraju moći raditi u okruženju klijent-poslužitelj. S ove točke gledišta, bitno je da poslužiteljska komponenta analitičkog alata bude bitno "pametna" kako bi se različiti klijenti mogli pridružiti poslužitelju uz minimalne probleme i integracijsko programiranje. "Inteligentni" poslužitelj mora biti sposoban mapirati i konsolidirati između neprikladnih logičkih i fizičkih shema baze podataka. To će osigurati transparentnost i izgradnju zajedničke konceptualne, logičke i fizičke sheme.

6. Opća višedimenzionalnost. Svaku dimenziju treba primijeniti bez obzira na njezinu strukturu i operativne mogućnosti. Odabranim dimenzijama mogu se dati dodatne operativne sposobnosti, a budući da su dimenzije simetrične, jedna funkcija može se dati bilo kojoj dimenziji. Temeljne strukture podataka, formule i formati izvješća ne bi trebali biti pristrani prema bilo kojoj dimenziji.

7. Dinamička kontrola rijetkih matrica. Fizički dizajn OLAP alata mora biti potpuno prilagodljiv specifičnom analitičkom modelu kako bi se optimalno upravljalo rijetkim matricama. Za bilo koju danu rijetku matricu postoji jedna i samo jedna optimalna fizička shema. Ova shema osigurava maksimalnu učinkovitost memorije i operativnost matrice, osim ako, naravno, cijeli skup podataka stane u memoriju. Temeljni fizički podaci OLAP alata moraju biti konfigurirani za bilo koji podskup dimenzija, bilo kojim redoslijedom, za praktične operacije s velikim analitičkim modelima. Metode fizičkog pristupa također bi se trebale dinamički mijenjati i sadržavati različite vrste mehanizama, kao što su: izravni izračuni, B-stabla i derivati, raspršivanje, mogućnost kombiniranja ovih mehanizama ako je potrebno. Rijetkost (mjereno kao postotak praznih ćelija prema svim mogućim) jedna je od karakteristika širenja podataka. Nemogućnost kontrole rijetkosti može učiniti učinkovitost operacija nedostižnom. Ako OLAP alat ne može kontrolirati i regulirati distribuciju vrijednosti analiziranih podataka, model koji tvrdi da je praktičan, temeljen na mnogim stazama i dimenzijama konsolidacije, zapravo može biti nepotreban i beznadan.

8. Podrška za više korisnika. Često će više korisnika analitičara morati raditi zajedno na istom analitičkom modelu ili stvoriti različite modele iz istih podataka. Stoga OLAP alat mora osigurati dijeljenje (upit i dodavanje), integritet i sigurnosne mogućnosti.

9. Neograničene međusobne operacije. Različite razine zbrajanja i staze konsolidacije, zbog svoje hijerarhijske prirode, predstavljaju ovisne odnose u OLAP modelu ili aplikaciji. Stoga bi sam alat trebao podrazumijevati odgovarajuće izračune i ne zahtijevati od korisnika analitičara da redefinira te izračune i operacije. Izračuni koji ne slijede iz ovih naslijeđenih odnosa moraju se definirati različitim formulama prema nekom primjenjivom jeziku. Takav jezik može dopustiti izračune i manipulaciju podacima bilo koje dimenzije i ne ograničava odnos između podatkovnih ćelija, ne obraća pažnju na broj zajedničkih atributa podataka određenih ćelija.

10. Intuitivna manipulacija podacima. Preusmjeravanje staza konsolidacije, detaljiranje, povećanje i druge manipulacije regulirane stazama konsolidacije treba primijeniti kroz zasebnu radnju na ćelije analitičkog modela, te ne bi trebale zahtijevati korištenje sustava izbornika ili druge višestruke radnje s korisničkim sučeljem. Pogled korisnika analitičara na dimenzije definirane u analitičkom modelu mora sadržavati sve potrebne informacije za izvođenje gore navedenih radnji.

11. Fleksibilne opcije izvješćivanja. Analiza i prezentacija podataka je jednostavna kada će redovi, stupci i ćelije podataka koji će se međusobno vizualno uspoređivati ​​biti blizu jedan drugome ili prema nekoj logičkoj funkciji koja se odvija u poduzeću. Alati za izvješćivanje trebaju predstavljati sintetizirane podatke ili informacije koje proizlaze iz modela podataka u bilo kojoj mogućoj orijentaciji. To znači da bi retki, stupci ili stranice trebali istovremeno prikazivati ​​od 0 do N dimenzija, gdje je N broj dimenzija cijelog analitičkog modela. Osim toga, svaka dimenzija sadržaja prikazana u jednom zapisu, stupcu ili stranici također mora moći prikazati bilo koji podskup elemenata (vrijednosti) sadržanih u dimenziji, bilo kojim redoslijedom.

12. Neograničena dimenzija i broj razina agregacije. Studija o mogućem broju potrebnih mjerenja potrebnih u analitičkom modelu pokazala je da se istovremeno može koristiti do 19 mjerenja. Stoga se snažno preporuča da analitički alat može pružiti najmanje 15 dimenzija istovremeno, a po mogućnosti 20. Štoviše, svaka od zajedničkih dimenzija ne bi trebala biti ograničena brojem razina agregacije i staza konsolidacije koje definira korisnik analitičar.

Zapravo, programeri OLAP proizvoda danas slijede ova pravila ili ih barem nastoje slijediti. Ova pravila se mogu smatrati teorijskom osnovom operativne analitičke obrade, s njima je teško raspravljati. Naknadno su iz 12 pravila proizašle mnoge posljedice, koje, međutim, nećemo iznositi kako ne bismo nepotrebno zakomplicirali priču.

Pogledajmo pobliže kako se OLAP proizvodi razlikuju u svojoj fizičkoj implementaciji.

Kao što je gore navedeno, OLAP se temelji na ideji obrade podataka na višedimenzionalnim strukturama. Kada kažemo OLAP, mislimo da je logično da je struktura podataka analitičkog proizvoda višedimenzionalna. Druga je stvar kako se to provodi. Postoje dvije glavne vrste analitičke obrade, koje uključuju određene proizvode.

MOLAP . Zapravo višedimenzionalni (multidimenzionalni) OLAP. Proizvod se temelji na nerelacijskoj strukturi podataka koja omogućuje višedimenzionalnu pohranu, obradu i prezentaciju podataka. Sukladno tome, baze podataka se nazivaju i višedimenzionalnim. Proizvodi u ovoj klasi obično imaju višedimenzionalni poslužitelj baze podataka. Podaci u procesu analize odabiru se isključivo iz višedimenzionalne strukture. Takva je struktura vrlo produktivna.

ROLAP . Relacijski OLAP. Kao što naziv implicira, višedimenzionalnu strukturu u takvim alatima implementiraju relacijske tablice. A podaci u procesu analize, odnosno, odabiru se iz relacijske baze podataka pomoću analitičkog alata.

Nedostaci i prednosti svakog pristupa su općenito očiti. Višedimenzionalni OLAP pruža bolje performanse, ali strukture se ne mogu koristiti za obradu velikih količina podataka, budući da velike dimenzije zahtijevaju velike hardverske resurse, a u isto vrijeme rijetkost hiperkocke može biti vrlo visoka i stoga korištenje hardverske snage neće biti opravdano . Naprotiv, relacijski OLAP omogućuje obradu velikih nizova pohranjenih podataka, budući da je moguće osigurati ekonomičniju pohranu, ali u isto vrijeme značajno gubi u brzini višedimenzionalnog OLAP-a. Takvo razmišljanje dovelo je do odabira nove klase analitičkih alata - HOLAP-a. Ovo je hibridna (hibridna) operativna analitička obrada. Alati ove klase omogućuju vam kombiniranje oba pristupa - relacijskog i višedimenzionalnog. Pristup se može ostvariti i podacima višedimenzionalnih baza podataka i relacijskim podacima.

Postoji još jedna prilično egzotična vrsta online analitičke obrade - DOLAP. Ovo je "desktop" OLAP. Riječ je o takvoj analitičkoj obradi, gdje su hiperkocke male, dimenzije male, potrebe skromne, a za takvu analitičku obradu dovoljno je osobno računalo na desktopu.

Operativno-analitička obrada može značajno pojednostaviti i ubrzati proces pripreme i donošenja odluka od strane upravljačkog osoblja. Online analitička obrada služi u svrhu pretvaranja podataka u informaciju. Temeljno se razlikuje od tradicionalnog procesa potpore odlučivanju, koji se najčešće temelji na razmatranju strukturiranih izvješća. Analogno, razlika između strukturiranih izvješća i OLAP-a ista je kao između vožnje po gradu tramvajem i automobilom. Kada se vozite tramvajem, on se kreće po tračnicama, zbog čega je teško vidjeti udaljene zgrade, a još manje im se približiti. Naprotiv, vožnja privatnog automobila daje potpunu slobodu kretanja (naravno, treba se poštivati ​​prometna pravila). Možete doći do bilo koje zgrade i doći do mjesta gdje tramvaji ne voze.

Strukturirana izvješća su tračnice koje sputavaju slobodu donošenja odluka. OLAP je automobil za učinkovito kretanje na informacijskim autocestama.