Thầy ơi cho em hỏi, order date (trong sales data) và date (trong Calendar) là 2 dữ liệu không liên quan đến nhau vì em thấy trong calendar thì date chỉ là dữ liệu ngẫu nhiên được tạo ra, thì sao mình lại tạo relationship vậy thầy?
Hi b,
Đây là 1 tips khi sử dụng Mô hình dữ liệu để tối ưu Mô hình (khi mô hình tối ưu thì Load, tính toán sẽ nhanh hơn, đặc biệt là do dữ liệu lớn). Mình tạo bảng Calendar thì ngày là theo 1 khoảng, ví dụ từ 1/1 - 31/12. Còn trong Sale Data thì Order Date dù theo giao dịch, nhưng cũng trong khoảng 1/1-31/12 thôi.
Các phần khai thác dữ liệu Date, như Weekday (Thứ), WeekNumber (Tuần) ... hay bất kỳ dữ liệu gì cần khai thác từ Date, ta sử dụng trên bảng Calendar, chứ ko sử dụng trong bảng gốc là Sale Data thì Model sẽ nhanh hơn nhiều
HI Thầy,
Vậy nghĩa là file calendar sẽ chứa tất cả các ngày, nên cũng bao gồm ngày order date, do đó nếu tính "start of month" của calendar cũng là tính "start of month" của order date đúng không thầy?
Vậy thay vào đó mình có thể tính "start of month" trên data của order date chắc cũng ra kết quả y chang hả thầy?
Chính xác rồi nha b, nhưng như đã nói ở nhiều cmt trước, ta sẽ ưu tiên khai thác dữ liệu ở Calendar. Còn nếu bạn muốn khai thác trực tiếp trên order date hay transaction date, thì ta ko cần tạo riêng bảng Calendar và tạo Relationship tới nữa