Huy Bui
1,445
02-07-2022
Bảng chiều dimension cung cấp thông tin, ngữ cảnh cho bảng fact. Dù có quy mô nhỏ hơn fact nhiều lần, nhưng dimension là trọng tâm của Data Warehouse, vì nếu thiếu nó, các số liệu trong fact sẽ không mang lại nhiều ý nghĩa cho người dùng.
Khi có sự thay đổi trong một bản ghi của dimension, Data Warehouse phải cập nhật sự thay đổi đó.
Đây là phương thức thụ động. Khi có sự tứ thay đổi trên dimension, không có hành động nào xảy ra trên Data Warehouse. Giá trị chiều được giữ nguyên như tại thời thời điểm bản ghi được thêm vào lần đầu tiên.
Loại bảng chiều này hiếm khi được sử dụng.
Ghi đè dữ liệu cũ, không theo dõi dữ liệu lịch sử. Ví dụ:
Supplier_Key | Supplier_Code | Supplier_Name | Supplier_State |
---|---|---|---|
123 | ABC | Inda Co | HCM |
Khi Nhà cung cấp đổi địa điểm (Hồ Chí Minh -> Hà Nội). Dữ liệu được cập nhật như sau:
Supplier_Key | Supplier_Code | Supplier_Name | Supplier_State |
---|---|---|---|
123 | ABC | Inda Co | HN |
Ưu điểm: Dễ bảo trì.
Nhược điểm: Không kiểm tra được dữ liệu lịch sử.
Theo dõi dữ liệu lịch sử bằng cách tạo nhiều bản ghi cho một khoá tự nhiên trong bản chiều (phân biệt bằng khoá tự nhiên hoặc số phiên bản)
Ưu điểm: Lưu trữ giá trị lịch sử không giới hạn.
Supplier_Key | Supplier_Code | Supplier_Name | Supplier_State | Version. |
---|---|---|---|---|
123 | ABC | Inda Co | HCM | 0 |
124 | ABC | Inda Co | HN | 1 |
Supplier_Key | Supplier_Code | Supplier_Name | Supplier_State | Start_Date | End_Date |
---|---|---|---|---|---|
123 | ABC | Inda Co | HCM | 2000-01-01 | 2005-01-02 |
124 | ABC | Acme Supply Co | HN | 2005-01-02 | 9999-12-31 |
Supplier_Key | Supplier_Code | Supplier_Name | Supplier_State | Effective_Date | Current_Flag |
---|---|---|---|---|---|
123 | ABC | Inda Co | CA | 2000-01-01 | N |
124 | ABC | Inda Co | IL | 2005-01-02 | Y |
Phương pháp này theo dõi sự thay đổi bằng cách sử dụng các cột riêng biệt.
Lưu trữ giá trị lịch sự một cách giới hạn vì giới hạn ở số cột lưu trữ dữ liệu lịch sử.
Supplier_Key | Supplier_Code | Supplier_Name | Original_Supplier_State | Effective_Date | Current_Supplier_State |
---|---|---|---|---|---|
123 | ABC | Inda Co | HCM | 2005-01-02 | HN |
Bản ghi chứa 1 cột cho giá trị ban đầu, và một cột cho giá trị hiện tại –> Không thể theo dõi lịch sử biến đổi nếu có nhiều lần thay đổi.
Phương pháp này sử dụng các bảng lịch sử history table. Bao gồm:
Surrogate Key trên 2 bảng này đều được tham chiếu tới fact để tăng cường hiệu quả truy vấn.
Supplier_key | Supplier_Code | Supplier_Name | Supplier_State |
---|---|---|---|
124 | ABC | Inda Co | HN |
Bảng lịch sử:
Supplier_key | Supplier_Code | Supplier_Name | Supplier_State | Create_Date |
---|---|---|---|---|
123 | ABC | Inda Co | HCM | 2000-01-01 |
124 | ABC | Inda Co | HN | 2015-01-02 |
Kết hợp cách tiếp cận từ loại 1,2,3 (6=1+2+3)
Khi bản ghi lần đầu tiên được thêm vào. Giá trị lich sử và giá trị hiện tại giống nhau.
Supplier_Key | Row_Key | Supplier_Code | Supplier_Name | Current_State | Historical_State | Start_Date | End_Date | Current_Flag |
---|---|---|---|---|---|---|---|---|
123 | 1 | ABC | Inda Co | HCM | HCM | 2000-01-01 | 9999-12-31 | Y |
Khi Supplier State thay đổi:
Supplier_Key | Row_Key | Supplier_Code | Supplier_Name | Current_State | Historical_State | Start_Date | End_Date | Current_Flag |
---|---|---|---|---|---|---|---|---|
123 | 1 | ABC | Inda Co | HCM | HCM | 2001 | 2005-01-02 | N |
123 | 2 | ABC | Inda Co | HN | HCM | 2005-01-02 | 9999-12-31 | Y |
>> Xây dựng kiến thức nền tảng vững chắc về data warehouse, ETL với 2 khóa học data analyst và data engineer Cole, nếu bạn chưa biết công việc về dữ liệu nào sẽ phù hợp với bạn, liên hệ để được Cole tư vấn định hướng học tập miễn phí nhé. Xem chi tiết 2 khóa học: