You are on page 1of 15

I HC QUC GIA TP.

HCM TRNG I HC KINH T - LUT KHOA TIN HC QUN L ----------

CHUYN PHN TCH S LIU.

Gio vin hng dn: Ths. H Trung Thnh. Thnh vin nhm : K08406105x K084061056 K084061110 K08406xxxx Cao Thin Ho Nguyn Quang Hin V Vn Thnh Chu Thanh Tng

M U

Microsoft SQL Server OLAP Services l mt dch v cung cp cho ngi dng kin trc phc v cho vic lu tr v truy cp d liu di hnh thc a chiu.Nhng d liu c lu di dng a chiu ny c th c tng hp, t chc v lu tr nhm nhanh chng p ng c nhng yu cu truy vn ca ngi s dng.V thc hin nhng truy vn cho hnh thc d liu ny, Microsoft cung cp cho chng ta ngn ng truy vn MultiDimensional eXpressions (MDX). MDX chnh l ngn ng y c th h tr ngi s dng thc hin vic truy vn trn cc d liu khi, v kh nng truy vn ca ngn ng ny cng chnh l trng tm m tiu lun ny quan tm n. c th minh ha y v thuyt phc cc kh nng , nhm s s dng CSDL Northwind mu ca Microsoft v khi d liu NorthwindDW do nhm 15 lp K07406 trng i hc Kinh t - Lut xy dng trc y.

1.

Gii thiu. 1.1. Gii thiu ngn ng MDX. Ngn ng MDX (MultiDemensional eXpression) l ngn ng truy vn cho c s d liu a chiu, n tng t ngn ng SQL cho c s d liu quan h, tuy nhin y l ngn ng tnh ton v th n tng t c c php ging cng thc ca bng tnh. MDX do Microsoft gii thiu vo nm 1997 cng vi SQL Server 7.0 nhanh chng c cc nh pht trin chp nhn tr thnh chun cho h thng OLAP. T nm 2001 khi XMLA ra i MDX c m rng v h tr truy vn vi MDX (MDXML). Ngn ng MDX h tr mnh cho tnh ton trn khi d liu a chiu, n h tr vic truy cp d liu mt cch trc quan v d dng. Ngi dng c th trch xut d liu t cube vi s chiu bt k. MDX c th tr li c cc cu hi phc tp trong kinh doanh th gii thc nh: trong cc khu vc bn c nhiu sn phm nht u l dng sn phm bn chy nht ? . MDX c xy dng cho cc h thng phn tch d liu chnh v th n c th x l c nhng truy vn mt cch d dng. MDX c th x l d liu mt cch mm do, kt qu tr v ca MDX cng rt linh hot. Cc php truy vn phc tp trong SQL nh pivot c s dng mt cch d dng trong MDX. MDX khng h tr cc ngn ng nh ngha d liu (DDL) tuy nhin ngn ng thao tc d liu (DML) ca MDX c h tr thc thi mt s thao tc nh ngha d liu. Cu trc ca MDX ging nh SQL nhng m rng hn thao tc vi c s d liu a chiu. Cu truy vn MDX c cu trc nh sau :

SELECT

[m t v chiu th nht] , [m t v chiu th hai] [m t v khi d liu] [iu kin ct lp]

FROM WHERE Trong :

Mnh SELECT dng xc nh cc chiu ca tp hp kt qu. Mnh ny 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. Mnh FROM xc nh ngun d liu (cube) dng ly d liu. Mnh WHERE dng xc nh chiu ct d liu , nhm lc d liu u ra. Trong cu trc ca MDX v c php truy vn SQL ta nhn thy mt s im tng ng nh u c cc mnh SELECT, FROM, WHERE, vn c th cha cc subquery, tuy nhin chng c mt 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. 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. Thng tin t cc khi khc c th c tham kho theo tng gi tr bng cch dng hm LookupCube. 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
4

mc nh ca n. Mnh WHERE c th thay i tin trnh lc cho mt chiu no , gip tinh chnh d liu kt qu. 1.2. Son tho MDX vi SQL Server .

ng nhp vo SQL Server vi Server type l Analysis Services.

Click chn vo icon MDX to ra mt file son tho cu lnh MDX. File ny l file text v c phn m rng l *.mdx
5

Mn hnh Connect to Analysis Services hin ln, ta chn Server name v click connect tip tc.

Giao din lm vic vi MDX. Trong : Vng 1: l vng Metadata. Vng 2: l vng son tho MDX. Vng 3: l vng hin th kt qu t cu truy vn MDX. S lt v CSDL v Nh kho d liu mu dng thc hin cc v d. Trong qu trnh nghin cu v MDX, nhm s dng c s d liu Northwind cng vi kho d liu NorthwindDW do nhm 15 lp K07406 xy dng lm kho d liu mu v thc hin truy vn bng MDX trn kho d liu ny. Do trong phn ny, nhm xin m t li kho d liu ny.

2.

Hnh. Lt bng tuyt ca kho NorthwindDW.


7

Kho d liu s cha thng tin tng hp v nhng giao dch mua hng ca khch hng, bao gm thng tin khch hng, nhn vin, sn phm, nh cung cp, cng ty vn chuyn. D liu bn hng c lu tr theo thi gian, phc v cc yu cu v phn tch, thng k lin quan n vn bn hng ca nhng nh qun l c th a ra nhng quyt nh trong kinh doanh. 2.1. Cc bng chiu. Primary dimensions: DimTime (DateKey, Date, Month, Quarter, Year) DimCustomer (CustomerID, CompanyName, ContactName, Phone, Address, City, Region, Country) DimShipper (ShipperID, CompanyName, Phone) DimEmployee (EmployeeID, FullName, Title, BirthYear, HireYear, Phone, Address, City, Region, Country) DimProduct (ProductID, ProductName, Category, SupplierID, QuantityPerUnit, UnitPrice, UnitsInStock, UnitsOnOrder) -Secondary dimension: DimSupplier (SupplierID, CompanyName, Phone, Address, City, Region, Country) 2.2. Bng s kin. FactOrder (OrderID, ProductID, CustomerID, EmployeeID, ShipperID, OrderDate, RequiredDate, ShippedDate, UnitPrice, Quantity, Discount, Total). 3. Mt s hm thng dng trong MDX. 3.1. Hm CrossJoin(). Tch cc thnh vin hay cc b trong hai tp hp khc nhau. V d: cho bit s lng sn phm ca tng nhn vin bn c theo nm.
8

SELECT crossjoin([Dim Employee].[Full Name].members, [Dim Product].[Product Name]) on Columns, [Dim Time].[Year].members on Rows FROM [Cube_NorthwindDW] WHERE [Measures].[Quantity]

Kt qu:

3.2. Hm Filter(). Thu gn mt tp hp bng cch ch ly nhng phn t tha mn cc tiu ch no . C php : Filter (Set_Expression, Logical_Expression) V d: Cho bit tn cc sn phm c tng s lng ln hn 500 v nh hn 1000.
SELECT FILTER([Dim Product].[Product Name].MEMBERS, [Measures].[Quantity] >500 AND [Measures].[Quantity] <1000) ON COLUMNS, [Dim Time].[Year].MEMBERS ON ROWS FROM [Cube_NorthwindDW] WHERE [Measures].[Quantity]

Kt qu:

3.3. Hm Order(). Sp xp gi tr ca mt tp hp theo cc iu kin. C php : Numeric expression Order(Set_Expression, Numeric_Expression [ , { ASC | DESC | BASC | BDESC } ] )

String expression Order(Set_Expression, String_Expression [ , { ASC | DESC | BASC | BDESC } ] )

Input : Mt tp hp, mt biu thc lun l Mt biu thc tr v gi tr s/ chui Output : mt tp hp c sp sp theo mt tiu ch nh trc. ASC : sp xp theo th t tng dn DESC : sp xp theo th t gim dn V d: Hy sp xp tng s lng sn phm ca cc nm theo th t gim dn.
Select [Measures].[Quantity] on Columns, Order([Dim Time].[Year].members, [Measures].[Quantity],Desc) on Rows From [Cube_NorthwindDW]

Kt qu:

10

3.4. Hm TopCount() Sp xp mt tp hp th t gim dn v tr v s quy nh ca cc yu t c gi tr cao nht.

C php : TopCount (Set_Expression, Count, Numeric_Expression])

Input: Mt tp hp, mt biu thc lun l Mt con s xc nh s lng cc gi tr tr v Mt biu thc tr v gi tr s sp xp gi tr tr v Output : Mt tp hp cc yu t c gi tr cao nht theo quy nh. V d: Hy cho bit top 5 doanh thu theo thng.
Select [Measures].[Total] on Columns, TopCount([Dim Time].[Month].members, 5,[Measures].[Total]) on rows From [Cube_NorthwindDW]

Kt qu:

11

3.5. Hm ParallelPeriod() Tr v mt gi tr t mt khong thi gian trc trong cng mt v tr tng i theo mt gi tr quy nh cho trc . C php : ParallelPeriod( [ Level_Expression [ ,Index [ , Member_Expression ] ] ] )

Input : Mt tp hp, mt biu thc lun lun l Mt gi tr xc nh thi gian song song so snh Mt biu thc tr v mt n v(mt thnh vin) Output : Tr v gi tr ca thi gian song song theo quy nh Quy c: Gi tr mc nh Index = 1 3.6. Hm StrToMember(). Chuyn mt chui c nhp vo t tham s sang Member. Tr v cc gi tr theo quy nh ca mt biu thc a chiu (MDX), nh dng chui. C php : StrToMember(Member_Name [,CONSTRAINED]) Input : Mt biu thc chui gi tr quy nh c th, trc tip hoc gin tip, mt thnh vin. Ouput : member. Nu khng c c CONSTRAINED, tham s Member_Name c th cha mt vi mnh MDX, ngc li th ch duy nht mt member name c s dng. Constrained ny c to ra nhm trnh cho server khng b tn cng theo dng injection.

12

V d:
Select {strToMember('[Dim Employee].[Full Name].[Janet Leverling]')} on Columns, [Measures].[Total] on rows From [Cube_NorthwindDW]

Kt qu:

3.7. Hm IIf(). Tr v mt trong hai gi tr c xc nh bi mt php th logic . C php: IIf(Logical_Expression, Expression1, Expression2) Input : Mt biu thc logic Hai gi tr (biu thc a chiu) tr v Output : Mt trong hai gi tr tr v input V d: Vit cu MDX ghi ra nhn xt rng: nu tng doanh thu trong mt nm ln hn hoc bng 1,000,000 th hin th >=1,000,000. Ngc li hin th < 1,000,000
With Member NhanXet As IIF([Measures].[Total]>=1000000, ">=1,000,000","<1,000,000") Select From {[Measures].[Total],NhanXet}on Columns, [Dim Time].[Year].members on Rows [Cube_NorthwindDW]

13

Kt qu.

3.8. Hm Lag(). Tr 1 gi tr l 1 con s c th ch v tr trc 1 gi tr c xc nh ti u vo ca hm. (Index) C php : Member_Expression.Lag(Index) - Index : v tr mc xc nh bi mt h thng phn cp no . - Index = 0 : Tr v chnh bn than n. - Index = 1 : Tr v gi tr k trc - Index = -1 : Tr v gi tr k tip - Index = n : Tr v gi tr k -n
Select from Where [Dim Employee].[Full Name].[Laura Callahan].lag(1) on 0 [Cube_NorthwindDW] [Measures].[Total]

14

Hm Lead(index) cng l mt hm tng t vi Lag, tuy nhin ng vi cng mt gi tr Index th hai hm c chiu di chuyn ngc nhau. 4. Ti liu tham kho. [1] Th mc MDX (ti liu tham kho mn hc) _ ThS.H Trung Thnh. [2] Nghin cu cng ngh OLAP v ng dng _ Trn Vnh Tin c, Nguyn Ph Thnh. [3] p dng Data Warehouse trong phn tch thng tin v cc dch v gi tr gia tng trn in thoi_ Nguyn Lng Thi c. [4] n mn hc Phn tch s liu_ Nhm 15 (K07406). [5] http://bis.net.vn/forums/t/560.aspx [6] http://www.mosha.com/msolap/articles/MDXForEveryone.htm [7] http://www.youtube.com/watch?v=h1vjGEkLU0s&feature=related [8] http://www.iccube.com/support/documentation [9] http://technet.microsoft.com/en-us/library/ms145484.aspx 5. Kt lun. Ni dung ca tiu lun ny l mt ci nhn tng quan v kh nng truy vn v phn tch d liu ca ngn ng MDX. Tiu lun nu c rng MDX l g, cch trch xut, truy vn d liu t khi d liu a chiu bng MDX nh th no, cng vi mt s vn khc m nhm nghin cu rt ra c sau khi tham kho nhiu ngun ti liu v thc hnh. Khng ch ring trong cc CSDL qun l hng ha nh CSDL Northwind c dng minh ha, MDX cng c th c ng dng rng ri c th truy vn,trch xut d liu trong cc CSDL ca cc hot ng kinh doanh khc trong doanh nghip. C th ni MDX l mt cng c c lc h tr cho cc doanh nghip nhn nhn li ton din cc hot ng qua ca mnh, cng nh tm ra, d bo nhng xu th, nhng nhu cu mi trong tng lai c th n u nhp pht trin ca th trng, nm bt c ng lc cc c hi tim nng, l nhng iu mang yu t quyt nh trong thnh bi ca mt doanh nghip.
15

You might also like