
Bài giảng Kho dữ liệu và kinh doanh thông minh - Bài 6: Tối ưu hóa
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Kho dữ liệu và kinh doanh thông minh - Bài 6: Tối ưu hóa KHO DỮ LIỆU VÀKINH DOANH THÔNG MINH Bài 6: Tối ưu hóa Nội dung Phân mảnh/Partitioning Kết nối/Joins View lưu trữ/Materialized Views 2 Phân mảnh/Partitioning• Chia dữ liệu thành các đơn vị vật lý có thể quản lý riêng biệt• Mức chi tiết/Granularity và mức phân mảnh/partitioning là nhân tố chính để đạt hiệu quả của warehouse• Câu hỏi không phải là có nên dùng phân mảnh không mà là sử dụng nó thế nào 3 Phân mảnh• Tại sao phân mảnh? – Tạo sự dễ dàng trong quản lý dữ liệu – Các đơn vị vật lý nhỏ hơn cho phép • Tạo chỉ mục không tốn kém • Duyệt tuần tự khi cần • Dễ tổ chức lại • Dễ khôi phục • Dễ giám sát 4 Phân mảnh• Trong DW, phân mảnh được sử dụng để cải tiến: – Hiệu năng truy vấn nghiệp vụ, nghĩa là tối thiểu hóa số dữ liệu phải duyệt qua – Khả năng sẵn dùng của dữ liệu, thí dụ việc lưu dự phòng/khôi phục có thể thực hiện đối với từng mảnh – Điều hành CSDL, thí dụ thêm cột, lưu trữ, tạo lại index, tải các bảng dữ liệu 5 Phân mảnh• Có thể tiếp cận theo các cách sau: – Phân mảnh dữ liệu với dữ liệu thường được phân mảnh bởi • Ngày tháng/Date • Nghiệp vụ/Line of business • Địa lý/Geography • Đơn vị tổ chức/Organizational unit • Hay kết hợp của các nhân tố trên – Phân mảnh phần cứng • Làm cho dữ liệu sẵn dùng ở các node xử lý khác nhau • Các tiến trình con có thể chạy ở các node đặc biệt 6 1. Phân mảnh dữ liệu• Các mức phân mảnh dữ liệu – Mức ứng dụng – Mức CSDL• Phân mảnh dữ liệu mức CSDL là hiển nhiên, nhưng ta cũng có thể phân mảnh mức ứng dụng – E.g., allows different definitions for each year • Important, since DWs span many years and as business • evolves DWs change, too • Think for instance about changing tax laws 7 1. Phân mảnh dữ liệu• Phân mảnh dữ liệu bao gồm: – Cắt các hàng của một bảng vào nhiều bảng khác, gọi là phân mảnh ngang – Cắt các cột của một bảng vào nhiều bảng khác, gọi là phân mảnh dọc 8 1. Phân mảnh dữ liệu• Phân mảnh ngang – Tập các bản ghi được chia thành các tập con không giao nhau – Định nghĩa: Tập các quan hệ Relations {R1,…, Rn} thể hiện phân mảnh ngang của quan hệ chính/Master-Relation R, nếu và chỉ nếu Ri R, Ri Rj=Ø and R= iRi, for 1≤ i, j ≤n – Theo thủ tục phân mảnh chúng ta có các giải pháp phân mảnh khác nhau • Range partitioning, list partitioning và hash partitioning 9 1. Phân mảnh ngang• Phân mảnh theo dải/range – Chọn sự phân mảnh các khóa khi nó nằm trong các dải giá trị nào đó – Sự phân mảnh có thể được thể hiện như một quan hệ rang buộc trên quan hệ chính/master-relation • Ri = σPi(R), với Pi là điều kiện phân mảnh. Điều kiện phân mảnh có thể chứa nhiều thuộc tính: – P1: Country = ‘Germany’ and Year = 2016 – P2: Country = ‘Germany’ and Year < 2016 – P3: Country ≠ ‘Germany 10 1. Phân mảnh ngang• Phân mảnh danh sách/List Partitioning – Một mảnh được gán cho một danh sách các giá trị • Nếu khóa của một hàng nằm trong danh sách, hàng đó thuộc phân mảnh – Thí dụ: tất cả các hàng với cột Country là Iceland, Norway, Sweden, Finland hay Denmark được phân mảnh vào các nước Scandinavian – Có thể được thể hiện như một ràng buộc đơn trên quan hệ chính • Điều kiện phân mảnh chỉ chứa 1. thuộc tính – P1: City IN (‘Hamburg’, ‘Hannover’, ‘Berlin’) – P2: City IN (DEFAULT) thể hiện các bộ không được nhóm vào P1 11 1. Phân mảnh ngang• Phân mảnh theo hàm băm – Giá trị của hàm băm xác định các thành viên của một mảnh • Thường được sử dụng trong các tiến trình xử lý song song • Cần chọn hàm băm sao cho đạt được sự cân bằng của dữ liệu – Với mỗi bộ t, của bảng R, hàm băm sẽ liên kết nó với một bảng phân mảnh Ri • Ri = {t1, …, tm/tj R và H(tj) = H(tk) for 1. ≤ j, k ≤ m} 12 1. Phân mảnh ngang• Trong DW, dữ liệu được phân mảnh bởi – Chiều thời gian • Periods, such as week or month can be used or the data can be partitioned by the age of the data • E.g., if the analysis is usually done on last months data the table could be partitioned into monthly segments – Một số chiều khác • If queries usually run on a grouping of data: e.g. each branch tends to query on its own data and the dimension structure is not likely to change then partition the table on this dimension – Kích thước bảng • If a dimension cannot be used, partition the table by a predefined size. If this method is used, metadata must be created to identify what is contained in each partition 13 1. Phân mảnh dọc• Phân mảnh dọc – Chia các cột thành các nhóm tạo bảng phân mảnh • Usually called row splitting • Row splitting creates one-to-one relationships between the partitions – Có thể sử dụng lưu trữ vật lý khác nhau. Thí dụ lưu các trường thường được sử dụng ở thiết bị khác với các trường ít được ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Kho dữ liệu Kinh doanh thông minh Kho dữ liệu Tối ưu hóa Quản lý dữ liệu Phân mảnh dữ liệu Phân mảnh ngangTài liệu có liên quan:
-
8 trang 295 0 0
-
Tóm tắt luận án tiến sỹ Một số vấn đề tối ưu hóa và nâng cao hiệu quả trong xử lý thông tin hình ảnh
28 trang 233 0 0 -
Giáo trình: Hệ quản trị cơ sở dữ liệu - Nguyễn Trần Quốc Vinh
217 trang 89 0 0 -
BÀI TẬP TỔNG HỢP - QUY HOẠCH TUYẾN TÍNH
3 trang 74 0 0 -
Giáo trình Tối ưu hóa - PGS.TS. Nguyễn Hải Thanh
187 trang 50 0 0 -
121 trang 43 0 0
-
Tổng hợp bài tập Tối ưu hoá: Phần 2
152 trang 39 0 0 -
Giáo trình tối ưu hóa - Chương 5
31 trang 39 0 0 -
CHỨC VÀ QUẢN LÝ DỮ LIỆU TRONG HỆ THỐNG THÔNG TIN KẾ TOÁN
trang 36 0 0 -
5 trang 36 0 0
-
14 trang 34 0 0
-
Giáo trình Tin học (Trình độ CĐ/TC) - Trường Cao đẳng Nghề An Giang
70 trang 33 0 0 -
Marketing Automation - 5 lợi ích nổi bật của các nền tảng tự động hóa Marketing
5 trang 33 0 0 -
Giáo trình tối ưu hóa - Chương 2
28 trang 32 0 0 -
Giáo trình tối ưu hóa - Chương 3
37 trang 31 0 0 -
Công nghiệp thực phẩm và quá trình tối ưu hóa: Phần 1
174 trang 31 0 0 -
Bài giảng Lý thuyết tối ưu - Phan Lê Na
181 trang 31 0 0 -
Bài giảng Mạng máy tính: Tổng quan về mạng máy tính - Nguyễn Hà Huy Cường
34 trang 31 0 0 -
Bài giảng Lập trình C#: Phần 2 - ĐH Phạm Văn Đồng
48 trang 30 0 0 -
Tổng hợp bài tập Tối ưu hoá: Phần 1
177 trang 30 0 0