Bao Cao Luan Van - OLAP

Embed Size (px)

Citation preview

TRNG I HC S PHM TP.CMKHOA TON TIN HC B MN TIN HC

Trn Vnh Tin c Nguyn Ph Thnh

NGHIN CU CNG NGH OLAP V NG DNG

LUN VN C NHN CNG NGH THNG TIN

TP.HCM, Thng 4-2010

TRNG I HC S PHM TP.CMKHOA TON TIN HC B MN TIN HC

Trn Vnh Tin c Nguyn Ph Thnh

NGHIN CU CNG NGH OLAP V NG DNG

GIO VIN HNG DN: NGUYN TH TR LINH

TP.HCM, Thng 4-2010

1

Li cm n.u tin, chng em xin gi li cm n su sc n C Nguyn Th Tr Linh v Thy Trn Ngc Bo l nhng ngi trc tip hng dn ngy hm nay chng em c th hon thnh lun vn ny. Chc chn rng nu khng c s du dt v tn tnh gip ca C v Thy th chng em s gp rt nhiu kh khn trong qu trnh nghin cu thc hin lun vn. K n, chng em mun trn trng cm n cng lao to ln ca Ba M, nhng ng sinh thnh nui nng v dy d chng em nn ngi nh ngy hm nay. Chc chn rng sau ny d c lm g, d c i u, chng em cng s khng lm ph lng Ba M. Cui cng, xin gi li cm n chn thnh n trng i hc S Phm Thnh Ph H Ch Minh, ni dnh s quan tm rt ln i vi sinh vin cng ngh thng tin chng em trong sut qu trnh hc tp ti y. c bit, xin trn trng cm n tan th cc Thy C khoa Ton-Tin. Trn con ng gp nht nhng kin thc qu bu ca ngy hm nay, cc thy, cc c, v bn b l nhng ngi dy d, cng chng em st cnh v tri nghim trong sut 4 nm i hc.

2

Mc lcLi cm n. ............................................................................................................................ 2 Mc lc .................................................................................................................................. 3 Bng cc k hiu, ch vit tt ................................................................................................. 6 Bng danh mc cc bng biu ............................................................................................... 7 Bng danh mc cc hnh v ................................................................................................... 8 Tm tt ni dung lun vn ................................................................................................... 10 M u ................................................................................................................................. 11 C s l thuyt ..................................................................................................................... 15 Chng 1 Cng ngh OLAP ....................................................................................... 15 1.1 Gii thiu v Data Warehouse .............................................................................. 15 1.1.1 nh ngha...................................................................................................... 15 1.1.2 ngha ca Data Warehouse......................................................................... 16 1.1.3 c im ca Data Warehouse ...................................................................... 16 1.1.4 Cu trc ca Data Warehouse ........................................................................ 19 1.2 Tng quan v OLAP ............................................................................................. 19 1.2.1 Gii thiu ....................................................................................................... 19 1.2.2 c im ca OLAP: ..................................................................................... 21 1.3 Cc m hnh OLAP............................................................................................... 21 1.3.1 MOLAP (Multidimensional OLAP) .............................................................. 21 1.3.2 ROLAP (Relational OLAP) ........................................................................... 22 1.3.3 HOLAP (Hybrid OLAP) ................................................................................ 25 1.3.4 So snh cc m hnh ...................................................................................... 26 Chng 2 OLAP trong MS SQL Server Analysis Service (SSAS) ............................ 27 2.1. Kin trc cc thnh phn OLAP trong SSAS ...................................................... 27 2.1.1 Cube ............................................................................................................... 27 2.1.2 Dimension ...................................................................................................... 29 2.1.3 Measure.......................................................................................................... 31 2.1.4 Fact table (Fact) ............................................................................................. 31 2.1.5 Slice ............................................................................................................... 32 2.1.6 Partition.......................................................................................................... 33

3

2.1.7 Role ................................................................................................................ 33 2.1.8 Schedule (Lp lch) ........................................................................................ 34 2.2. Quy trnh thit k cc i tng trong SSAS ...................................................... 35 2.2.1 S lc v quy trnh xy dng Data Warehouse ........................................... 35 2.2.1.1 Quy trnh chung ........................................................................................... 35 2.2.1.2 Cng c thc hin: ....................................................................................... 37 2.2.2 Quy trnh to Cube: ....................................................................................... 37 Chng 3 Component Pivot Table trong Excel ......................................................... 43 3.1. Pivot Table ........................................................................................................... 43 3.1.1 Gii thiu ....................................................................................................... 43 3.1.2 Cch s dng ................................................................................................. 43 3.2. PivotChart ............................................................................................................ 46 3.3. Gii thiu mt s cng c h tr OLAP tng t nh Pivot Table ca Excel .... 47 3.3.1 RadarCube OLAP .......................................................................................... 47 3.3.2 Data Dynamics Analysis................................................................................ 48 3.3.3 ComponentOne OLAP for WinForm ............................................................ 49 3.3.4 Devexpress ASPxPivotGrid........................................................................... 49 3.4 So snh Pivot Table vi cc cng c khc:........................................................... 50 u im: .................................................................................................................. 50 Nhc im: ............................................................................................................ 50 Kt lun:................................................................................................................... 51 Chng 4 Cc th vin lp trnh lin quan n SSAS ................................................ 52 4.1. AMO .................................................................................................................... 52 4.2. ADOMD.NET...................................................................................................... 53 4.3. SMO ..................................................................................................................... 53 4.4. MDX .................................................................................................................... 55 4.4.1 Cu trc chung ............................................................................................... 55 4.4.2 V d mu....................................................................................................... 55 4.4.3 Lu .............................................................................................................. 56 Chng 5 Xy dng cng c Web h tr phn tch d liu cho cc ng dng OLTP58 5.1. Phn tch, thit k................................................................................................. 58 5.1.1 Phn tch ........................................................................................................ 58 5.1.1.1 Quy trnh x l nghip v: .......................................................................... 58 5.1.1.2 Yu cu chc nng:...................................................................................... 60 5.1.1.3 M hnh quan nim d liu: ......................................................................... 66

4

5.1.2 Thit k .......................................................................................................... 72 5.1.2.1 D liu: ........................................................................................................ 72 5.1.2.2 Kin trc module: ........................................................................................ 79 5.1.2.3 H thng giao din: ...................................................................................... 80 5.2. Ci t, lp trnh................................................................................................... 88 nh gi, bn lun v kt qu .............................................................................................. 89 Kt lun - Hng pht trin ................................................................................................. 91 Cc kt qu t c ................................................................................................... 91 1. V l thuyt .............................................................................................................. 91 2. V thc nghim ........................................................................................................ 91 Danh mc ti liu tham kho ............................................................................................... 93

5

Bng cc k hiu, ch vit ttTing Anh: AMO : BI: DTS: ETL: HOLAP : MDX: MOLAP : OLAP: ROLAP : SMO: SSAS: Analysis Management Objects Business Intelligence Data Transformation Services Extract Transform - LoadHybrid OLAP

Multi-dimensional ExpressionsMultidimensional OLAP

Online Analytical ProcessingRelational OLAP

SQL Server Management Objects SQL Server Analysis Services

Ting Vit: CSDL: C s d liu

6

Bng danh mc cc bng biuBng 1: So snh cc m hnh OLAP.........................................................................26

7

Bng danh mc cc hnh vHnh 1: Cc dng c s d liu .................................................................................11 Hnh 2: V d v mt mu bo co c nh ..............................................................12 Hnh 3: Minh ha v tr ca ng dng .......................................................................13 Hnh 4: Data Warehouse ...........................................................................................15 Hnh 5: c im ca Data Warehouse ....................................................................17 Hnh 6: Cu trc ca Data Warehouse ......................................................................19 Hnh 7: V tr ca OLAP ...........................................................................................19 Hnh 8: M hnh d liu MOLAP .............................................................................22 Hnh 9: M hnh d liu ROLAP..............................................................................23 Hnh 10: Lc hnh sao .......................................................................................24 Hnh 11: Lc hnh bng tuyt ............................................................................24 Hnh 12: M hnh d liu HOLAP ...........................................................................25 Hnh 13: V d v Khi (Cube) .................................................................................28 Hnh 14: V d v rng trong khi .........................................................................29 Hnh 15: V d v cc Dimension (Chiu) khc nhau ..............................................30 Hnh 16: Fact Table ...................................................................................................31 Hnh 17: Slice ............................................................................................................32 Hnh 18: Cc i tng trong SSAS .........................................................................35 Hnh 19: Pivot Table .................................................................................................43 Hnh 20: PivotChart ..................................................................................................46 Hnh 21: RadarCube OLAP ......................................................................................47 Hnh 22: Data Dynamics Analysis ............................................................................48 Hnh 23: ComponentOne OLAP for WinForm ........................................................49 Hnh 24: Devexpress ASPxPivotGrid .......................................................................50 Hnh 25: M hnh x l nghip v qun l template ................................................59 Hnh 26: S Use-Case m t h thng chc nng ca Administrator .................60 Hnh 27: S Use-Case m t h thng chc nng ca Designer .........................61 Hnh 28: S User-Case m t h thng chc nng ca Custom User .................61 Hnh 29: S Use-Case m t chc nng qun l Template .................................62 Hnh 30: S Use-Case m t chc nng phn quyn Template...........................62 Hnh 31: S Use-Case m t chc nng qun l Cube ........................................63 Hnh 32: S Use-Case m t chc nng phn quyn Cube .................................63 Hnh 33: S Use-Case m t chc nng qun l User .........................................64 Hnh 34: S Use-Case m t chc nng qun l Group ......................................65 Hnh 35: S Use-Case m t chc nng qun l Profile......................................65 Hnh 36: S Use-Case m t chc nng cu hnh h thng .................................66 Hnh 37: M hnh quan nim d liu h thng OLAP..............................................67 Hnh 38: M hnh vt l ............................................................................................73 Hnh 39: Mn hnh chnh phn h administrator ......................................................80 Hnh 40: Mn hnh chc nng Copy Rights .............................................................81

8

Hnh 41: Mn hnh chc nng Active cube ..............................................................81 Hnh 42: Mn hnh chc nng Assign cube to group ...............................................81 Hnh 43: Mn hnh chc nng Assign user to cube ..................................................82 Hnh 44: Mn hnh chc nng List user ....................................................................82 Hnh 45: Mn hnh chc nng Assign Groups ..........................................................83 Hnh 46: Mn hnh chc nng Assign Users ............................................................83 Hnh 47: Mn hnh chc nng Import cube ..............................................................83 Hnh 48: Mn hnh chc nng Assign rights to profile.............................................84 Hnh 49: Mn hnh chc nng Schedule ...................................................................84 Hnh 50: Mn hnh chc nng Setting Connection ...................................................85 Hnh 51: Mn hnh chnh phn h designer ..............................................................85 Hnh 52: Mn hnh chc nng Design template .......................................................86 Hnh 53: Mn hnh chc nng Export template ........................................................86 Hnh 54: Mn hnh chc nng Assign template to user ............................................87 Hnh 55: Mn hnh chnh phn h custom user ........................................................87

9

Tm tt ni dung lun vnTm hiu tng quan v cng ngh OLAP Tm hiu OLAP trong MS SQL Server Analysis Service (SSAS) Tm hiu v component Pivot Table trong Excel Pivot Table PivotChart Tm hiu cc th vin lp trnh lin quan n SSAS: MDX, AMO, SMO, ADOMD.NET, ... Xy dng cng c h tr phn tch d liu cho cc ng dng OLTP

10

M uGii thiu s lc:Ngy nay, cch mng thng tin v s bng n thng tin trn ton cu dn n cc thc trng nh sau: D liu: c lu tr nhiu dng c s d liu khc nhau

Hnh 1: Cc dng c s d liu

Nhiu h thng thng tin c xy dng gy ra h qu: Nhng giao din khc nhau Nhng dng biu d liu khc nhau Thng tin trng lp v khng nht qun Trong khi , cc phn mm v h thng bo co thng ch cung cp mt s mu bo co c nh. VD: Bo co v im cui k ca sinh vin

11

Hnh 2: V d v mt mu bo co c nh

Vy tnh hung t ra l ta s x l nh th no khi ngi dng mun: Xem thm thng tin v 1 thnh phn no trong CSDL ngoi nhng thnh phn c trn report Xem report theo nhiu hnh thc khc nhau, ngoi dng table qu quen thuc Khng cn cch no khc hn l ta phi to thm 1 report mi !!!

tng, l do chn ti:T thc trng trn, c th thy rng nhu cu phn tch s liu h tr ra cc quyt nh chin lc mt cch kp thi tr nn ngy cng cp thit.

12

Trong mi trng kinh doanh hin i, cc lnh o doanh nghip cn c nhng thng tin mang tnh qun tr chnh xc, nhanh chng v nhiu gc khc nhau nhm thc hin vic ra quyt nh kinh doanh hiu qu. V th, tng ca ti l s dng h thng OLAP kt hp vi Data warehouse to ra 1 cng c gip ngi dng - c bit l nh qun l, nhng ngi ra quyt nh - d dng khai thc, truy xut c cc mu d liu m h quan tm.

Hnh 3: Minh ha v tr ca ng dng

Mc ch tiXy dng 1 cng c phn tch d liu trc tuyn trn nn web cho php: Phn tch s liu da trn nhiu ch tiu, yu t.

13

C h thng phn quyn cht ch v chc nng v d liu trn ngi dng ln nhm ngi dng C h thng report, chart,... trc quan, a dng, h tr ko th C h thng template gip ngi dng d dng hn trong qu trnh xem v phn tch d liu C chc nng Import, Export template, d liu,... phc v cho nhu cu chuyn i gia cc h thng khc nhau Ty theo nhu cu / la chn ca ngi s dng khi phn tch s liu. c lp vi h thng c s d liu ca ngi dng

i tng v phm vi nghin cu Cng ngh Data Warehouse v OLAP Cc m hnh OLAP: MOLAP, ROLAP, HOLAP Tm hiu OLAP trong MS SQL Server Analysis Service (SSAS) Quy trnh thit k cc i tng trong SSAS: Data Source, Data Source View, Cube, Dimension, ... Component Pivot Table v PivotChart trong Excel Cc th vin lp trnh lin quan n SSAS: ADOMD.NET,... Xy dng cng c h tr phn tch d liu cho cc ng dng OLTP MDX, AMO, SMO,

14

C s l thuytChng 1 Cng ngh OLAP1.1 Gii thiu v Data Warehouse1.1.1 nh ngha

Hnh 4: Data Warehouse

Kho d liu (data warehouse), gi mt cch chnh xc hn l kho thng tin (information warehouse), l mt c s d liu hng i tng c thit k vi vic tip cn cc kin trong mi lnh vc kinh doanh. N cung cp cc cng c p ng thng tin cn thit cho cc nh qun tr kinh doanh ti mi cp t chc - khng nhng ch l nhng yu cu d liu phc hp, m cn l iu kin thun tin nht t c vic ly thng tin nhanh, chnh xc.

15

L mt s pha trn ca nhiu cng ngh, bao gm cc c s d liu a chiu v mi quan h gia chng, kin trc ch khch, giao din ngi dng ha,... Kho d liu thng rt ln ti hng trm GB hay thm ch hng Terabyte. Kho d liu c xy dng tin li cho vic truy cp theo nhiu ngun, nhiu kiu d liu khc nhau sao cho c th kt hp c c nhng ng dng ca cc cng ngh hin i v k tha c t nhng h thng c sn t trc.

1.1.2 ngha ca Data WarehouseTruy cp d liu mt cch thng nht : Thu thp v kt hp thng tin. Cung cp mt khung nhn tch hp Giao din ngi s dng khng bin i H tr kh nng chia s. D liu c tch hp v t chc: Lm cho h thng tr nn d hiu R rng D phn tch Chuyn i d liu thnh thng tin: cung cp thng tin chnh xc ng thi im v ng nh dng

1.1.3 c im ca Data Warehouse

16

Hnh 5: im c Data Wa c a arehouse

Tch hp (Integrate p ed): D liu t hp t nhiu ngu khc nh trong m t chc tp un hau mt c/cng ty v c v c ng nh xp xp rt gn. t, p, L mt t hp th tin chn xc, ch lng v nht qun tp ng nh t n Chun ha : C qui c tn Cc c C thuc t Cc nh C n v lng Cc o Hng c th (S ch Subject-orie ented): Ch huyn t h ng ng d dng sang hng h tr quyt nh t c t ch xung qu c uanh cc ch th chn nh kh hng (c h nh, ch customer), , s phm (p n product), b hng (sa n ales). Tp trung v vic m hnh ha v phn t vo a tch d liu cho cc nh a ra u n a uyt nh, m khng tp trung vo cc ho ng ha cc x l ton tc ot ay c qu

17 7

h ngy. ng C Cung cp m khung nhn n gin v s tch xun quanh cc s kin mt g c ng n c cc ch th a Bin th gian (Tim i me-variant Cc d liu c nh ngh vo mt thi im t): a m xc nh v c g chp l phc v cho vic s snh d liu theo chiu thi h ghi i so i gian Y cu qua trng vi kho d liu l p Yu an i d phm vi v thi gian di hn so o v cc h th i hng tc ng ghip : C C s d li tc nghip: d liu ch c gi tr hin th u u hi D D liu ca kho d li cung c thng ti lch s (v d nh, a u: p in ( , 5- nm tr -10 c) Y t thi gian c lu tr tro CSDL Yu ong

C nh (Non-vola atile ): d liu c th c th vo nh khng c sa m ng g a cha hoc xa b. Nhm gi im nh qun l c th tng hp cng vic kinh q h doanh c ton t c a chc/cng ty.

18 8

1.1.4 Cu trc ca Data Warehouse

Hnh 6: Cu trc ca Data Warehouse

Mt Data warehouse c cu to t mt hay nhiu cube (khi nim ny s cp phn sau). Enterprise Data warehouse: tp hp ton b thng tin v cc i tng ca ton t chc/cng ty. V d: sn phm, khch hng, doanh thu Data mart (kho d liu ch ): l mt tp con ca Data warehouse, ch tp trung vo nhng i tng c chn.

1.2 Tng quan v OLAP1.2.1 Gii thiu

Hnh 7: V tr ca OLAP

19

Nu h thng x l chuyn giao d liu OLTP tp trung vo vic thu thp, lu tr v bin i d liu mt cch chun xc, th OLAP tp trung vo vic s dng cc d liu c bin i vo vic ra quyt nh sn xut kinh doanh. OLAP l mt mc trong cc phn mm c s d liu cung cp giao din qua ngi s dng c th bin i hoc gii hn cc d liu s khai tu theo cc hm nh ngha hoc do chnh ngi s dng nh ngha, sau nhanh chng kim tra cc kt qu trong cc chiu khc nhau ca d liu H thng OLAP l mt h thng qun l d liu giu nng lc. N cho php ngi s dng phn tch d liu qua vic ct lt (slice) d liu theo nhiu kha cnh khc nhau, khoan xung (drill down) mc chi tit hn hay cun ln (roll up) mc tng hp hn ca d liu. Bn cht ct li ca OLAP l d liu c ly ra t Data warehouse hoc t Datamart sau c chuyn thnh m hnh a chiu v c lu tr trong mt kho d liu a chiu. C th, OLAP l mt k thut s dng cc th hin d liu a chiu gi l cc khi (cube) nhm cung cp kh nng truy xut nhanh n d liu ca kho d liu. To khi cho d liu trong cc bng chiu (dimension table) v bng s kin (fact table) trong kho d liu cung cp kh nng thc hin cc truy vn tinh vi v phn tch cho cc ng dng client. OLAP cung cp nhiu li ch cho ngi phn tch, cho v d nh: Cung cp m hnh d liu a chiu trc quan cho php d dng la chn, nh hng v khm ph d liu. Cung cp mt ngn ng truy vn phn tch, cung cp sc mnh khm ph cc mi quan h trong d liu kinh doanh phc tp. D liu c tnh ton trc i vi cc truy vn thng xuyn nhm lm cho thi gian tr li rt nhanh i vi cc truy vn c bit.

20

Cung cp cc cng c mnh gip ngi dng to cc khung nhn mi ca d liu da trn mt tp cc hm tnh ton c bit. H tr to m hnh chc nng d bo, phn tch xu th pht trin v phn tch thng k. Tm kim v hin th d liu di dng biu , khng gian 2D, 3D, OLAP c t ra x l cc truy vn lin quan n lng d liu rt ln m nu cho thc thi cc truy vn ny trong h thng OLTP s khng th cho kt qu hoc s mt rt nhiu thi gian.

1.2.2 c im ca OLAP:c bit n nh l mt phn ca kho d liu Cung cp cc bo co, phn tch tin tnh ton, cc th, biu Cho php phn tch trc tuyn d liu Thm d s tng tc d liu Cung cp cc giao din a dng cho ngi dng Cung cp kh nng phn tch d liu phc tp bng phng thc n gin

1.3 Cc m hnh OLAP1.3.1 MOLAP (Multidimensional OLAP)M hnh MOLAP lu tr d liu c s (l d liu t cc bng ca kho d liu) v thng tin tng hp (l cc o c tnh ton t cc bng) trong cc khi

21

Hnh 8: M hnh d liu MO d OLAP

D liu c tm th ti im giao ca cc chiu hy m a u

D liu t trong MOL LAP cn ph c process sau mt thi g nht nh cp hi gian p nht li n nhng d l mi tro Data Warehouse. liu ong W MOLAP thch h cho cc truy vn tng hp d liu the thi gian di. P p t d eo V d: t hp doanh thu ca tng chi nhnh tron vng 2 n tr li ng ng nm i.

1.3.2 RO OLAP (R Relationa OLAP al P)M hnh OLAP qu h (RO h uan OLAP) lu tr d li c s v thng tin tng hp u u n p trong cc bng qua h c an

22 2

Hnh 9 M hnh d liu RO 9: OLAP

D liu c tm th ti im giao ca 1 ct v 1 mt hng hy m a g

C 2 kiu m hnh d liu: Lc hn sao (sta mi m chiu ch c x dng t mt bng nh ar): t h y g ch hiu

23 3

Hnh 10: Lc hnh sao

Lc hnh bng tuyt (snowflake): mi chiu c xy dng t nhiu bng chiu

Hnh 11: Lc hnh bng tuyt

ROLAP thch hp cho cc truy vn d liu theo thi gian thc (xy ra thng xuyn v i hi chnh xc tc thi). V d: xem thng tin chng khon

24

1.3.3 HOLAP (Hybrid OLAP)L m hnh OLAP lai (HOLAP) l s kt hp gia MOLAP v ROLAP.

Hnh 12: M hnh d liu HOLAP

HOLAP l m hnh lai gia MOLAP v HOLAP, kt hp nhng u im v loi b nhng khuyt im ca 2 m hnh trn nhm to ra mt m hnh ti u

Li ch ca vic lu tr trong cu trc HOLAP l: Lu d liu tng hp trong Cube (theo MOLAP) tng tc x l cc truy vn phc tp Lu tr d liu c s trong cc bng quan h (theo ROLAP) nhm tit kim khng gian lu tr V d: Trong mt cng ty chng khon: D liu v thng tin nhn vin, doanh thu ca 2 nm tr v trc => lu trong cube D liu v thng tin chng khon, gi c phiu hng ngy => lu trong bng quan h Ti u ha c vn lu tr v x l ca h thng.

25

1.3.4 So snh cc m hnhMOLAP >2 Khi Khi Nhanh nht Nhiu Cao ROLAP 2 Bng quan h Bng quan h Chm nht Thp Thp HOLAP >2 Bng quan h Khi Nhanh Trung bnh Trung bnh

S chiu Lu tr d liu c s Lu tr thng tin tng hp Hiu sut thc hin truy vn Tiu th khng gian lu tr Chi ph bo tr

Bng 1: So snh cc m hnh OLAP

KT LUN:Chn m hnh no cn da vo hiu sut, mc ch khai thc, v lng d liu, (v d MOLAP: thch hp vi data marts thm cc bng vo danh sch Included Objects 6. Nhn Next 7. Ti thuc tnh Name, ta thit lp l Adventure Wordk DW v nhn Finish hon tt vic nh ngha mt data source view. Data Source View Adventure Work DW s hin th ti Data Source View Designer trong Business Intelligence Development Studio v gm cc thnh phn sau:o o o

Diagram Pane th hin mi quan h gia cc bng d liu trc quan Tables Pane: cc bng d liu v schema c th hin theo tree view Diagram Organizer Pane h tr to cc subdiagram m thng qua ta c th c dc cc subsets ca data source view

Sau khi hon tt bc ny, ta s c khung nhn ton din v cc bng d liu v mi quan h ca chng.

2.2.2.3 To DimensionCc bc nh sau: 1. Trong pane Solution Explorer, phi chut Dimentsions, chn New Dimensions. 2. Ti ca s Welcome to Dimension Wizard, chn Next 3. Ti ca s Select Creation Method, m bo ty chn Use an Existing Table c chn, chn Next. 4. Ti ca s Specify Source Information, m bo data source Adventure Works DW c chn. 5. Trong danh sch Main Table, chn Date 6. Ti trang Select Dimension Attributes, chn cc Attributes sau: Date Key

39

Full Date Alternate Key English Month Name Calendar Quarter Calendar Year Calendar Semester 7. Thay i Attribute Type ca cho thuc tnh Full Date Alternate Key t Regular sang Date bng cch chn vo Regular v tin hnh thay i. Thc hin tng t cho cc thuc tnh khc. English Month Name > Month Calendar Quarter > Quarter Calendar Year > Year Calendar Semester > Half Year 8. Nhn Next 9. Ti mn hnh Completing the Wizard, trong Preview Pane, ta c th thy dimension Date v cc thuc tnh ca n. 10. Nhn Finish hon tt vic nh ngha Dimension 11. Tin hnh Save All Project

2.2.2.4 To CubeCc bc nh sau: 1. Trong Solution Explorer Pane, phi chut Cubes, chn New Cubes 2. Ti ca s Welcome to the Cube Wizard, chn Next 3. Ti ca s Select Creation Method, chn Use existing tables v nhn Next 4. ti ca s Select Measure Group Tables, m bo Adventure Works DW data source view c chn, v nhn Next.

40

5. Nhn Suggest ca s Suggest Table hin th v xut cc table cn thit xy dng cc measure group. 6. Nhn Next 7. ti ca s Select Measure, xem li InternetSales measure group v deselect cc checkbox cho cc gi tr sau a. Promotion Key b. Currency Key c. Sales Territory Key d. Revision Number 8. Chn Next 9. ti ca s Selecting Existing Dimensions, chn Date dimension dc nh ngha v chn Next 10. Trong ca s Select New Dimension, chn cc dimension mi thit lp, m bo Customer, Geography v Product c chn v deselect InternetSales. 11. Nhn Next 12. ti ca s Completing the Wizard, thit lp name ca Cube l Analysis Services Tutorial, 13. Chn Finish hon tt 14. Tin hnh Save All

Deploy Cube ln server1. Trong Solution Explorer Pane, phi chut Analysis Services Tutorial v chn Properties. 2. ti Configuration Properties ti pane bn tri, chn Deployment 3. Chn OK 4. Phi chut Analysis Service Tutorial project v chn Deploy 5. Review li ca s Output v Deployment Progress Analysis Service Tutorial m bo cube c build khng c li khi build

41

6. Nh vy project SSAS c deploy ln server

Browsing Cube :1. Chuyn sang Dimension Designer cho Product Dimension trong Business Intelligence Studio bng cch double click vo Product dimension trong Dimension Node 2. Click Browse hin th cy cu trc ca Product Key 3. Chuyn sang Cube Designer trong Business Intelligence Development Studio bng cch double click vo Analysis Service Tutorial trong cube node. 4. Chuyn sang Browse tab v nhn vo biu tng reconnect, ca s Browse tab gm 2 phn Left Pane: th hin cc i tng ca Analysis Service Tutorial Cube Right Pane gm 2 phn: phn trn l Filter Pane, phn di l Data Pane v vic phn tch, th hin d liu s c thc hin ti y.

42

Chng 3 Component Pivot Table trong Excel3.1. Pivot Table3.1.1 Gii thiuPivot Table l mt cng c rt mnh ca Excel trong vic to ra cc bo co phn tch d liu. Dng kt hp 2 cng c Pivot Table v PivotChart s to ra cc bo co phn tch s liu ht sc sinh ng v hiu qu.

Hnh 19: Pivot Table

3.1.2 Cch s dng To mt Pivot Table to mt Pivot Table s dng PivotTable Wizard bn cn cho Excel bit tng hp trng no theo ct v trng no theo hng. Bn cng c th ch nh trng trang xp cc nhm theo trang. Bn c th o li v tr ca cc trng c mt bng tng hp khc.

43

Bn c th to mt pivot table t nhiu ngun d liu khc nhau. Thng ngun d liu l cc bng ca Excel. Bn cng c th to Pivot Table t ngun d liu ngoi, t nhiu vng hp li, hay t chnh cc Pivot Table khc. Cc bc 1. Chn mt bt k trong danh sch cn tng hp; gi Data> PivotTable Report. 2. Trong bc 1 ca PivotTable Wizard, chn ngun d liu ( Microsoft Excel List hay t cc c s d liu khc); sau nhn nt Next. 3. Trong bc 2 ca PivotTable Wizard, vng a ch ca danh sch xut hin trong hp Range. Nu a ch sai hy chnh li. Sau nhn Next. 4. Trong bc 3 ca PivotTable Wizard, bn trnh by b cc ca pivot table. Cc trng tr thnh cc nt nm bn phi ca ca s. Ko nt ng vi trng d liu vo vng DATA. sp xp mt trng theo ct, ko nt ca trng len vng COLUMN. sp xp mt trng theo hng, ko n vng ROW. Nhn nt Next. 5. Trong bc 4 ca PivotTable Wizard, bn ch nh t pivot table. Nu mun t thm cc tu chn khc cho pivot table, nhn nt Options, t cc tu chn khc, v nhn OK. sau nhn Finish.

Cc hiu chnh trn mt Pivot Table : Thay i tn trngV pivot tables ch l bng hin th thng tin nn bn khng th thay i thng tin trn bng. Bn ch c th thay tn ca cc trng. 1. hiu chnh tn trng, chn trng 2. nhp tn mi.

44

TIP: thay i cc tu chn khc cho mt trng, nhn kp ln nt ca trng . Chn cc tu chn.

Thm trng d liu1. thm trng d liu, chn mt trong bng pivot table. 2. Nhn nt PivotTable Wizard trn thanh PivotTable. (Nhn chut phi ln vng thanh cng c, chn PivotTable hin th thanh ny nu cha hin) 3. Trong bc 3 ca PivotTable Wizard, ko thm nt ca trng bn mun thm vo vng DATA; nhn nt Finish.

Thm trng Rows, Columns, hay Pages1. thm trng hng, ct hay trang, chn mt bt k trong pivot table. 2. Nhn nt PivotTable Wizard trn thanh PivotTable. 3. Trong bc 3 ca PivotTable Wizard, ko cc nt cn thit vo vng ROW, COLUMN, hay PAGE; sau nhn Finish. TIP: b mt trng hng, ct hay trang, ko nt trng ra khi pivot table.

nh dng Pivot TableBn c th s dng tnh nng AutoFormat nh dng 1. Chn mt trong bng pivot table. Chn Format, AutoFormat. 2. Trn Table Format , chn nh dng mong mun, nhn OK. Ch : nh dng khng b mt khi ta thay i hay cp nht li bng PivotTable cn m bo mc Enable Selection trn PivotTable menu ca thanh PivotTable c chn.

Cp nht Pivot TableMt pivot table khng t cp nht khi bn thay i d liu ngun.

45

1. cp nht pivot table, chn mt bt k trong pivot table. 2. Nhn nt Refresh Data trn thanh PivotTable.

3.2. PivotChartL cng c ca Excel, i chung vi Pivot Table, gip ngi dng xem d liu theo nhiu dng biu khc nhau mt cch trc quan

Hnh 20: PivotChart

46

3.3. Gii thiu mt s cng c h tr OLAP tng t nh Pivot Table ca Excel3.3.1 RadarCube OLAPL .NET component phc v cho vic phn tch d liu c thit k cho Windows Forms v c ASP.NET applications:RadarCube OLAP Grid cho ASP.NET RadarCube OLAP Chart cho Windows Form

Tham kho: http://www.radar-soft.com/products/

Hnh 21: RadarCube OLAP

47

3.3.2 Data Dynamics AnalysisL .NET component phc v cho vic phn tch d liu c thit k cho Windows Forms v c ASP.NET applications Tham kho: http://www.datadynamics.com/products/dda/overview.aspx

Hnh 22: Data Dynamics Analysis

48

3.3.3 ComponentOne OLAP for WinFormCh dng cho Windows Forms Application Tham kho: http://www.componentone.com/SuperProducts/OLAPWinForms/

Hnh 23: ComponentOne OLAP for WinForm

3.3.4 Devexpress ASPxPivotGridL 1 .NET control thit k cho ASP.NET phc v OLAP v Data mining C nhiu h tr v giao din p mt v tnh nng kh phong ph Xy dng sn rt nhiu class ngi dng ty bin, lp trnh ty theo nhu cu s dng ca mnh Tham kho: http://www.devexpress.com/Products/NET/Controls/ASP/Pivot_Grid/

49

Hnh 24: Devexpress ASPxPivotGrid

3.4 So snh Pivot Table vi cc cng c khc:u im:L 1 cng c rt mnh c Microsoft pht trin h tr vic phn tch d liu trong OLAP v c tch hp trong Excel i km vi PivotChart cung cp cho ngi s dng 1 ci nhn trc quan, sinh ng v nhng d liu mun phn tch

Nhc im:Nhc im ln nht: Pivot Table l COM component nn nu client mun s dng th bt buc my tnh ca h phi c ci sn Pivot Table iu ny dn n mt h thng cng nhiu client s dng bao nhiu th cng phi tn chi ph by nhiu cho vic ci t Thm vo , nu mun s dng PivotTable trn nn Web th ch chy c ng dng trn browser IE ca Microsoft (v ch c IE c h tr ActiveX Control)

50

Kt lun:Chnh v nhng nhc im ny, nhm em quyt nh khng pht trin ng dng ca mnh da trn component PivotTable ca Microsoft m s dng component Devexpress ASPxPivotGrid c gii thiu phn 3.3.4 Vi vic s dng Devexpress ASPxPivotGrid l mt .NET control xy dng nn ng dng xy dng chy pha sever, nhm em mun rng cc my client ch cn mt browser bnh thng m khng cn ci t thm bt c cng c no khc s dng chng trnh.

51

Chng 4 Cc th vin lp trnh lin quan n SSAS4.1. AMOL tp hp cc lp dng qun l tt c cc i tng ca Analysis service nh Database, Cube, Dimension, Measure Lu : Th vin AMO ch h tr vic c cu trc ca cc i tng trong AS ch khng th truy vn d liu. Ti liu tham kho v AMO MSDN: http://msdn.microsoft.com/en-us/library/ms124924.aspx V d v s dng th vin AMO trong ti: using Microsoft.AnalysisServices; ..... Server myServer = new Server(); Database myDB = new Database(); Cube myCube = new Cube(); Dimension myDim = new Dimension(); myServer.Connect("localhost"); Database tmpDB = myServer.Databases.FindByName(Project); Cube tmpCube = tmpDB.Cubes.FindByName(Adventure Works DW); foreach (CubeDimension tmpCubeDim in tmpCube.Dimensions) { ..... }

52

4.2. ADOMD.NETVi AMO, ta c th thao tc c vi cc i tng v ly c cu trc cc thnh phn ca Analysis service. Tuy nhin, khng th truy vn c data. truy vn data trong Analysis service, ta phi dng th vin ADOMD.NET Ti liu tham kho v AMO MSDN: http://msdn.microsoft.com/en-us/library/ms123483.aspx V d v s dng th vin ADOMD.NET trong ti: using Microsoft.AnalysisServices.AdomdClient; ... string strConn = "Provider=MSOLAP.3; Data Source=localhost;Initial Catalog=Project;Integrated Security=SSPI"; string strMDX = "select " + "[" + attNode.ParentNode["Cube structure"].ToString() + "].[" + attNode["Cube structure"].ToString() + "].Members on Columns From [" + tmpCube + "]"; AdomdConnection conn = new AdomdConnection(strConn); conn.Open(); //create adomd command using connection and MDX query AdomdCommand cmd = new AdomdCommand(strMDX, conn); AdomdDataReader Reader = cmd.ExecuteReader(); Reader.Read(); ....

4.3. SMODng to cc job trong SQL Server Agent phc v cho vic lp lch process li Analysis Service Database nhm update nhng thay i t pha Database

53

Server, m bo cho Client c th truy xut c nhng d liu mi nht v y ca h thng Ti liu tham kho v AMO MSDN: http://msdn.microsoft.com/en-us/library/ms162169.aspx V d v s dng th vin SMO trong ti: using Microsoft.SqlServer.Management.Smo; using Microsoft.SqlServer.Management.Smo.Agent; ..... Server svr = new Server("(local)"); JobServer agent = svr.JobServer; Job j = new Job(agent, "Smo Job"); j.Create(); JobStep js = new JobStep(j, "Step 1"); js.SubSystem = AgentSubSystem.AnalysisCommand; string str = @""; str = str + "" + curr_db + ""; str = str + ""; str = str + "ProcessFull"; str = str + "; js.Server = "localhost"; js.Command = str; js.OnSuccessAction = StepCompletionAction.QuitWithSuccess; js.OnFailAction = StepCompletionAction.QuitWithFailure; js.Create();

54

4.4. MDXAnalysis Service khng dng ngn ng truy vn nh i vi c s d liu quan h thng thng. Thay vo , truy vn d liu ta phi dng n ngn ng MDX (Multi-dimensional Expressions)

4.4.1 Cu trc chungGing cu trc ca 1 cu truy vn SQL trn CSDL thng thng, nhng m rng hn truy vn trn khi d liu a chiu. Cu truy vn a chiu (MDX) c dng nh sau: SELECT [ [, ...]] FROM [] [WHERE []] Trong MDX, pht biu SELECT c dng m t 1 tp d liu l 1 tp con ca d liu a chiu. Mt cu truy vn MDX c cha mt mnh SELECT, mt mnh FROM v mt mnh ty chn WHERE Cu truy vn MDX phi cha cc thng tin sau : S lng chiu (c th m t ti a 128 chiu) Cc thnh vin ca mi chiu cho tng trc ca cu truy vn Tn ca khi c cha d liu cho cu truy vn MDX. Cc thnh vin t 1 chiu ct, theo d liu khi c ct.

4.4.2 V d muSELECT { [Measures].[Unit Sales], [Measures].[Store Sales] } ON COLUMNS, { [Time].[1997], [Time].[1998] } ON ROWS FROM Sales WHERE ( [Store].[USA].[CA] ) Mnh SELECT xc nh cc chiu ca tp kt qu ca truy vn MDX, trong v d l 2 chiu COLUMNS v ROWS.

55

Mnh FROM xc nh ngun d liu a chiu (khi) no c s dng trch lc d liu vo tp kt qu ca pht biu SELECT. Trong v d l t khi d liu Sales Mnh WHERE nu c, dng xc nh chiu ct ca khi d liu, nhm gii hn tp kt qu theo cc chiu thnh vin. Trong v d, d liu c ct theo thnh vin CA ca chiu Store.

4.4.3 Lu Pht biu SELECT ca cu truy vn MDX cn h tr cc c php tu chn khc, nh l t kha WITH v vic s dng cc hm MDX xy dng cc thnh vin bng vic tnh ton thm vo 1 trc hoc 1 chiu ct. C php ca cu truy vn MDX tng t nh c php SQL, tuy nhin, c 1 s khc bit nh sau : C php MDX phn bit cc tp hp bng vic dng du ngoc nhn { } bao quanh cc b hay thnh vin. Cu truy vn MDX c th cha ti 128 chiu, nhng ch c 5 chiu u tin l c aliase (tn ph). Mt trc c th c tham chiu bi th t ca n trong cu MDX hay bi tn ph ca n nu c. Cu truy vn MDX cn c th c vit theo mu sau dng th t ca mi trc: SELECT { [Measures].[Unit Sales], [Measures].[Store Sales] } ON AXIS(0), { [Time].[1997], [Time].[1998] } ON AXIS(1) FROM Sales WHERE ( [Store].[USA].[CA] ) Trong cu truy vn SQL, mnh FROM c th ch n nhiu bng d liu. Tuy nhin, mnh FROM trong cu truy vn MDX b gii hn 1 khi duy nht.

56

Mnh WHERE c dng m t chiu ct d liu. Nu 1 chiu khng c cp trong mnh WHERE, SQL Analysis Services vn xem n l 1 chiu ct, nhng c lc theo s thnh vin mc nh ca n. Mnh WHERE c th thay i tin trnh lc cho 1 chiu no , gip tinh chnh d liu kt qu.

57

Chng 5 Xy dng cng c Web h tr phn tch d liu cho cc ng dng OLTP5.1. Phn tch, thit k5.1.1 Phn tch 5.1.1.1 Quy trnh x l nghip v:

58

Hnh 25: M hnh x l nghip v qun l template 59

5.1.1.2 Y cu ch nn u hc ng:

Hnh 26: S Use-Case m t h th h hng chc nng ca Administrator

60 0

Hnh 27: S Use-Ca m t h thng ch nng c Designer H ase c a r

Hnh 28: S User-Case m t h thng chc nng ca Custom Us h e t c ser

61 1

Hnh 29: S Use-Case m t chc nng qun l Template

Hnh 30: S Use-Case m t chc nng phn quyn Template

62

Hnh 31 S Use-Case m t chc n qun l Cube 1: ng

Hnh 32: S Use-C S Case m t chc nng phn quy Cube g yn

63 3

Hnh 33: S Use-Case m t chc nng qun l User

64

Hnh 34: S Use-Case m t chc nng qun l Group

Hnh 35: S Use-Case m t chc nng qun l Profile

65

Hnh 36: S Use-Case m t chc nng cu hnh h thng

5.1.1.3 M hnh quan nim d liu:

66

Hnh 37: M hnh quan nim d liu h thng OLAP h 67

M t cc loi thc th: Loi thc th tblChi_Tiet_Group: Thuc tnh Kiu iStt_Chi_Tiet int

Kch thc 4

P1 U x x P x U x

M L x x M L x x x

Loi thc th tblChi_Tiet_Template: Thuc tnh Kiu Kch thc iStt_CTTemplate int 4 iDefault int 4 Loi thc th tblRole: Thuc tnh iMa_Role vTen_Role Loi thc th tblGroup: Thuc tnh iMa_Group vTen_Group vMo_Ta Loi thc th tblQuyen: Thuc tnh iMa_Quyen vTen_Quyen vMo_Ta Loi thc th tblTemplate: Thuc tnh iMa_Template vTen_ Template vLoai tNoi_Dung iParent vStatus vMo_Ta Kiu int varchar Kiu int varchar varchar Kiu int varchar varchar Kiu int varchar varchar text int varchar varchar Kch thc 4 20 Kch thc 4 20 100 Kch thc 4 50 100 Kch thc 4 30 10 4 20 100

P x

U M L x x x x x x U M L x x x x x

P x

P x

U x x

M L x x x

P x

U x x

M L x x x x x x

1

P : primary key (kha chnh) U : unique key, candidate key (kha ch nh) M : mandatory (not null) L : locked (khng cho php sa gi tr )

68

Loi thc th tblUser: Thuc tnh iMa_User vHo_Ten vUser_name vPassword vMo_Ta vDien_Thoai vEmail vChuc_Vu vDia_Chi

Kiu int varchar varchar int varchar varchar varchar varchar varchar

Kch thc 4 30 20 64 100 15 50 50 50 Kch thc 20 Kch thc 4 50 Kch thc 4 50 100 4 Kch thc 4 50 Kch thc 4 50

P x

U M L x x x x x x x

Loi thc th tblCurrentConnect: Thuc tnh Kiu vServer varchar Loi thc th tblAttribute: Thuc tnh Kiu iMa_Att int vTen_Att varchar Loi thc th tblCube: Thuc tnh iMa_Cube vTen_Cube vMo_Ta iActive Kiu int varchar varchar int

P x P x

U M L x x x U M L x x x x U M L x x x x x

P x

Loi thc th tblDatabase: Thuc tnh Kiu iMa_DB int vTen_DB varchar Loi thc th tblDimension: Thuc tnh Kiu iMa_Dim int vTen_Dim varchar

P x

U x

M L x x x

P x

U M L x x x x U x M L x x

Loi thc th tblChi_Tiet_Role_Member: Thuc tnh Kiu Kch thc iStt_Chi_Tiet int 4

P x

69

Loi thc th tblMember: Thuc tnh Kiu iMa_Member int vTen_Member varchar Loi thc th tblProfile: Thuc tnh iMa_Profile vTen_Profile vMo_Ta Kiu int varchar varchar

Kch thc 4 50 Kch thc 4 20 100

P x

U x

M L x x x

P x

U M L x x x x x

Loi thc th tblChuc_Nang_Profile: Thuc tnh Kiu Kch thc iStt_Chuc_Nang int 4

P x

U x

M L x x

M t rng buc ton vn: Kha ni: (S) R1-01: id(tblChi_Tiet_Group) = iStt_Chi_Tiet (S) R1-02: id(tblChi_Tiet_Template) = iStt_CTTemplate (S) R1-03: id(tblRole) = iMa_Role (S) R1-04: id(tblGroup) = iMa_Group (S) R1-05: id(tblQuyen) = iMa_Quyen (S) R1-06: id(tblTemplate) = iMa_Template (S) R1-07: id(tblUser) = iMa_User (S) R1-08: id(tblCurrentConnect) = vServer (S) R1-09: id(tblAttribute) = iMa_Att (S) R1-10: id(tblCube) = iMa_Cube (S) R1-11: id(tblDatabase) = iMa_DB (S) R1-12: id(tblDimension) = iMa_Dim (S) R1-13: id(tblChi_Tiet_Role_Member) = iStt_Chi_Tiet (S) R1-14: id(tblMember) = iMa_Member (S) R1-15: id(tblProfile) = iMa_Profile (S) R1-16: id(tblChuc_Nang_Profile) = iStt_Chuc_Nang Rng buc v min gi tr: (I) R2-01: tblTemplate_Detail.iDefault in (0,1). (I) R2-02: tblTemplate.vLoai in (public, private). (I) R2-03: tblTemplate.vStatus in (normal, restricted). (I) R2-04: tblTemplate_Detail.iActive in (0,1).- (S) : rng buc s c h qun tr c s d liu kim tra. - (I) : rng buc s c kim tra mc giao din. - (T) : rng buc s c thay th bng trigger.

70

Kha ngoi: (S) R3-01: tblRole[vTen_Role] tblGroup[vTen_Group] (S) R3-02: tblChi_Tiet_Group[iMa_User] tblUser[iMa_User] (S) R3-03: tblChi_Tiet_Group[iMa_Group] tblGroup[iMa_ Group] (S) R3-04: tblUser[iMa_Profile] tblProfile[iMa_ Profile] (S) R3-05: tblMember[iMa_Att] tbl Attribute[iMa_ Att] (S) R3-06: tblChi_Tiet_Role_Member[iMa_Member] tblMember (S) [iMa_ Member] (S) R3-07: tblChi_Tiet_Role_Member[iMa_Role] tblRole[iMa_ Role] (S) R3-08: tblTemplate[iMa_Cube] tblCube[iMa_ Cube] (S) R3-09: tblChi_Tiet_Template[iMa_User] tblUser[iMa_User] (S) R3-10: tblChi_Tiet_Template[iMa_Template] tblTemplate[iMa_Template] (S) R3-11: tblChi_Tiet_Template[iMa_Quyen] tblQuyen [iMa_ Quyen] (S) R3-12: tblChuc_Nang_Profile[iMa_ Profile] tblProfile [iMa_ Profile] R3-13: tblChuc_Nang_Profile[iMa_ Quyen] tblQuyen [iMa_ Quyen] (S) R3-14: tblAttribute[iMa_Dim] tblDimemsion[iMa_ Dim] (S) R3-15: tblDimemsion[iMa_Cube] tblCube [iMa_Cube] (S) R3-16: tblCube [iMa_DB] tblDatabase[iMa_DB] (S) R3-17: tblCurrentConnect [iMa_DB] tblDatabase[iMa_DB] (S) R3-18: tblQuyen[iParent] tblQuyen [iMa_Quyen] Rng buc gia cc thuc tnh trong mt bng: (T) R4-01: tblTemplate[iParent] tblTemplate[iMa_Template]CREATE TRIGGER trg_Template_delete ON tblTemplate FOR DELETE AS DECLARE @iMa_Template INT SELECT @iMa_Template = iMa_Template FROM deleted DELETE FROM tblTemplate WHERE iParent = @iMa_Template ;

Rng buc gia cc thuc tnh, cc b ca nhiu bng: (T) R5-01: tblTemplate[iOwner] tblUser[iMa_User]CREATE TRIGGER trg_User_delete ON tblUser FOR DELETE AS DECLARE @iMa_User INT SELECT @iMa_User = iMa_User FROM deleted DELETE FROM tblTemplate WHERE iMa_Template in (

71

SELECT DISTINCT tblTemplate.iMa_Template FROM tblTemplate WHERE (tblTemplate.iOwner = @iMa_User)) ;

5.1.2 Thit k 5.1.2.1 D liu:M hnh vt l:

72

Hnh 38: M hnh vt l 73

M t cc bng: Bng tblChi_Tiet_Group: Thuc tnh iStt_Chi_Tiet iMa_User iMa_GroupKha ngoi:

Kiu int int int

Kch thc 4 4 4

P2 U x x

M x x x

L x x x

F x x

Kha ngoi iMa_User iMa_Group

Bng tham chiu tblUser tblGroup Kch thc 4 4 4 4 4

Kha ni iMa_User iMa_Group P x U x M x x x x x L x x x x F x x x

Bng tblChi_Tiet_Template: Thuc tnh Kiu iStt_CTTemplate int iMa_User int iMa_Template int iMa_Quyen int iDefault intKha ngoi:

Kha ngoi iMa_User iMa_ Template iMa_Quyen

Bng tham chiu tblUser tblTemplate tblQuyen Kiu int varchar Kch thc 4 20

Kha ni iMa_User iMa_ Template iMa_Quyen P x U M L x x x x x x F x

Bng tblRole: Thuc tnh iMa_Role vTen_RoleKha ngoi:

Kha ngoi vTen_Role

Bng tham chiu tblGroup Kiu int varchar varchar Kch thc 4 20 100

Kha ni vTen_Group P x U M L x x x x x F

Bng tblGroup: Thuc tnh iMa_Group vTen_Group vMo_Ta

2

P : primary key (kha chnh) U : unique key, candidate key (kha ch nh) M : mandatory (not null) L : locked (khng cho php sa gi tr ) F : foreign key (kha ngoi).

74

Bng tblQuyen: Thuc tnh iMa_Quyen vTen_Quyen vMo_Ta iParentKha ngoi:

Kiu int varchar varchar int

Kch thc 4 50 100 4

P x

U x x

M L x x x x

F

x

Kha ngoi iParent

Bng tham chiu tblQuyen Kiu int varchar varchar text int int int varchar varchar Kch thc 4 30 10 4 4 4 20 100

Kha ni iMa_Quyen P x U x x M L x x x x x x x Kha ni iMa_User iMa_Cube P x U M L x x x x x x x x x F x F

Bng tblTemplate: Thuc tnh iMa_Template vTen_ Template vLoai tNoi_Dung iOwner iMa_Cube iParent vStatus vMo_TaKha ngoi:

x x

Kha ngoi iOwner iMa_Cube

Bng tham chiu tblUser tblCube Kiu int varchar varchar int int varchar varchar varchar varchar varchar Kch thc 4 30 20 64 4 100 15 50 50 50

Bng tblUser: Thuc tnh iMa_User vHo_Ten vUser_name vPassword iMa_Profile vMo_Ta vDien_Thoai vEmail vChuc_Vu vDia_ChiKha ngoi:

x

Kha ngoi iMa_Profile

Bng tham chiu tblProfile

Kha ni iMa_Profile

75

Bng tblCurrentConnect: Thuc tnh vServer iMa_DBKha ngoi:

Kiu varchar int

Kch thc 20 4

P x

U M L x x x x x

F x

Kha ngoi iMa_DB

Bng tham chiu tblDatabase Kiu int varchar int Kch thc 4 50

Kha ni iMa_DB P x U M L x x x x x x F x

Bng tblAttribute: Thuc tnh iMa_Att vTen_Att iMa_DimKha ngoi:

Kha ngoi iMa_Dim

Bng tham chiu tblDimension Kiu int varchar int varchar int Kch thc 4 50 4 100 4

Kha ni iMa_Dim P x U M L x x x x x x x Kha ni iMa_DB P x U x M L x x x F F x

Bng tblCube: Thuc tnh iMa_Cube vTen_Cube iMa_DB vMo_Ta iActiveKha ngoi:

Kha ngoi iMa_DB

Bng tham chiu tblDatabase Kiu int varchar Kiu int varchar int Kch thc 4 50 Kch thc 4 50 4

Bng tblDatabase: Thuc tnh iMa_DB vTen_DB Bng tblDimension: Thuc tnh iMa_Dim vTen_Dim iMa_CubeKha ngoi:

P x

U M L x x x x x x

F x

Kha ngoi iMa_Cube

Bng tham chiu tbl Cube

Kha ni iMa_Cube

76

Bng tblChi_Tiet_Role_Member: Thuc tnh Kiu iStt_Chi_Tiet int iMa_Member int iMa_Role intKha ngoi:

Kch thc 4 4 4

P x

U x

M x x x

L x x x

F x x

Kha ngoi iMa_Member iMa_Role

Bng tham chiu tblMember tblRole Kiu int varchar int Kch thc 4 50 4

Kha ni iMa_Member iMa_Role P x U x M L x x x x x F x

Bng tblMember: Thuc tnh iMa_Member vTen_Member iMa_AttKha ngoi:

Kha ngoi iMa_Att

Bng tham chiu tblAttribute Kiu int varchar varchar Kch thc 4 20 100 Kch thc 4 4 4

Kha ni iMa_ Att P x U M L x x x x x F

Bng tblProfile: Thuc tnh iMa_Profile vTen_Profile vMo_Ta

Bng tblChuc_Nang_Profile: Thuc tnh Kiu iStt_Chuc_Nang int iMa_Profile int iMa_Quyen intKha ngoi:

P x

U x

M x x x

L x x x

F x x

Kha ngoi iMa_ Profile iMa_Quyen

Bng tham chiu tblProfile tblQuyen

Kha ni iMa_ Profile iMa_Quyen

M t rng buc ton vn3: Kha ni: (S) R1-01: id(tblChi_Tiet_Group) = iStt_Chi_Tiet (S) R1-02: id(tblChi_Tiet_Template) = iStt_CTTemplate (S) R1-03: id(tblRole) = iMa_Role3

- (S) : rng buc s c h qun tr c s d liu kim tra. - (I) : rng buc s c kim tra mc giao din. - (T) : rng buc s c thay th bng trigger.

77

(S) R1-04: id(tblGroup) = iMa_Group (S) R1-05: id(tblQuyen) = iMa_Quyen (S) R1-06: id(tblTemplate) = iMa_Template (S) R1-07: id(tblUser) = iMa_User (S) R1-08: id(tblCurrentConnect) = vServer (S) R1-09: id(tblAttribute) = iMa_Att (S) R1-10: id(tblCube) = iMa_Cube (S) R1-11: id(tblDatabase) = iMa_DB (S) R1-12: id(tblDimension) = iMa_Dim (S) R1-13: id(tblChi_Tiet_Role_Member) = iStt_Chi_Tiet (S) R1-14: id(tblMember) = iMa_Member (S) R1-15: id(tblProfile) = iMa_Profile (S) R1-16: id(tblChuc_Nang_Profile) = iStt_Chuc_Nang Rng buc v min gi tr: (I) R2-01: tblTemplate_Detail.iDefault in (0,1). (I) R2-02: tblTemplate.vLoai in (public, private). (I) R2-03: tblTemplate.vStatus in (normal, restricted). (I) R2-04: tblTemplate_Detail.iActive in (0,1). Kha ngoi: (S) R3-01: tblRole[vTen_Role] tblGroup[vTen_Group] (S) R3-02: tblChi_Tiet_Group[iMa_User] tblUser[iMa_User] (S) R3-03: tblChi_Tiet_Group[iMa_Group] tblGroup[iMa_ Group] (S) R3-04: tblUser[iMa_Profile] tblProfile[iMa_ Profile] (S) R3-05: tblMember[iMa_Att] tbl Attribute[iMa_ Att] (S) R3-06: tblChi_Tiet_Role_Member[iMa_Member] tblMember (S) [iMa_ Member] (S) R3-07: tblChi_Tiet_Role_Member[iMa_Role] tblRole[iMa_ Role] (S) R3-08: tblTemplate[iMa_Cube] tblCube[iMa_ Cube] (S) R3-09: tblChi_Tiet_Template[iMa_User] tblUser[iMa_User] (S) R3-10: tblChi_Tiet_Template[iMa_Template] tblTemplate[iMa_Template] (S) R3-11: tblChi_Tiet_Template[iMa_Quyen] tblQuyen [iMa_ Quyen] (S) R3-12: tblChuc_Nang_Profile[iMa_ Profile] tblProfile [iMa_ Profile] R3-13: tblChuc_Nang_Profile[iMa_ Quyen] tblQuyen [iMa_ Quyen] (S) R3-14: tblAttribute[iMa_Dim] tblDimemsion[iMa_ Dim] (S) R3-15: tblDimemsion[iMa_Cube] tblCube [iMa_Cube]

78

(S) R3-16: tblCube [iMa_DB] tblDatabase[iMa_DB] (S) R3-17: tblCurrentConnect [iMa_DB] tblDatabase[iMa_DB] (S) R3-18: tblQuyen[iParent] tblQuyen [iMa_Quyen] Rng buc gia cc thuc tnh trong mt bng: (T) R4-01: tblTemplate[iParent] tblTemplate[iMa_Template]CREATE TRIGGER trg_Template_delete ON tblTemplate FOR DELETE AS DECLARE @iMa_Template INT SELECT @iMa_Template = iMa_Template FROM deleted DELETE FROM tblTemplate WHERE iParent = @iMa_Template ;

Rng buc gia cc thuc tnh, cc b ca nhiu bng: (T) R5-01: tblTemplate[iOwner] tblUser[iMa_User]CREATE TRIGGER trg_User_delete ON tblUser FOR DELETE AS DECLARE @iMa_User INT SELECT @iMa_User = iMa_User FROM deleted DELETE FROM tblTemplate WHERE iMa_Template in ( SELECT DISTINCT tblTemplate.iMa_Template FROM tblTemplate WHERE (tblTemplate.iOwner = @iMa_User)) ;

5.1.2.2 Kin trc module:

79

H thng OLAP

Phn h Administrator

Phn h Designer

Phn h Custom User

5.1.2.3 H thng giao din:H thng giao din phn h Administrator:

Hnh 39: Mn hnh chnh phn h administrator

80

Hnh 40: Mn hnh chc nng Copy Rights

Hnh 41: Mn hnh chc nng Active cube

Hnh 42: Mn hnh chc nng Assign cube to group

81

Hnh 43: Mn hnh chc nng Assign user to cube

Hnh 44: Mn hnh chc nng List user

82

Hnh 45: Mn hnh chc nng Assign Groups

Hnh 46: Mn hnh chc nng Assign Users

Hnh 47: Mn hnh chc nng Import cube

83

Hnh 48: Mn hnh chc nng Assign rights to profile

Hnh 49: Mn hnh chc nng Schedule

84

Hnh 50: Mn hnh chc nng Setting Connection

H thng giao din phn h Designer:

Hnh 51: Mn hnh chnh phn h designer

85

Hnh 52: Mn hnh chc nng Design template

Hnh 53: Mn hnh chc nng Export template

86

Hnh 54: Mn hnh chc nng Assign template to user

H thng giao din phn h Custom User:

Hnh 55: Mn hnh chnh phn h custom user

87

5.2. Ci t, lp trnhKin trc h thngMS SQL Server 2005 Analysis Service Windows Server 2003 Web server IIS

Ngn ng lp trnhASP.NET C#

C s d liu:MS SQL Server 2005

88

nh gi, bn lun v kt quChi tit cc cng vic tin hnh Tm hiu cc ti liu v cng ngh OLAP, Data Warehouse Kin trc cc thnh phn OLAP v cch xy dng chng trong MS SQL Server Analysis Service (SSAS) Tm hiu v s dng component Pivot Table, PivotChart trong Excel Tm hiu v s dng cc th vin lp trnh lin quan n SSAS: MDX, AMO, SMO, ADOMD.NET, ... Tm hiu ngn ng ASP.NET v cc th vin lin quan phc v cho vic lp trnh Xy dng cng c h tr phn tch d liu

Lm c Nm c nn tng l thuyt v OLAP, Data Warehouse, SSAS, ... Vit ng dng hon thin hu ht cc chc nng ra ban u Giao din thn thin vi ngi dng C nghin cu tm hiu, b sung thm cc tnh nng mi vo chng trnh sao cho ph hp vi nhu cu thc t v thun tin hn cho ngi s dng.

Cha lm c Chc nng cho ngi dng save li Local Cube nh trong Pivot Table.

89

Hng gii quyt Nhng iu hc c t ti Kin trc nn tng ca cng ngh OLAP v Data Warehouse S dng thnh tho hn ngn ng lp trnh ASP.NET v cc cng c ca MS SQL Server 2005 Kh nng c hiu ti liu ting Anh

K nng lm vic nhm : Phn chia cng vic mt cch c th, r rng Tun th cc nguyn tc, cc chun ra

c tnh cn c, t m trong qu trnh kim th, pht hin v sa li ca chng trnh.

90

Kt lun - Hng pht trinCc kt qu t c1. V l thuytNm c nhng kin thc nn tng v DataWarehouse v cng ngh OLAP Hiu v kin trc cc thnh phn trong MS SQL Server Analysis Service (SSAS) v quy trnh thit k cc thnh phn ny Hiu v component Pivot Table trong Excel v cch s dng C kin thc v cc th vin lp trnh lin quan n SSAS: DSO, MDX, AMO, ADOMD.NET, ...

2. V thc nghimCi t Xy dng 1 cng c tng i hon chnh trn nn Web h tr phn tch d liu cho cc ng dng OLTP. Cng c ny hon ton c lp vi d liu ca ngi dng.

Nhng ng gp mi C h thng template gip ngi dng d dng hn trong qu trnh xem v phn tch d liu C chc nng Import, Export template, d liu,... phc v cho nhu cu chuyn i gia cc h thng khc nhau Tm hiu, b sung thm cc tnh nng mi vo chng trnh sao cho ph hp vi nhu cu thc t v thun tin hn cho ngi s dng.

91

Hng pht trin Data Mining

92

Danh mc ti liu tham khoTing Anh: [1] Reed Jacobson (2006), Microsoft SQL Server 2005 Analysis Services Step.By.Step, MS.Press. [2] Robert Vieira (2007), Professional SQL Server 2005 Programming, Wiley Publishing. [3] Edward Whalen (2007), Microsoft SQLServer2005 Administrators Companion, MS.Press. Ting Vit: [4] Nguyn Thanh Bnh (2002), Kho d liu v h h tr quyt nh, i hc Hu

93