Chapter 4:
1
Data Warehouse:
◦ Lưu trữ dữ liệu khổng lồ, có yếu tố lịch sử
◦ Nguyên tắc:
Chỉ thêm (Insert)
Không chấp nhận Delete, update (Đặc biệt là các dimension)
(vì có thể thay đổi tính nhất quán của dữ liệu phân tích, có thể cho kết
qua sai lệch trong phân tích)
Giải quyết thay đổi dữ liệu lịch sử: Sử dụng Slowly
Changing Dimensions
03/22/21
2
LOAD
DW
LOAD
03/22/21
3
Giúp quản lý việc thay đổi dữ liệu của chiều
Có 3 loại:
◦ Type 1: Không cần lưu lại lịch sử thay đổi, ghi chồng (overwrite)
◦ Type 2: (dữ liệu lịch sử hết hiệu lực) là loại chiều cần lưu lại lịch
sử tạo ra một dịng mới với cùng khố tự nhiên nhưng khác
khố đại diện. Lúc đó, chỉ cần thay đổi tham chiếu từ bảng fact.
◦ Type 3: (dữ liệu lịch sử còn hiệu lực): Các giá trị lịch sử vẫn còn
hiệu lực sử dụng đồng thời với các giá trị mới tạo thêm các cột
mới để lưu vết
4
Type 1
DW
5
Type 2
6
Type 3
7
Khóa đại diện (Surrogate Keys)
◦ Integer keys
◦ Artificial Keys
◦ Non-intelligent Keys
◦ Meaningless Keys
Surrogate Keys: Không cho biết thông tin về record
hiện diện
8
Lợi ích:
◦ Làm vùng đệm cho những thay đổi các thao tác
◦ Tiết kiệm không gian
◦ Kết nối nhanh các table
◦ Giải quyết vấn đề dữ liệu chiều có thay đổi
9
2 Thời điểm thực hiện:
Initial Load
◦ Thực hiện dễ dàng
Subsequent Load
◦ Tương đối phức tạp
10
Initial Load
Đơn giản
Ví dụ:
natural key
surrogate key
natural key
Subsequent
Load (Refresh)
Mỗi giá trị khóa tự nhiên được so sánh với khóa tự nhiên đang tồn tại
trong bảng chiều
Nếu khơng tồn tại: Gán thêm một khóa đại diện mới
Ngược lại:
So sánh trên từng thuộc tính
Nếu khơng thay đổi nào thì bỏ qua
Nếu có thay đổi : xác định một khóa đại diện mới (Type 2
change, đánh dấu dòng hiện tại là hết hiệu lực, thêm dòng mới
với khóa đại diện mới phát sinh)
12
Subsequent Load: LOOK UP Tables
LOOK UP tables: Ánh xạ giữa NK & SK
Production key
Surrogate Key
Prod1
1
Prod2
2
Prod3
3
Prod4
4
Prod5
5
Thực tế, dữ liệu được thay đổi liên tục
DW cũng cần phải được đáp ứng tương ứng
Khó khăn đối với hệ thống ETL truyền thống: Tạo nên
thời gian chết của kho dữ liệu trong quá trình thực hiện
Giải pháp:
Tăng tầng suất cập nhật dữ liệu (dễ, chi phí thấp)
Cập nhật từng phần nhỏ
Cập nhật từng phần nhỏ và xoay vòng
14