VIETNAM-KOREA UNIVERSITY OF INFORMATIONAND COMMUNICATION TECHNOLOGY COMPUTER SCIENCE DEPARTMENT XÂY DỰNG KHO DỮ LIỆU ĐỂ QUẢN LÝ CÁC DOANH NGHIỆP THU THẬP SẢN PHẨM MỸ PHẨM GVHD : PhD.. Ch
Trang 1VIETNAM-KOREA UNIVERSITY OF INFORMATION
AND COMMUNICATION TECHNOLOGY
COMPUTER SCIENCE DEPARTMENT
XÂY DỰNG KHO DỮ LIỆU ĐỂ QUẢN
LÝ CÁC DOANH NGHIỆP THU THẬP
SẢN PHẨM MỸ PHẨM
GVHD : PhD TRAN THANH LIEM
Da Nang, November 2024
Trang 2LỜI CẢM ƠN
Trước hết, nhóm xin gửi lời cảm ơn chân thành đến TS Trần Thanh Liêm (Giảngviên bộ môn Data Warehouse) đã giúp nhóm có được những kiến thức cơ bản cầnthiết làm nền tảng để thực hiện luận văn này Thầy đã trực tiếp hướng dẫn nhómnhiệt tình, sửa lỗi và đóng góp nhiều ý kiến quý báu giúp nhóm hoàn thành tốtbáo cáo chuyên đề Trong một học kỳ thực hiện đồ án, nhóm đã vận dụng nhữngkiến thức nền tảng đã tích lũy được và kết hợp với việc học hỏi, nghiên cứu kiến thức mới Từ đó, nhóm đã vận dụng những kiến thức đã thu thập được để hoànthành báo cáo đồ án tốt nhất Tuy nhiên, trong quá trình thực hiện, nhóm khôngtránh khỏi những thiếu sót Vì vậy, nhóm rất mong nhận được sự góp ý của cácthầy cô để nâng cao kiến thức đã tiếp thu và chuẩn bị cho nhóm giải quyết cácchuyên đề khác trong tương lai
Trân trọng cảm ơn!
Sinh viên,Nguyễn Đại CườngNguyễn Bùi Nam Phúc
Trang 3NHẬN XÉT CỦA GIẢNG VIÊN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 42.2.1 Fact, Dimension and Sub-dimension tables of System 7
2.2.2.1 Snowflake schema for Review fact table 10
Trang 52.2.2.2 Snowflake schema for Sale fact table 10
5.4 Average rating of an product in ascending, descending 25
Trang 6Table 1 Sale Fact 7
Table 2 Review Fact 8
Table 3 Date Dim 9
Table 4 Customer Dim 9
Table 5Product Dim 9
Table 6 Store Dim 10
Table 7 Category Sub-dim 10
Table 8 City Sub-dim 10
Table 9 Country Sub-dim 10
Table 10 Table for Sale Fact table 13
Table 11 Table for Review fact table 13
Table 12 Table for Date dimension table 14
Table 13 Table for Customer dimension table 14
Table 14 Table for Product dimension table 14
Table 15 Table for Store dimension table 15
Table 16 Tabel for Category sub-dimension table 15
Table 17 Table for Region sub-dimension table 15
Table 18 Table for Country sub-dimension table 15
Trang 7LIST OF IMAGES
Figure 1 Visual Studio 3
Figure 2 SQL Server Management Studio 4
Figure 3 Store Dimension 5
Figure 4 Date Dimension 6
Figure 5 Product Dimension 6
Figure 6 Conceptual modeling diagram 7
Figure 7 Snowflake shema for ReviewFact table 11
Figure 8 Snowflake schema for Sale Fact table 11
Figure 9 Query questions 12
Figure 10 Conceptual ETL design 16
Figure 11 Fact_Sale Data flow 16
Figure 12 Fact_Sale result 17
Figure 13 Fact_Review Data flow 17
Figure 14 Fact_Review result 17
Figure 15 Date Dim Dataflow 18
Figure 16 Date Dim ETL result 18
Figure 17 Customer Dim Data flow 18
Figure 18 Customer DimETL result 19
Figure 19 Product Dim Dataflow 19
Figure 20 Product Dim ETL Result 20
Figure 21 Store Dim Data flow 20
Figure 22 Store Dim ETL result 21
Figure 23 Category Dim Data flow 21
Figure 24 Category Dim ETL result 21
Figure 25 Region Dim Data flow 22
Figure 26 Region Dim ETL result 22
Figure 27 Country Dim Data flow 22
Figure 28 Country Dim ETL result 23
Figure 29 Report format 24
Figure 30 Report Result 24
Figure 31 Report Format 24
Figure 32 Report Result 25
Figure 33 Report format of total amount, profit of an product 25
Figure 34 Answer 4 26
Figure 35Answer 5 report format 26
Figure 36 Report format Average rating of product 27
Trang 8LIST OF ACRONYMS
Number Phrase Abbreviation
1 Integrated development environment IDE
5 SQL Server Integration Services SSIS
Chapter 1
Trang 9Chapter 2 Giới thiệu
2.1 Mục tiêu của dự án
Mục tiêu chính trong việc xây dựng kho dữ liệu cho các doanh nghiệp thuthập sản phẩm mỹ phẩm là thiết lập một trung tâm tập trung để quản lý dữliệu toàn diện Điều này bao gồm việc tổng hợp và lưu trữ các tập dữ liệu
đa dạng, từ các giao dịch bán hàng và mức tồn kho đến phản hồi của kháchhàng và thông tin chuỗi cung ứng Mục đích là tích hợp các nguồn dữ liệukhác nhau này, đảm bảo chất lượng và tính nhất quán của dữ liệu thôngqua các quy trình làm sạch và chuyển đổi Bằng cách bảo quản dữ liệu lịch
sử, kho dữ liệu tạo điều kiện cho việc phân tích xu hướng và hỗ trợ raquyết định Việc triển khai các công cụ thông minh kinh doanh mạnh mẽcho phép người dùng thực hiện các truy vấn tùy ý và tạo báo cáo, cung cấpthông tin chi tiết có giá trị về hiệu suất của sản phẩm mỹ phẩm Cơ chếgiám sát theo dõi các chỉ số hiệu suất chính, tối ưu hóa các quy trình chuỗicung ứng và nâng cao hiệu suất kinh doanh tổng thể Tận dụng thông tinchi tiết của khách hàng có được từ dữ liệu cho phép đưa ra các chiến lượctiếp thị và khuyến nghị sản phẩm được cá nhân hóa Hơn nữa, kho dữ liệuđảm bảo tuân thủ quy định và được thiết kế để có thể mở rộng và linhhoạt, đáp ứng nhu cầu kinh doanh đang thay đổi trong ngành mỹ phẩmnăng động Cuối cùng, mục tiêu là trao quyền cho các tổ chức đưa ra quyếtđịnh sáng suốt, cải thiện hiệu quả hoạt động và duy trì khả năng cạnh tranhtrên thị trường mỹ phẩm
2.2 Yêu cầu
Mục tiêu của việc thiết lập kho dữ liệu cho các doanh nghiệp tham gia vào
bộ sưu tập sản phẩm mỹ phẩm là lưu trữ và quản lý hiệu quả cả dữ liệu lịch
sử và hiện tại liên quan đến thông tin sản phẩm Điều này bao gồm dữ liệu
về đặc điểm sản phẩm, giao dịch bán hàng, phản hồi của khách hàng vàthông tin chi tiết về chuỗi cung ứng Kho dữ liệu được thiết kế để hỗ trợnhiều truy vấn phân tích khác nhau và tạo báo cáo về dữ liệu sản phẩm mỹphẩm, chẳng hạn như xu hướng về mức độ phổ biến của sản phẩm, phânphối bán hàng trên khắp các khu vực (kho, quận, tỉnh) và mối tương quanvới nhiều yếu tố thị trường khác nhau Kho dữ liệu phải có khả năng mởrộng, đáng tin cậy và hiệu quả để xử lý khối lượng dữ liệu lớn và đáp ứngcác tương tác đồng thời của người dùng Các phân tích cụ thể bao gồm theodõi tần suất và nguyên nhân của sự thay đổi mức độ phổ biến của sản phẩm,đánh giá tác động đến xu hướng thị trường và đánh giá các tác động kinh tếcủa việc thay đổi sở thích của người tiêu dùng Thông tin chi tiết về thống
kê sẽ bao gồm hiệu suất sản phẩm theo thời gian, nguyên nhân của sự thayđổi mức độ phổ biến và xác định các sản phẩm có hiệu suất cao và kém hiệuquả Kho dữ liệu tạo điều kiện thuận lợi cho việc trích xuất thông tin có giátrị, trao quyền cho các doanh nghiệp đưa ra quyết định sáng suốt và duy trìkhả năng cạnh tranh trên thị trường mỹ phẩm
Trang 102.3 Các khái niệm
2.3.1 Logical Design
Mô hình hóa logic trong bối cảnh của kho dữ liệu liên quan đến việc thiết
kế một cấu trúc biểu diễn và tổ chức dữ liệu hiệu quả cho mục đích phântích Không giống như cơ sở dữ liệu giao dịch được tối ưu hóa cho quátrình xử lý giao dịch, kho dữ liệu được thiết kế để hỗ trợ các truy vấn vàbáo cáo phức tạp, tạo nên sự khác biệt cho mô hình hóa logic trong môitrường này
Kết hợp với Snowflake Schema với các bảng Dimension, Sub-dimension
và Fact
2.3.2 Snowflake Schema
The snowflake schema là một loại sơ đồ cơ sở dữ liệu trong đó một bảng
dữ liệu trung tâm được kết nối với nhiều bảng chiều thông qua một tậphợp các mối quan hệ được chuẩn hóa Trong sơ đồ bông tuyết, các chiềuthường được chuẩn hóa thêm thành các chiều phụ Điều này tạo ra một cấutrúc giống như một bông tuyết khi được trực quan hóa, với bảng dữ liệutrung tâm là trung tâm và các bảng chiều phân nhánh như các cánh tay Sơ
đồ bông tuyết mang lại một số lợi ích trong lĩnh vực kho dữ liệu Mộttrong những lợi thế chính của nó là truy xuất dữ liệu nhanh Bằng cáchchuẩn hóa các bảng chiều và sắp xếp dữ liệu thành một cấu trúc phân cấp,
sơ đồ giảm thiểu sự dư thừa dữ liệu, tạo điều kiện cho việc truy vấn và truyxuất thông tin hiệu quả Ngoài ra, Sơ đồ bông tuyết áp dụng các tiêu chuẩncao về chất lượng dữ liệu Thiết kế được chuẩn hóa giúp ngăn ngừa sựkhông nhất quán và bất thường, đảm bảo dữ liệu vẫn chính xác và đáng tincậy Một lợi thế khác nằm ở việc cung cấp một mô hình dữ liệu đơn giản
và chung cho kho dữ liệu Cấu trúc chuẩn hóa này đơn giản hóa việc tổchức và quản lý dữ liệu, thúc đẩy một khuôn khổ gắn kết và dễ hiểu chongười dùng
Tuy nhiên, Snowflake Schema không phải là không có nhược điểm Việcthiết lập ban đầu của lược đồ này phát sinh một lượng chi phí đáng kể.Quá trình chia nhỏ các bảng chiều thành các chiều con được chuẩn hóa vàthiết lập các mối quan hệ phức tạp đòi hỏi phải lập kế hoạch và thực hiện tỉ
mỉ, có khả năng kéo dài giai đoạn thiết lập Mô hình dữ liệu cứng nhắc củaSnowflake Schema đặt ra một thách thức khác Mặc dù nó tăng cường tínhtoàn vẹn của dữ liệu, nhưng cấu trúc được chuẩn hóa có thể dẫn đến cáctruy vấn phức tạp hơn và ngược lại, cản trở tính linh hoạt trong một số tìnhhuống phân tích nhất định Hơn nữa, chi phí bảo trì cao liên quan đến cácbản cập nhật và sửa đổi liên tục đối với lược đồ có thể là một cân nhắcđáng kể Bất chấp những lợi ích của nó, những nhược điểm này làm nổibật nhu cầu đánh giá và cân nhắc cẩn thận các trường hợp sử dụng cụ thểkhi lựa chọn Snowflake Schema trong môi trường kho dữ liệu
2.3.3 Fact table
A fact trong kho dữ liệu mô tả dữ liệu giao dịch định lượng như phép đo,
số liệu hoặc giá trị sẵn sàng để phân tích Bao gồm số tiêu đề, số đơn hàng,
số vé, số giao dịch, tiền tệ giao dịch, v.v Số lượng đã bán là một phép đo
sự kiện hoặc chỉ số hiệu suất chính (KPI)
Trang 11"Tháng" và "Ngày" Mỗi chiều phụ này biểu thị một mức độ chi tiết khácnhau trong chiều thời gian tổng thể.
Tương tự như vậy, trong chiều địa lý, bạn có thể có chiều chính là "Vị trí"với các chiều phụ như "Quốc gia", "Khu vực" và "Thành phố", biểu thị cácmức độ chi tiết khác nhau trong bối cảnh địa lý
Việc sử dụng các chiều phụ cho phép người dùng phân tích dữ liệu ở nhiềumức độ chi tiết khác nhau, mang lại sự linh hoạt trong báo cáo và phântích trong môi trường kho dữ liệu
2.4 Tools
2.4.1 Visual Studio
Figure 1 Visual Studio
Visual Studio IDE là một bệ phóng sáng tạo mà bạn có thể sử dụng đểchỉnh sửa, gỡ lỗi và xây dựng mã rồi xuất bản ứng dụng Ngoài trình soạnthảo và trình gỡ lỗi tiêu chuẩn mà hầu hết các IDE cung cấp, Visual Studiobao gồm trình biên dịch, công cụ hoàn thiện mã, nhà thiết kế đồ họa vànhiều tính năng khác để nâng cao quy trình phát triển phần mềm
2.4.2 SQL Server Integration Services
SQL Server Integration Services là một nền tảng để xây dựng các giảipháp tích hợp dữ liệu và chuyển đổi dữ liệu cấp doanh nghiệp Sử dụngIntegration Services để giải quyết các vấn đề kinh doanh phức tạp bằngcách sao chép hoặc tải xuống tệp, tải kho dữ liệu, làm sạch và khai thác dữliệu và quản lý các đối tượng và dữ liệu SQL Server Integration Services
có thể trích xuất và chuyển đổi dữ liệu từ nhiều nguồn khác nhau như tệp
dữ liệu XML, tệp phẳng và nguồn dữ liệu quan hệ, sau đó tải dữ liệu vàomột hoặc nhiều đích
Integration Services bao gồm:
- Một tập hợp phong phú các tác vụ và chuyển đổi tích hợp sẵn
Trang 12- Các công cụ đồ họa để xây dựng các gói.
- Cơ sở dữ liệu SSIS Catalog để lưu trữ, chạy và quản lý các gói
2.4.3 SQL Server Management Studio
Figure 2 SQL Server Management Studio
SQL Server Management Studio (SSMS) là một môi trường tích hợp để quản
lý bất kỳ cơ sở hạ tầng SQL nào Sử dụng SSMS để truy cập, cấu hình, quản
lý, quản trị và phát triển tất cả các thành phần của SQL Server, Azure SQLDatabase, Azure SQL Managed Instance, SQL Server trên Azure VM vàAzure Synapse Analytics SSMS cung cấp một tiện ích toàn diện duy nhất kếthợp một nhóm lớn các công cụ đồ họa với nhiều trình soạn thảo tập lệnhphong phú để cung cấp quyền truy cập vào SQL Server cho các nhà phát triển
và quản trị viên cơ sở dữ liệu ở mọi cấp độ kỹ năng Phân tích và thiết kế kho
dữ liệu
Trang 13Chapter 3 Data warehouse Analysis and Design
về triển khai cơ sở dữ liệu hoặc các chi tiết kỹ thuật
3.1.1 Measure and dimension entities
3.1.1.1 Measure
- Số lượng: Số lượng mặt hàng đã bán trong một lần bán
- Tổng lợi nhuận: Lợi nhuận của một lần bán
The hierarchies: City, Country
Figure 3 Store Dimension
3.1.2.2 Date Dimension
The hierarchies: Month, Quarter
Trang 14Figure 4 Date Dimension
3.1.2.3 Product Dimension
The hierarchies: Category
Figure 5 Product Dimension
3.1.3 Conceptual modeling diagram
Figure 6 Conceptual modeling diagram
Trang 153.2 Logical modeling
3.2.1 Fact, Dimension and Sub-dimension tables of System 3.2.1.1 Sale fact table
Field Name Description Type
Amounts The quantity of sold item in a
sale
Int
Table 1 Sale Fact
3.2.1.2 Reviews fact table
Field Name Description Type
CustomerID ID of a customer Int
Rating metric for a review float
Table 2 Review Fact
Trang 163.2.1.3 Date dimension table
Field Name Description Type
Invoice date Date of an invoice Date
Table 3 Date Dim
3.2.1.4 Customer dimension table
Field Name Description Type
CustomerID ID of a customer Int
Customer name name of a customer nvarchar(150)Customer age Age of a customer int
Customer gender Customer gender nvarchar(50)
Table 4 Customer Dim
3.2.1.5 Product dimension table
Field Name Description Type
CategoryID ID of a category Int
Product name Name of product nvarchar(50)Product price Price of product Float
Table 5Product Dim
Trang 173.2.1.6 Store dimension table
Field Name Description Type
Table 6 Store Dim
3.2.1.7 Category sub-dimension table
Field Name Description Type
CategoryID ID of a category Int
Category name Name of a category nvarchar(50)
Table 7 Category Sub-dim
3.2.1.8 Region sub-dimension table
Field Name Description Type
Region_name Name of a region nvarchar(50)
Table 8 City Sub-dim
3.2.1.9 Country sub-dimension table
Field Name Description Type
Country_ID ID of a country Int
Country_name Name of a country nvarchar(50)
Table 9 Country Sub-dim
3.2.2 Snowflake
Snowflake schema ở đây bao gồm các lược đồ cho Sale and Review fact table
Trang 183.2.2.1 Snowflake schema for Review fact table
Figure 7 Snowflake shema for ReviewFact table
3.2.2.2 Snowflake schema for Sale fact table
Figure 8 Snowflake schema for Sale Fact table
Trang 193.3 Query questions
Questions Description
1 Tổng lợi nhuận theo tháng, quý
2 Tổng số tiền theo tháng, quý
3 Tổng số tiền, lợi nhuận của một sản phẩm tăng dần, giảm dần
4 Xếp hạng trung bình của một sản phẩm theo thứ tự tăng dần, giảm
dần
Figure 9 Query questions
Trang 20Chapter 4 Data Warehouse Development
4.1 Physical Modeling
4.1.1 Sale fact Table
Column name Data type Allow null
Table 10 Table for Sale Fact table
4.1.2 Reviews fact Table
Column name Data type Allow null
Table 11 Table for Review fact table
4.1.3 Date dimension Table
Column name Data type Allow null
Table 12 Table for Date dimension table
Trang 214.1.4 Customer dimension Table
Column name Data type Allow null
Table 13 Table for Customer dimension table
4.1.5 Product dimension Table
Column name Data type Allow null
Product name Nvarchar(50)
Table 14 Table for Product dimension table
4.1.6 Store dimension Table
Column name Data type Allow null
Table 15 Table for Store dimension table
4.1.7 Category sub-dimension Table
Column name Data type Allow null
Category name Nvarchar(50)
Table 16 Tabel for Category sub-dimension table
Trang 224.1.8 Region sub-dimension Table
Column name Data type Allow null
Table 17 Table for Region sub-dimension table
4.1.9 Country sub-dimension Table
Column name Data type Allow null
Country_name Nvarchar(50)
Table 18 Table for Country sub-dimension table