Tải bản đầy đủ (.pptx) (20 trang)

Tiểu luận khai phá dữ liệu Data Cube A Relational Aggregation Operator Generalizing Group By, Cross Tab, Sub Totals

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (364.91 KB, 20 trang )

Data Cube: A Relational Aggregation Operator
Generalizing Group By, Cross Tab, Sub Totals
Giảng viên: PSG.TS. Hà Quang Thụy
Học viên: Vũ Dương Tùng
Nguyễn Trung Quân
Nội dung chính

Giới thiệu chung

Nhược điểm của GROUP BY

Toán tử Cube

Tính toán với Data Cube

Xây dựng và bảo trì Data Cube

Tổng kết
Giới thiệu chung
Quá trình phân tích dữ liệu bao gồm các bước:

formulating truy vấn dữ liệu từ nguồn dữ liệu lớn

extracting (trích rút) dữ liệu tổng hợp từ cơ sở dữ liệu ra file, bảng thông kê

visualizing (mô hình hóa) kết quả thành các dạng hình ảnh (biểu đổ, mầu sắc …). Các công cụ mô
hình hóa dữ liệu mô tả hình dáng, phạm vi, và những sự khác biệt rõ rệt

analyzing phân tích các kết quả truy vấn, đưa ra các truy vấn mới
Giới thiệu chung


Để hỗ trợ việc trích rút dữ liệu, SQL cung cấp các hàm chức năng:

COUNT ( )

SUM ( )

MIN ( )

MAX ( )

AVG ( )
o
Nhược điểm:
Các hàm trả về giá trị không chiều (zero – dimensional) hoặc một chiều (one – dimensional)
Nhược điểm của GROUP BY

Bằng việc sử dụng cấu trúc GROUP BY, SQL sẽ tạo bảng tổng hợp dữ liệu của nhiều
giá trị trong tập thuộc tính:
Nhược điểm của GROUP BY

Toán tử GROUP BY trong SQL không cho phép trực tiếp khởi tạo các biểu đồ gộp (kết
hợp tính toán nhiều danh mục)

Vấn đề thứ thứ hai liên quan đến Roll-ups và Drill-d owns, người sử dụng phải lưu lại
các mức độ kết hợp.
Nhược điểm của GROUP BY
Khắc phục:

Xây dựng các cột (column) mới cho mỗi tổ hợp các thuộc tính kết hợp, điều này tuy khả
thi nhưng sẽ gây lãng phí tài nguyên khi tiến hành lưu trữ, tính toán.


Đưa vào giá trị “ALL”, giá trị “ALL” sẽ trình bày toàn bộ các giá trị tồn tại trong một cột
nào đó mà không lo mất dữ liệu khi Roll-up, Drill-down.
Nhược điểm của GROUP BY
Nhược điểm của GROUP BY
Toán tử Cube

Toán tử CUBE xây dựng một bảng chứa tất cả các giá trị tổng hợp. Bộ giá trị tổng hợp
được mô tả dưới dạng: ALL, ALL, ALL, , ALL, f(*) – trong đó f(*) là một hàm kết hợp.
Toán tử Cube

0D data cube: là 1 điểm

1D data cube: là một cột, có kèm điểm

2D data cube: là một bảng biểu, một miền, 2
cột, 1 điểm.

3D data cube: là một khối giao bởi 3 khối 2D
data cube
Toán tử Cube

Giá trị ALL:

Mỗi giá trị ALL mô tả tập giá trị đã được tính toán
Toán tử Cube
Tính toán với Data Cube
Để hỗ trợ cho việc xử lý, tính toán các thông tin Data Cube, chúng ta quan tâm đến việc truy
nhập vào các thành phần dữ liệu trong Data Cube.


Chúng ta xét đến chỉ mục của giá trị (index of value) – được coi là khoảng cách từ giá trị hiện tại tới giá trị
kỳ vọng (expected value). Trong một tập gồm N giá trị, một kỳ vọng của mỗi đối tượng là 1 Sum.
Với 1D: index(v
j
)= v
j
/(∑
j
v
j
)
Với 2D, ta có:
SELECT v
FROM cube
WHERE row = :i
AND column = :j
Hay: cube.v(:i, :j)
Tính toán với Data Cube

Để làm việc với Data Cube:

Sắp xếp bảng dữ liệu các thuộc tính được kết tập

Tính toán trên bảng dữ liệu vừa sắp xếp với các hàm SQL
Tính toán với Data Cube

Nguyên tắc tính toán với Data Cube:

Để giảm bớt lượng dữ liệu di chuyển và chi phí sử lý, kết hợp ưu tiên xử lý tại mức hệ thống
(system level) thấp nhất có thể.


Nếu có thể, sử dụng mảng hoặc bảng băm để đưa cột dữ liệu kết hợp vào bộ nhớ, sắp xếp các giá
trị theo từng mảng hoặc từng mục bảng băm.

Nếu giá trị kết hợp là các chuỗi dài, trong một vài trường hợp có thể băm các giá trị để ánh xạ từng
chuỗi tới 1 số nguyên nhằm làm cho các giá trị kết hợp trở nên ngắn hơn. Khi có một giá trị mới, sẽ
sinh ra một số nguyên mới.
Tính toán với Data Cube

Nếu giá trị kết hợp quá lớn để đưa vào bộ nhớ, tiến hành phân loại hoặc băm kết hợp để tổ chức
dữ liệu theo giá trị và sau đó kết hợp với chuỗi quét của dữ liệu phân loại.

Nếu nguồn dữ liệu nằm trên nhiều đĩa hoặc node, sử dụng tính song song để kết hợp, sau đó tổng
hợp lại thành một bản dữ liệu tổng hợp duy nhất.
Xây dựng và bảo trì Data Cube
Toán tử Cube và RollUp được hỗ trợ từ SQL server 6.5
Tổng kết

Toán tử Cube cho phép thực hiện các nội dung sau trong phân tích dữ liệu: tổng hợp,
phân nhóm, lập biểu đồ, roll-ups, drill-downs, cross tabs

Cube giúp cho việc tính toán trên một vùng dữ liệu lớn trở nên đơn giản hơn.
Xin cám ơn!

×