Mụ hỡnh dữ liệu đa chiều

Một phần của tài liệu Công nghệ xử lý phân tích trực tuyến trong việc trợ giúp quyết định (Trang 36)

Trong cỏch tiếp cận này, một mụ hỡnh dữ liệu đa chiều đƣợc xõy dựng trờn một tập cỏc chiều. Gọi D = D1, D2,..,Dx là tập cỏc chiều; M = M1, M2,..,My là tập cỏc độ đo; C = C1, C2,..,Cz là tập cỏc khối dữ liệu. Mỗi chiều tồn tại một tập cỏc mức, một chiều là một mắt lƣới của cỏc mức, mối quan hệ phõn mức giữa cỏc chiều thành phần đƣợc chia ra thành cỏc miền phõn mức trờn chiều, một miền phõn cấp chiều là một tập cỏc chiều thành phần, đƣợc tổ chức trong cỏc mức phõn cấp, tƣơng ứng với cỏc mức khỏc nhau, điều này cho phộp xem xột một giản đồ chiều nhƣ một tập cỏc mức cục bộ cú thứ tự. Mỗi đƣờng dẫn trong lƣới của một phõn cấp chiều bắt đầu từ mức giới hạn cao nhất dọc theo lƣợc đồ chiều đến thấp nhất (bắt đầu ở mức gốc và kết thỳc ở mức lỏ) gọi là đƣờng dẫn chiều, núi cỏch khỏc đƣờng dẫn chiều là danh sỏch tuyến tớnh cỏc mức đƣợc sắp xếp. Kết quả là cỏc chiều với bất ký độ phức tạp nào trong cấu trỳc cú thể đƣợc mụ tả trong mụ hỡnh này.

Vùng N-ớc All T.Phố Địa lý Quí Năm All Tháng Tuần Ngày Thời gian Nhóm SP Sản phẩm All Mặt hàng Sản phẩm Hỡnh 8. Cỏc chiều và phõn cấp chiều

all 2003 Q1.2003 1.2003 2.2003 3.2003 T1.2003 T5.2003 T9.2003 1.1.2003 6.1.2003 1.2.2003 3.2.2003 3.3.2003

Hỡnh 9. Một thể hiện của chiều thời gian

1.1 Cỏc khỏi niệm về chiều

Ta cú cỏc định nghĩa sau về chiều trong CSDL đa chiều [13,12]:

Định nghĩa 1: Miền phõn cấp chiều

Miền phõn cấp của một chiều D là một tập khỏc rỗng, ký hiệu là dom(D) và dom(D)= all dm1,.., dmn, trong đú mỗi phần tử chiều dmi là mục dữ liệu bờn trong một chiều.

Cú thể sử dụng đồ thị thể hiện mối quan hệ miền phõn cấp kớ kiệu GM = (V,E), trong đú:

- V = dom(D): tập cỏc đỉnh thể hiện phõn cấp cỏc chiều.

- E  dom(D) x dom(D), với  (dmi,dmj)  E: dmi  dmj là cỏc cạnh thể hiện quan hệ cú thứ tự theo phõn cấp.

- Hai toỏn tử +,-:  dmi dom(D) ta cú:

o - (dmi) = dmj dom(D): dmj M dmi

o + (dmi) = dmk  dom(D): dmi M dmk

- Phần tử gốc (all): (! all dom(D))(dm  dom(D): dm M all) - Phần tử lỏ: (dmi dom(D))(dmj dom(D), i j: dmi M dmj) Vớ dụ hỡnh vẽ thể hiện một cõy của chiều thời gian, ta cú:

- dom(Thời gian) = all, 2003, Q1.2002,.., 3.3.2003 - all M 2003, 2003 M Q1.2003, ..., 3.2003 M 3.3.2003

- - (2003) = all; +(2003) = Q1.2003, T1.2003, T5.2003, T9.2003

Giả sử Levels(D) = All  (l1,..,lh) với h  N , là tập cỏc mức của chiều D, Trong đú:

- Tập con {dom(l1),..,dom(lh)} là bộ phận của dom(D) - Mức gốc (All): !All  Levels(D): dom(All) = all

- Mức lỏ: {li Levels(D) |  dmj dom(li): dmj là phần tử lỏ}

Vớ dụ chiều thời gian cú Levels(Thời gian) = {All,Năm,Quớ,Thỏng,Tuần,Ngày} và: - dom(All)= {all} - dom(Năm)={2003} - dom(Quớ)= {Q1.2003} - dom(Thỏng)= {1.2003, 2.2003, 3.2003} - dom(Tuần)={T1.2003, T5.2002, T9.2003} - dom(Ngày)= {1.1.2003, 6.1.2003, 1.2.2003, 3.2.2003, 3.3.2003}

Định nghĩa 3: Lược đồ chiều

Lƣợc đồ của một chiều D, ký hiệu là Dschema(D) = Levels(D), L là tập cỏc mức bộ phận cú thứ tự (cỏc mức đƣợc sắp xếp)

- Levels(D) là tập cỏc mức chiều

- L là mối quan hệ cú thứ tự toàn bộ cỏc mức và thoả món điều kiện: li L lj nếu (dmt dom(li)) và (dmu dom(lj)): dmt L dmu

Vớ dụ: Dschema(Địa lý)={All L Nƣớc, Nƣớc L Vựng, Vựng L Thành phố}

Định nghĩa 4: Đường dẫn chiều

Đƣờng dẫn trong một lƣợc đồ chiều là danh sỏch tuyến tớnh cỏc mức đƣợc sắp xếp. Đƣợc định nghĩa nhƣ sau:

 li, lj Levels(D) ta cú: path(li, lj) =

Định nghĩa 5: Phõn cấp chiều

Phõn cấp chiều đƣợc định nghĩa bởi đƣờng dẫn chiều path(All,llỏ) trong lƣợc đồ của chiều D, bắt đầu ở mức gốc và kết thỳc ở mức lỏ. Giả sử H(D) = {h1,.., hm}, với (adsbygoogle = window.adsbygoogle || []).push({});

li L lj nếu li L lj

li L lt,.., lu L lj nếu lt,.., lu  Levels(D): li L lt,.., lu L lj

m  N là tập cỏc phõn cấp của chiều D. Trƣờng hợp m = 1 thỡ chiều cú cấu trỳc phõn cấp đơn, cỏc trƣờng hợp khỏc gọi là chiều cú cấu trỳc đa phõn cấp.

Định nghĩa 6: Cỏc toỏn tử chiều

Cú hai toỏn tử chiều, giả sử đặt tờn cho hai toỏn tử đú là ancestor và descendant, hai toỏn tử này để đƣa ra cỏc khả năng dẫn hƣớng dọc theo một cấu trỳc chiều, đƣợc định nghĩa một cỏch đệ quy nhƣ sau:

 li, la, ld Levels(D) và dm  dom(li)  dom(D): ancestor (dm, la,D) = Trong đú dm- = ancestor (dm, lp, D): lpL li decendant (dm, ld,D) = Trong đú dm+ = decendant (dm, lp, D): lpL l Vớ dụ theo hỡnh vẽ trờn ta cú:

- ancestor (Q1.2003, Năm, Thời gian) = 2003

- decendant (Q1.2003, Thỏng, Thời gian) = 1.2003, 2.2003, 3.2003

1.2 Độ đo

Độ đo (measure) là đối tƣợng phõn tớch chớnh trong mụ hỡnh CSDL đa chiều [12,13].

Định nghĩa 1: Lược đồ độ đo

Một lƣợc đồ độ đo M là một bộ đụi của cỏc bảng Sự kiện và phộp toỏn đƣợc ỏp dụng cho bảng sự kiện. Ký hiệu lƣợc đồ độ đo Mschema(M)=<Fname,O> trong đú:

- Fname là tờn của bảng sự kiện tƣơng ứng

- O  {Sum, Count, Max, Min}  {None, Composite} là phộp toỏn đƣợc ỏp dụng cho một bảng sự kiện riờng biệt, trong đú: Composite là một toỏn tử (vớ dụ tớnh trung bỡnh) mà độ đo khụng thể đƣợc sử dụng để tự động nhận đƣợc Khụng xỏc định – nếu path(la, li) =  dm-  dom(la): dm-  -(dm)  - nếu la L li ancestor (dm-, la, D) - trong trƣờng hợp khỏc Khụng xỏc định – nếu path li, ld) =  dm+  dom(ld): dm+  +(dm)  - nếu li L ld decendant (dm+, ld, D) - trong trƣờng hợp khỏc.

từ cỏc tổng hợp ở mức cao hơn. Cũn độ đo None là cỏc độ đo khụng đƣợc tớnh toỏn gộp. Trong trƣờng hợp đú độ đo là sự kiện.

Định nghĩa 2: Miền của độ đo

Giả sử cho V là một miền giỏ trị của độ đo (V cú thể là tập số N hoặc Z, hoặc R). Miền của độ đo M là một tập con của V ta ký hiệu là dom(M)  V.

1.3 Khối dữ liệu

Một khối đa chiều là đƣợc xõy dựng trờn một tập cỏc chiều và một tập cỏc độ đo. Khối đa chiều bao gồm một tập cỏc ụ. Mỗi ụ là giao của giữa tập cỏc chiều thành phần và cỏc giỏ trị của độ đo. Hơn nữa cỏc ụ đƣợc nhúm lại thành cỏc nhúm, mỗi nhúm thể hiện ỏnh xạ từ cỏc miền x-bộ của cỏc mức độ đo (biến độc lập) tới cỏc miền y-số của cỏc độ đo (biến phụ thuộc). Vớ dụ khối dữ liệu đa chiều nhƣ sau:

Thời gian 10 15 20 12 50 1 2 3 4 5 S n p h m Địa lý Hà nội Hải phòng TP.HCM Quạt TIvi Đầu Video Radio Băng

Hỡnh 10. Khối bỏn hàng gồm cỏc chiều: Địa lý, Sản phẩm, Thời gian và bảng sự kiện Bỏn hàng

Cho tập cỏc chiều D = D1, D2,..,Dx; x  N và một tập cỏc độ đo: M = M1, M2,..,My; yN. Ta cú [12,13]:

Định nghĩa 1: Lược đồ khối

Một lƣợc đồ khối là một bộ CSchema(C) = Cname, Dschemas, MSchemas : - Cname: là tờn của khối

- Dschemas là cỏc lƣợc đồ của x chiều, đƣợc ký hiệu bởi: Dschemas=Dschema(D1), .., Dschema(Dx)

- Mschemas là cỏc lƣợc đồ của y độ đo, đƣợc ký hiệu bởi Mschemas =

Mschema(M1), .., Mschema(My) 

Định nghĩa 2: Miền của khối

Cho một hàm f: dom(D1)* ..* Dom(Dx)* dom(M1)*..*dom(My) -> {True, False} Miền của khối đƣợc ký hiệu là dom(C) = {c1,..,ck}, kN đƣợc xỏc định nhƣ sau: dom(C) = {c = (dms,fms) | dmsdom(D1)*..*dom(Dx), fms  dom(M1)*..* dom(My): f(dms,fms) = True}

1.4 Cỏc phộp toỏn trong mụ hỡnh đa chiều (adsbygoogle = window.adsbygoogle || []).push({});

Cỏc phộp toỏn trong khối đa chiều bao gồm cỏc phộp toỏn: phộp toỏn nhúm, phộp toỏn cuộn lờn, phộp toỏn khoan sõu [12,13].

Giả sử một khối C đƣợc tạo thành bởi x (xN) chiều D1,..,Dx, và y (yN) độ đo M1,..,My

Định nghĩa 1: (Phộp nhúm)

Nhúm là một bộ ba G = Gname, Gschemas(G), dom(G). Trong đú: - Gname: Là tờn của nhúm

- Gschema = Glevels(G), GMschema(G):

o Glevels(G) = lD1, lD2,.., lDx  Levels(D1).. Levels(Dx) là một x - bộ cỏc mức của x - chiều D1,..,Dx với x N.

o GMschemas(G) = Mschema(M1),.., Mschema(My) là một y - bộ lƣợc đồ độ đo của y - độ đo M1,.., My với y  N.

- dom(G) = c = dms, fms  dom(C) | dms  dom(lD1 *..* dom(lDx), fms 

dom(M1) *..* dom(My)

Giả sử hi là một số của cỏc mức của mỗi chiều Di (1  i  x). Tập hợp cỏc nhúm trờn một khối C là Groupbys(C) = G1,..,Gp, p =  hi

Định nghĩa 2: (Cỏc toỏn tử khối)

Cú ba toỏn tử khối dẫn hƣớng cơ bản là: Phộp nhẩy (Jumping), phộp cuộn lờn (RollingUp), khoan sõu xuống (DrillingDown) trong một khối dữ liệu C, tƣơng ứng với một chiều Di đƣợc định nghĩa nhƣ sau: Cho một nhúm Gc, đƣợc kết hợp với một mức lc của một chiều Di, và ba mức khỏc là lj, lr, ld Levels(Di).

- Toỏn tử nhẩy: jumping(Gc, lj, Di) = Gj = Glevels(Gj), GMschema(Gj). Trong đú:

o GMschema(Gj) = GMschema(Gc) và Glevels(Gj)

o Glevels(Gj)(i) = lj, Glevels(Gj)(k) = Glevels(Gc)(k),  k <> i - Toỏn tử cuộn lờn:  dm  dom(lc), Gr = jumping(Gc, lr, Di):

rollingUp(Gc, dm, lr, Di) = Grsub = Gschema(Grsub), dom(Grsub)

Trong đú:

o Gschema(Grsub) = Gschema(Gr)

o dom(Grsub) = cr  dom(Gr) |  c  dom(Gc): c.dms(i) = dm, cr.dms(i) = ancestor (dm, lr, Di), cr.dms(j) = c.dms(j), j <> i

- Toỏn tử khoan sõu: dm  dom(lc), Gd = jumping(Gc, ld, Di): drillingdown(Gc, dm, ld, Di) = Gdsub = Gschema(Gdsub), dom(Gdsub)

Trong đú:

o Gschema(Gdsub) = Gschema(Gd)

o dom(Gdsub) = cd dom(Gd) |  c  dom(Gc): c.dms(i) = dm, cd.dms(i) = desendant (dm, lr, Di), cd.dms(j) = c.dms(j), j <> i

Một phần của tài liệu Công nghệ xử lý phân tích trực tuyến trong việc trợ giúp quyết định (Trang 36)