

Giới thiệu khái niệm Data Warehouse và một số mô hình phổ biến
- 08-06-2025
- Toanngo92
- 0 Comments
Mục lục
Lý do và nhu cầu sử dụng Data Warehouse
🧠 1. Tại sao cần kho dữ liệu?
Kho dữ liệu là một giải pháp giúp doanh nghiệp:
- Tập hợp dữ liệu từ nhiều nguồn khác nhau
- Biến dữ liệu rời rạc thành thông tin có giá trị
- Hỗ trợ ra quyết định nhanh, chính xác, dựa trên dữ liệu lịch sử
🔄 a. Hạn chế của hệ thống OLTP (Online Transaction Processing)
- Được thiết kế để phục vụ các giao dịch hàng ngày (bán hàng, đặt hàng, thanh toán…)
- Tối ưu hóa cho ghi và cập nhật dữ liệu nhanh
- Không phù hợp để phân tích phức tạp hoặc truy xuất dữ liệu lịch sử dài hạn
→ OLTP KHÔNG phải là công cụ BI (Business Intelligence)
📊 b. Vai trò của OLAP (Online Analytical Processing)
- Cho phép phân tích dữ liệu theo nhiều chiều: thời gian, địa lý, sản phẩm, khách hàng…
- Tối ưu hóa cho truy vấn và tổng hợp dữ liệu
- Giúp ban lãnh đạo, marketing, kế toán… hiểu xu hướng, đánh giá hiệu suất, dự đoán tương lai
✅ c. Kho dữ liệu giải quyết vấn đề gì?
Vấn đề thực tế | Kho dữ liệu hỗ trợ |
---|---|
Dữ liệu phân tán ở nhiều hệ thống | Tập hợp, tích hợp dữ liệu |
Định dạng dữ liệu không đồng nhất | Chuẩn hóa |
Không thể truy xuất dữ liệu lịch sử dài hạn | Lưu trữ lâu dài, không bị thay đổi |
Truy vấn chậm khi phân tích trên hệ thống vận hành | Truy vấn nhanh, đa chiều |
💼 2. Nhu cầu về Business Intelligence (Trí tuệ doanh nghiệp)
Business Intelligence (BI) là quá trình sử dụng dữ liệu để:
- Hiểu rõ doanh nghiệp
- Dự báo xu hướng
- Ra quyết định chiến lược và vận hành tốt hơn
🚀 a. Lý do BI ngày càng quan trọng:
- Môi trường cạnh tranh cao: Doanh nghiệp cần hiểu thị trường, khách hàng, đối thủ để phản ứng nhanh.
- Ra quyết định dựa trên dữ liệu: Tránh cảm tính, tăng độ chính xác.
- Hỗ trợ lập kế hoạch chiến lược: Phân tích lịch sử giúp dự báo tương lai.
- Tận dụng dữ liệu đang có: Rất nhiều hệ thống tạo ra dữ liệu (POS, CRM, website…), nhưng không được khai thác hiệu quả.
💡 b. Dữ liệu thô ≠ Thông tin hữu ích
- Chỉ khi dữ liệu được tích hợp, làm sạch, chuẩn hóa, tổ chức hợp lý, doanh nghiệp mới có thể:
- Phân tích thói quen khách hàng
- Phát hiện sản phẩm sinh lời
- Theo dõi biến động doanh thu theo vùng, thời gian
- Tối ưu chuỗi cung ứng, kho hàng, marketing…
→ Tất cả những điều này cần kho dữ liệu làm nền tảng cho BI
Biến “Dữ liệu” thành “Thông tin”
Kho dữ liệu cung cấp cái nhìn đa chiều về dữ liệu vận hành (OLTP), giúp ra quyết định nhanh và chính xác.
Định nghĩa Kho Dữ Liệu là gì?
Kho dữ liệu (Data Warehouse) là một hệ thống lưu trữ dữ liệu chuyên biệt, được thiết kế để hỗ trợ việc phân tích và ra quyết định. Nó tập trung, tổ chức và lưu trữ dữ liệu từ nhiều nguồn khác nhau, giúp người dùng có thể truy cập và khai thác dữ liệu một cách hiệu quả.
🧩 4 Đặc tính cốt lõi của Kho Dữ Liệu (theo Inmon – cha đẻ khái niệm Data Warehouse):
1. 🎯 Subject-Oriented (Theo đối tượng)
- Dữ liệu trong kho được tổ chức xoay quanh các chủ đề trọng yếu của doanh nghiệp: khách hàng, sản phẩm, doanh số, nhà cung cấp…
- Khác với hệ thống OLTP thường tổ chức theo chức năng ứng dụng (ví dụ: kế toán, kho, bán hàng).
✅ Ý nghĩa: Giúp tập trung dữ liệu phục vụ phân tích theo từng khía cạnh kinh doanh cụ thể.
2. 🔗 Integrated (Tích hợp)
- Kho dữ liệu thu thập thông tin từ nhiều hệ thống khác nhau (CRM, ERP, POS…).
- Dữ liệu được chuẩn hóa về định dạng, đơn vị, mã hóa, cách ghi ngày tháng…
✅ Ý nghĩa: Tạo ra một nguồn dữ liệu nhất quán, có thể tin cậy để phân tích toàn diện.
3. 🕓 Time-Variant (Có yếu tố thời gian)
- Dữ liệu trong kho được lưu trữ trong dài hạn (thường từ 5 đến 10 năm).
- Mỗi bản ghi đều có yếu tố thời gian: thời điểm ghi nhận, chu kỳ, năm/tháng…
✅ Ý nghĩa: Phục vụ cho việc phân tích xu hướng, so sánh theo thời gian, dự báo tương lai.
4. 🚫 Non-Volatile (Không thay đổi)
- Dữ liệu sau khi được đưa vào kho sẽ không bị sửa đổi hoặc xóa như trong hệ thống OLTP.
- Chỉ có thao tác thêm mới hoặc đọc dữ liệu.
✅ Ý nghĩa: Đảm bảo tính toàn vẹn và lịch sử của dữ liệu, phục vụ phân tích chính xác.
✅ Tóm tắt vai trò
Kho dữ liệu là nơi:
- Tổng hợp dữ liệu đa nguồn
- Lưu trữ dữ liệu lâu dài và ổn định
- Tổ chức lại dữ liệu để phân tích hiệu quả
- Trở thành nền tảng cho các công cụ OLAP, BI, Data Mining…
so sánh các đặc điểm giữa hệ thống OLTP (Online Transaction Processing) và Data Warehouse (Kho Dữ Liệu)
📌 1. Subject-Oriented – Theo đối tượng
Đặc điểm | OLTP | Data Warehouse |
---|---|---|
Mục tiêu chính | Tối ưu cho giao dịch nghiệp vụ cụ thể | Tối ưu cho phân tích theo đối tượng kinh doanh |
Tổ chức dữ liệu | Theo ứng dụng: bán hàng, kho, đơn hàng, nhân sự… | Theo đối tượng: khách hàng, sản phẩm, doanh thu… |
Tính chất | Rời rạc, khó tổng hợp | Có thể tổng hợp, phân tích đa chiều |
✅ Phân tích: Data Warehouse cho phép phân tích tập trung vào những gì doanh nghiệp cần theo dõi, thay vì cách hệ thống được thiết kế để vận hành.
🔗 2. Integrated – Tích hợp
Đặc điểm | OLTP | Data Warehouse |
---|---|---|
Nguồn dữ liệu | Thường là riêng biệt giữa các hệ thống | Hợp nhất từ nhiều nguồn khác nhau |
Chuẩn hóa dữ liệu | Có thể có sự khác biệt (format ngày, giới tính, mã sản phẩm…) | Dữ liệu được làm sạch và chuẩn hóa trước khi lưu trữ |
Mức độ đồng nhất | Không đồng nhất | Cao, nhất quán |
✅ Phân tích: Kho dữ liệu giúp doanh nghiệp loại bỏ rào cản kỹ thuật khi phân tích dữ liệu đến từ các hệ thống khác nhau.
🕒 3. Time-Variant – Có yếu tố thời gian
Đặc điểm | OLTP | Data Warehouse |
---|---|---|
Khoảng thời gian lưu dữ liệu | Ngắn hạn (60–90 ngày, tùy doanh nghiệp) | Dài hạn (5–10 năm hoặc hơn) |
Có chứa thông tin thời gian? | Thường không | Luôn có |
Dữ liệu lịch sử | Có thể bị ghi đè | Không ghi đè, lưu theo thời gian |
✅ Phân tích: Phân tích xu hướng, so sánh giữa các thời kỳ, dự báo… là không thể nếu không có dữ liệu mang yếu tố thời gian – đây là lý do then chốt cho sự tồn tại của kho dữ liệu.
🚫 4. Non-Volatile – Không thay đổi
Đặc điểm | OLTP | Data Warehouse |
---|---|---|
Thao tác phổ biến | Tạo, cập nhật, xóa | Tải (load), truy vấn (query) |
Tính ổn định của dữ liệu | Dữ liệu thay đổi liên tục | Dữ liệu được cố định khi đã nạp |
Mục tiêu | Phục vụ giao dịch hàng ngày | Phân tích chính xác, nhất quán dữ liệu lịch sử |
✅ Phân tích: Dữ liệu trong kho cần ổn định để phục vụ phân tích, không bị sai lệch theo thời gian như dữ liệu nghiệp vụ hàng ngày.
✅ Tổng kết so sánh
Tiêu chí | OLTP | Data Warehouse |
---|---|---|
Theo đối tượng | Theo ứng dụng | Theo đối tượng kinh doanh |
Tích hợp | Dữ liệu không đồng nhất | Chuẩn hóa, tích hợp nhiều nguồn |
Yếu tố thời gian | Ngắn hạn, không chứa thời gian | Dài hạn, có thời gian rõ ràng |
Không thay đổi | Dữ liệu thay đổi thường xuyên | Dữ liệu ổn định, không sửa đổi |
🔧 Mô hình chức năng của kho dữ liệu (Functional Model)
Kho dữ liệu có thể được chia thành 3 chức năng chính:
1. Thu thập (Acquisition)
Đây là giai đoạn đưa dữ liệu từ nhiều nguồn khác nhau vào kho dữ liệu.
- Xác định dữ liệu cần thiết: từ các hệ thống cũ (legacy systems), ERP, CRM, POS…
- Kiểm tra dữ liệu: đánh giá độ chính xác, tính phù hợp và khả năng sử dụng.
- Trích xuất dữ liệu (Extract)
- Biến đổi dữ liệu (Transform): chuẩn hóa, xử lý định dạng, làm sạch…
- Tạm lưu trữ (staging): nơi dữ liệu được xử lý trước khi nạp vào kho.
🔁 Tương đương với quá trình ETL – Extract, Transform, Load
2. Lưu trữ (Storage)
Là phần trái tim của kho dữ liệu, nơi lưu trữ toàn bộ dữ liệu đã được xử lý.
- Dữ liệu sau khi staging sẽ được nạp vào cơ sở dữ liệu trung tâm
- Được tổ chức theo mô hình đa chiều, dễ dàng cho việc phân tích
- Cần đảm bảo khả năng mở rộng và hiệu năng cao
✅ Ý nghĩa: Tạo một nguồn dữ liệu tập trung, nhất quán, phục vụ truy vấn và phân tích.
3. Truy cập (Access)
Là cách mà người dùng cuối và hệ thống truy cập vào kho dữ liệu để khai thác thông tin.
Gồm các công cụ sau:
- Công cụ truy vấn & báo cáo (Query & Reporting)
- Công cụ phân tích OLAP (Online Analytical Processing)
- Công cụ phân tích thống kê
- Data mining – khai phá dữ liệu
- Công cụ GIS – thông tin địa lý, biểu đồ hóa
✅ Ý nghĩa: Hỗ trợ người dùng ra quyết định nhanh và dựa trên dữ liệu.
🏗️ 7 bước xây dựng kho dữ liệu (7 Steps to Build a Data Warehouse)
- Xác định nhu cầu người dùng cuối
→ Ví dụ: Giám đốc kinh doanh cần biết báo cáo doanh số theo khu vực theo tháng. - Xác định nguồn dữ liệu cần thiết
→ Từ hệ thống bán hàng, kho, marketing… - Phân tích kỹ các nguồn dữ liệu
→ Kiểm tra cấu trúc, định dạng, chất lượng dữ liệu… - Thiết kế quá trình biến đổi dữ liệu
→ Đổi định dạng ngày, chuẩn hóa mã sản phẩm, gộp các loại giới tính… - Tạo metadata (siêu dữ liệu)
→ Mô tả cách dữ liệu được biến đổi, tích hợp và tổ chức. - Xây dựng kho vật lý và nạp dữ liệu
→ Triển khai CSDL, ETL, lưu trữ dữ liệu thực tế. - Xây dựng ứng dụng cho người dùng cuối
→ Dashboard, công cụ phân tích, hệ thống báo cáo BI…
📌 Tóm tắt lại các phần vừa phân tích
Giai đoạn | Mục tiêu | Nội dung chính |
---|---|---|
Thu thập (ETL) | Lấy và chuẩn hóa dữ liệu | Trích xuất, biến đổi, staging |
Lưu trữ | Tạo kho dữ liệu ổn định | Dữ liệu được lưu theo mô hình chuẩn |
Truy cập | Hỗ trợ người dùng khai thác dữ liệu | Công cụ OLAP, báo cáo, data mining |
Xây dựng | Từng bước xây dựng hệ thống DW | Từ phân tích nhu cầu → triển khai thực tế |
Mô hình schema trong kho dữ liệu
🔷 A. Star Schema – Mô hình hình sao
Cấu trúc:
- Một bảng fact (sự kiện) trung tâm chứa các chỉ số cần phân tích (doanh số, số lượng, chi phí…).
- Bao quanh bởi các bảng dimension (chiều) như thời gian, sản phẩm, khách hàng, khu vực…
Ví dụ:

Ví dụ:
- Fact Table: Sales (Doanh số)
- Dimension Tables: Time, Product, Customer, Region
Ưu điểm:
- Truy vấn nhanh vì ít phép nối (join)
- Dễ hiểu, dễ thiết kế
Nhược điểm:
- Lặp dữ liệu trong bảng dimension → chiếm không gian
✅ Dùng khi hiệu suất truy vấn là ưu tiên hàng đầu
❄️ B. Snowflake Schema – Mô hình bông tuyết
Cấu trúc:
- Mở rộng mô hình hình sao bằng cách chuẩn hóa các bảng dimension thành nhiều cấp
- Ví dụ: bảng “Customer” → chia nhỏ thành “Customer”, “Customer Type”, “Region”
Ví dụ:

Ưu điểm:
- Tiết kiệm không gian lưu trữ (ít trùng lặp)
- Dữ liệu tổ chức chặt chẽ hơn
Nhược điểm:
- Truy vấn phức tạp, nhiều phép nối → giảm hiệu suất
✅ Dùng khi cần quản lý dữ liệu phức tạp, nhiều phân cấp
⭐❄️ C. Starflake Schema – Kết hợp hình sao và bông tuyết
Cấu trúc:
- Một số bảng dimension được chuẩn hóa (như snowflake), còn lại giữ nguyên như star
- Cân bằng giữa hiệu suất và độ chuẩn hóa
Ưu điểm:
- Linh hoạt: tiết kiệm không gian mà không ảnh hưởng quá nhiều đến hiệu năng
Ví dụ:

✅ Phù hợp với các hệ thống lớn, yêu cầu tối ưu cả hiệu suất và cấu trúc
📊 2. OLAP – Xử lý phân tích trực tuyến
OLAP là công nghệ cho phép phân tích dữ liệu đa chiều, trực quan, nhanh chóng.
Các kỹ thuật OLAP phổ biến:
Kỹ thuật | Mô tả |
---|---|
Consolidation | Tổng hợp dữ liệu từ nhiều cấp (ví dụ: tổng doanh số từ các quận thành cấp tỉnh) |
Drill-down | Đi sâu vào chi tiết (ví dụ: từ doanh số năm → quý → tháng → ngày) |
Pivoting | Xoay chuyển góc nhìn phân tích (ví dụ: đổi hàng ngang và dọc trong bảng phân tích) |
Slice & Dice | Cắt lọc dữ liệu theo nhiều chiều (ví dụ: chỉ xem doanh số quý 1 tại khu vực miền Nam) |
Ví dụ minh họa:
Phân tích doanh số kem theo:
- Chiều 1: Năm
- Chiều 2: Tháng
- Chiều 3: Khu vực (Bắc – Trung – Nam)
→ Tạo thành khối dữ liệu đa chiều (data cube)
📐 3. Quy tắc của Codd cho OLAP Tools (Edward Codd – cha đẻ CSDL quan hệ)
Một công cụ OLAP được xem là tốt nếu đáp ứng các tiêu chí sau:
Phần 1:
- Nhìn nhận dữ liệu đa chiều
- Tính minh bạch (ẩn chi tiết kỹ thuật khỏi người dùng)
- Khả năng truy cập dễ dàng
- Hiệu suất báo cáo ổn định
- Kiến trúc client-server
- Hỗ trợ các chiều dữ liệu linh hoạt
- Xử lý tốt ma trận rỗng (không có đủ dữ liệu)
Phần 2:
- Hỗ trợ nhiều người dùng đồng thời
- Cho phép thao tác chéo giữa các chiều
- Thao tác dữ liệu trực quan, đơn giản
- Báo cáo linh hoạt
- Không giới hạn số chiều dữ liệu
✅ Ý nghĩa: Đây là tiêu chuẩn đánh giá chất lượng công cụ phân tích dữ liệu doanh nghiệp.
🎯 Tổng kết
- Các mô hình schema (Star, Snowflake, Starflake) là cách tổ chức dữ liệu trong kho giúp hỗ trợ truy vấn nhanh và phân tích dễ dàng.
- OLAP là công cụ phân tích cho phép người dùng khai thác dữ liệu đa chiều, từ tổng quát đến chi tiết, từ nhiều góc nhìn khác nhau.
- Tiêu chuẩn Codd giúp đánh giá chất lượng và khả năng của hệ thống OLAP.