F4CIO's Blog
<February 2017>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
272812345
6789101112
Creating Datawarehouse (in serbian)
U nastavku ??e biti dat jedan primer izrade datawarehouse-a, upita i izveštaja.
Skladište podataka je kreirano u alatu: Microsoft SQL Server 2008. Express verzije SQL server-a ne uklju??uju potrebne alate za datawarehouse! Potrebno je koristiti SQL Server Enterprise verziju. Prilikom instalacije, pored standardnih funkcionalnosti (Database Engine Services, Management Tools, i drugih) neophodno je uklju??iti funkcionalnosti specifi??ne za datawarehouse a to su (slika 4):
-Analysis Services,
-Reporting Services (opciono-za izradu izveštaja) i
-Business Intelligence Development Studio
  
Slika 4. Izbor funkcionalnosti SQL Server-a
 
Po instalaciji potrebno je uveriti se da su prisutni i pokrenuti neophodni servisi za rad sa datawarehouse-om (slika 5). Tako??e je neophodno (u nedostatku preciznijeg objašnjenja) da su isti servisi pokrenuti pod ISTIM korisni??kim nalogom kao i glavni servis SQL Server-a.
 
 
Slika 5. Servisi
 
Cilje je kreirati kocku metodom „zvezde“ koja je prikazana na slici 6.
 
 
Slika 6. Shema kocke Naru??ivanje
 
Tako??e, cilj je uraditi kocku i metodom „pahulje“ koja je prikazana na slici 7.
 
 
Slika 7. Shema kocke Naru??ivanjeSnowflake
 
Kreiranje OLAP kocke (MOLAP, ROLAP, HOLAP)

Po instalaciji SQL Server-a za izradu datawarehouse-a na raspolaganju je alat Business Intelligence Development studio (slika 8). 
  

Slika 8. Alat Business Intelligence Development Studio
 
Potrebno je pokrenuti ga i izabrati novi projekat iz glavnog menija. Za vrstu projekta potrebno je izabrati Analysis Services Project (slika 9).
 
 
Slika 9. Kreiranje novog projekta
 
Zatim je potrebno definisati izvor podataka, poglede nad tim izvorima podataka i kona??no same kocke. Sve se radi kroz wizard-e. Dimenzije kocke se definišu usput mada ih je mogu??e definisati i posebno (slika 10).
 
 
Slika 10. Solution Explorer
 
Nakon definisanja ovih elemenata (u nedostatku preciznijeg objašnjenja) potrebno je uveriti se da je za definisani datasource Impersonifikacija postavljena na vrednost Inherit (slika 11). Do opcije se sti??e dvoklikom na datasource u Solution explorer-u. 
 
 
Slika 11. Datasource impersonation
 
Kona??no, potrebno je pokrenuti proces kreiranja konkretne kocke koriš??enjem opcije Build ili Run iz glavnog menija.
 
Bug u SQL Server-u:
Po pokušaju bild-a, ako je regija operativnog sistema postavljena na Serbian (Latin, Serbia) operacija ??e rezultovati greškom „Internal error: Failed to generate a hash string. (Microsoft SQL Server 2008 R2 Analysis Services)“.
Najbr??e rešenje je preko control panel-a promeniti lokalizaciju na „Serbian (Latin, Serbia and Montenegro (Former))“.
Više o ovom zvani??nom bagu na:
 
Po uspešnom bild-ovanju mogu??e je vršiti pretragu kocke pomo??nim alatom (slika 12).
 
 
Slika 12. Ugra??eni alat za brzu pretragu kocke – na primeru je prikaz napla??enog novca po rubrici, korisniku sistema i radnoj stanici
 
 
Upiti

Primer upita nad kockom ura??enom po metodi zvezde:
 
  • Napla??en novac po klijentu i po usluzi:
SELECT
 Measures.CENA ON AXIS(0),
 USLUGA.[ID].MEMBERS ON AXIS(1) ,
 [STALNI KLIJENT].[IME KLIJENTA].MEMBERS ON AXIS(2)
FROM [Narucivanje]

Primer upita nad kockom ura??enoj po metodi pahulje:
 

 Grafi??ki prikaz rezultata upita: Broj narudzbi za svakog klijenta po rubrikama

  • Broj narudzbi za svakog klijenta po rubrikama:
SELECT NON EMPTY
 Measures.[NARUDZBA Count] ON AXIS(0),
 [STALNI KLIJENT].[IME KLIJENTA].MEMBERS ON AXIS(1) ,
 [RUBRIKA].[NAZIV].MEMBERS ON AXIS(2)
FROM [OGLASNIK]
 
  • Broj narud??bi od svakog klijenta za Radio i TV izdanje: 
SELECT
   Measures.[NARUDZBA Count] ON AXIS(0),
   {USLUGA.[TV],USLUGA.[Radio]} ON AXIS(1),
   [STALNI KLIJENT].[IME KLIJENTA].MEMBERS ON AXIS(2)    
FROM [OGLASNIK]
 
  • Ukupni napla??eni novac na velikim oglasima za svakog klijenta:
SELECT
   Measures.[CENA] ON AXIS(0),
   [STALNI KLIJENT].[IME KLIJENTA].MEMBERS ON AXIS(1)
FROM [OGLASNIK]
   WHERE (USLUGA.[Veliki oglas])
 
  • Napla??eni novac za svaku vrstu usluge bez PDV-a: 
WITH
 MEMBER Measures.BezPDV AS 'Measures.CENA–(Measures.CENA)*0.18'
SELECT
 Measures.BezPDV ON AXIS(0),
 USLUGA.[NAZIV].MEMBERS ON AXIS(1)
FROM OGLASNIK

 Izrada izveštaja 

SQL Server Business Intelligence Studio korisniku daje mogu??nost izrade izveštaja na osnovu ranije ura??ene datawarehouse baze. To se mo??e uraditi kreiranjem novog projekta Report Server Project (slika 13).

Slika 13. Kreiranje report server projekta

Nakon kreiranja novog projekta treba definisati izvor podataka tj. izabrati ranije izra??enu datawarehouse bazu (slika 14).

Slika 14. Report Server project in Solution Explorer

Kona??no, desnim klikom na Reports u Solution Explorer-u i klikom na Add New Data Source treba pokrenuti wizzard za kreiranje samog izveštaja. Unutar wizzard-a kada se to ponudi treba otvoriti Query Builder. To je alat za izradu upita (slika 15). Ima dva re??ima rada vizualni i tekstualni. U tekstualnom re??imu upisuje se upit. 

Slika 15. Query Builder

Slika 16. Report Wizard

Wizzard se dovršava definisanjem izgleda izveštaja (slika 16).

Na slici 17 prikazan je kona??an izgled izveštaja. Izborom odgovaraju??e opcije izveštaji se mogu exportovati u Pdf, Excel, i druge formate. 

Slika 17. Kona??ni izgled izveštaja

No Comments

Title
Author
Comment
Anti Bot Image   
  
Rss