ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Phạm Văn Vinh
THIẾT KẾ DATA WAREHOUSE VÀ ỨNG DỤNG
TRONG HỆ THỐNG THÔNG TIN NGÀNH ĐIỆN
LUẬN VĂN THẠC SĨ
Hà Nội - 2008
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Phạm Văn Vinh
THIẾT KẾ DATA WAREHOUSE VÀ ỨNG DỤNG
TRONG HỆ THỐNG THÔNG TIN NGÀNH ĐIỆN
Ngành: Công Nghệ thông Tin
Mã số: 1.01.10
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. HOÀNG XUÂN HUẤN
Hà Nội - 2008
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Phạm Văn Vinh
THIẾT KẾ DATA WAREHOUSE VÀ ỨNG DỤNG
TRONG HỆ THỐNG THÔNG TIN NGÀNH ĐIỆN
LUẬN VĂN THẠC SĨ
Hà Nội - 2008
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Phạm Văn Vinh
THIẾT KẾ DATA WAREHOUSE VÀ ỨNG DỤNG
TRONG HỆ THỐNG THÔNG TIN NGÀNH ĐIỆN
Ngành: Công Nghệ thông Tin
Mã số: 1.01.10
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. HOÀNG XUÂN HUẤN
Hà Nội - 2008
Lời cam đoan
Với mục đích học tập, nghiên cứu để nâng cao kiến thức và trình độ chuyên môn nên
tôi đã làm luận văn này một cách nghiêm túc và hoàn toàn trung thực.
Trong luận văn, tôi có sử dụng một số tài liệu tham khảo của một số tác giả. Tôi đã
nêu ra trong phần tài liệu tham khảo ở cuối luận văn.
Tôi xin cam đoan và chịu trách nhiệm về nội dung và sự trung thực trong luận văn tốt
nghiệp Thạc sĩ của mình!
Học viên, Phạm Văn Vinh.
Lời cảm ơn
Trước tiên, em xin bày tỏ lời cảm ơn sâu sắc nhất tới thầy giáo hướng dẫn PGS.TS.
Hoàng Xuân Huấn là người đã tận tình hướng dẫn, chỉ bảo, giúp đỡ em rất nhiều trong
quá trình tìm hiểu nghiên cứu để hoàn thành luận văn tốt nghiệp này.
Em xin chân thành cảm ơn các thầy cô giáo Đại học Công Nghệ - Đại học Quốc Gia
Hà Nội đã dạy bảo, trang bị cho em những kiến thức cơ bản trong suốt thời gian
nghiên cứu và học tập tại trường của em.
Em xin chân thành cảm ơn các cô, các chú, các anh, các chị trong Trung tâm công
nghệ thông tin - Điện lực Việt Nam cùng toàn thể các bạn bè đã tạo mọi điều kiện và
đóng góp những ý kiến bổ ích trong thời gian em làm luận văn tốt nghiệp.
MỤC LỤC
DANH SÁCH HÌNH VẼ 8
DÁNH SÁCH BẢNG BIỂU 9
BẢNG TỪ VIẾT TẮT 10
TỪ KHOÁ 11
MỞ ĐẦU 12
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ DATA WAREHOUSE 14
1.1. Giới thiệu 14
1.2. Khái niệm về data warehouse 15
1.3. Lợi ích sử dụng data warehouse 18
1.4. Các thành phần trong môi trường data warehouse 18
1.4.1. Khối các nguồn dữ liệu 19
1.4.2. Khối tạo dựng data warehouse 19
1.4.3. Thành phần lưu trữ dữ liệu 21
1.4.4. Thành phần phân phát thông tin 21
1.4.5. Thành phần siêu dữ liệu 21
1.4.6. Thành phần quản lý và kiểm soát 22
1.4.7. Thành phần ứng dụng 23
1.5. Một số khái niệm liên quan 23
1.5.1. Cơ sở dữ liệu đa chiều 23
1.5.2. Kho dữ liệu tác nghiệp 24
1.5.3. Kho dữ liệu hướng chủ đề 24
1.6. Hệ thống xử lý giao dịch trực tuyến và data warehouse 25
CHƯƠNG 2: KIẾN TRÚC DATA WAREHOUSE 28
2.1. Kiến trúc data warehouse 28
2.2. Các mô hình của data warehouse 29
2.3. Mô hình dữ liệu đa chiều 31
2.3.1. Lược đồ dữ liệu trong data warehouse 34
2.3.2. Định nghĩa lược đồ 38
2.3.3. Độ phân cấp 39
CHƯƠNG 3: OLAP VÀ DATA WAREHOUSE 41
3.1. Giới thiệu về OLAP 41
3.2. Đặc trưng của OLAP 43
3.3. Phân tích đa chiều 43
3.4. Các toán tử trong OLAP 44
3.4.1. Toán tử cuốn lên 45
3.4.2. Toán tử khoan sâu 46
3.4.3. Toán tử cắt lát và thu nhỏ 46
3.4.4. Toán tử xoay 46
3.4.5. Một số toán tử khác 46
3.5. Các mô hình trong OLAP 47
3.5.1. Mô hình MOLAP 47
3.5.2. Mô hình ROLAP 47
3.5.3. Lựa chọn mô hình ROLAP hay MOLAP 48
3.5.4. Cách triển khai OLAP 50
CHƯƠNG 4: THIẾT KẾ VẬT LÝ DATA WAREHOUSE 52
4.1. Các yếu tố khi thiết kế vật lý 52
4.1.1. Các đối tượng thiết kế vật lý 52
4.1.2. Từ thiết kế logic tới thiết kế vật lý 53
4.1.3. Các thành phần của mô hình vật lý 53
4.1.4. Ý nghĩa các chuẩn 54
4.2. Các bước thiết kế vật lý 55
4.2.1. Xây dựng tiêu chuẩn 55
4.2.2. Lập kế hoạch tổng thể 56
4.2.3. Xác định lược đồ phân chia dữ liệu 56
4.2.4. Thiết lập khả năng nhóm dữ liệu 56
4.2.5. Thiết lập cách đánh chỉ số 57
4.2.6. Xác định cấu trúc lưu trữ 57
4.2.7. Hoàn thiện mô hình vật lý 57
4.3. Cấu trúc vật lý 58
4.3.1. Cấu trúc dữ liệu lưu trữ 58
4.3.2. Tối ưu lữu trữ 58
4.3.3. Sử dụng công nghệ RAID 60
4.3.4. Dự đoán kích thước lưu trữ 60
4.4. Đánh chỉ mục cho data warehouse 61
4.4.1. Tổng quan về chỉ mục 61
4.4.2. Chỉ mục B-tree 61
4.4.3. Chỉ mục Bitmap 62
4.4.4. Chỉ mục cho bảng sự kiện 63
4.4.5. Chỉ mục cho bảng chiều 64
4.5. Các kỹ thuật cải tiến hiệu năng 64
4.5.1. Phân loại dữ liệu 64
4.5.2. Phân cụm dữ liệu 66
4.5.3. Xử lý song song 66
CHƯƠNG 5: XÂY DỰNG DATA WAREHOUSE CHO EVN 67
5.1. Tổng quan về hệ thống 67
5.1.1. Giới thiệu về EVN 67
5.1.2. Mô hình tập đoàn 68
5.1.3. Một số thống kê tình hình sản xuất hiện tại 69
5.1.4. Yêu cầu về hệ thống hỗ trợ ra quyết định 70
5.1.5. Mô tả hệ thống 70
5.2. Minh chứng trên số liệu EVN 73
5.2.1. Định hướng 73
5.2.2. Mô tả hệ thống mức khái niệm 74
5.2.3. Mô tả hệ thống mức chi tiết 78
5.2.4. Giới thiệu một số công cụ hỗ trợ 83
5.2.5 Kết quả thực hiện 87
CHƯƠNG 6: KẾT QUẢ VÀ BÀN LUẬN 90
6.1. Các kết quả đạt được 90
6.2. Hướng nghiên cứu tiếp theo 91
TÀI LIỆU THAM KHẢO 92
8
DANH SÁCH HÌNH VẼ
Hình 1: Tính chủ đề trong data warehouse 16
Hình 2: Tích hợp trong data warehouse 16
Hình 3: Dữ liệu không thay đổi 17
Hình 4: Các thành phần trong data warehouse 18
Hình 5: Các chu kỳ nạp dữ liệu 20
Hình 6: Thành phần phân phát thông tin 21
Hình 7: Khối dữ liệu đa chiều 23
Hình 8: Data warehouse và OLTP 26
Hình 9: Kiến trúc data warehouse 28
Hình 10: Mô hình cơ bản của data warehouse 29
Hình 11: Mô hình data warehouse và tiến trình thu thập dữ liệu 30
Hình 12: Mô hình đầy đủ về data warehouse 30
Hình 13: Hộp lập phương cho lược đồ dữ liệu 3 chiều 33
Hình 14: Hộp lập phương cho lược đồ dữ liệu 4 chiều 33
Hình 15: Mạng mô tả dữ liệu đa chiều 34
Hình 16: Lược đồ hình sao 35
Hình 17: lược đồ bông tuyết 36
Hình 18: lược đồ chòm sao 37
Hình 19: Các mức phân cấp dữ liệu 40
Hình 20: Mức phân cấp chiều thời gian 40
Hình 21: Mô hình khối dữ liệu 44
Hình 22: Các toán tử trong OLAP 45
Hình 23: Mô hình MOLAP 47
Hình 24: Mô hình ROLAP 48
Hình 25: Sự tương quan giữa MOLAP và ROLAP 49
Hình 26: Kiến trúc triển khai OLAP 50
Hình 28: Quy trình thiết kế 53
Hình 29: Các thành phần của mô hình vật lý 54
9
Hình 30: Tương quan giữa mô hình logic và mô hình vật lý 55
Hình 27: Các bước thiết kế vật lý 55
Hình 31: Mô hình lưu trữ dữ liệu 58
Hình 32: Cấu trúc của chỉ mục B-Tree 62
Hình 33: Cấu trúc của chỉ mục Bitmap 62
Hình 34: Mô hình tập đoàn EVN 68
Hình 35: Sơ đồ tổng quan data warehouse EVN 72
Hình 36: Lược đồ dữ liệu trong data warehouse EVN 73
Hình 37: chiều dữ liệu trong data warehouse EVN 74
Hình 38: Ánh xạ thu thập dữ liệu cho chiều thời gian: DTHOIGIAN 82
Hình 39: Ánh xạ thu thập dữ liệu cho chiều công ty: DCONGTY 82
Hình 40: Ánh xạ thu thập dữ liệu cho bảng sự kiện: CMIS_CUBE 83
Hình 41: Báo cáo đa chiều từ data warehouse EVN đã xây dựng 87
Hình 42: Báo cáo đa chiều với toán tử khoan sâu cho chiều thời gian 88
Hình 43: Sơ đồ đa chiều mô tả sản lượng tiêu thụ điện của các điện lực 88
Hình 44: Dữ liệu và sơ đồ cho một báo cáo đa chiều 89
DÁNH SÁCH BẢNG BIỂU
Bảng 1: Data warehouse và kho dữ liệu tác nghiệp 24
Bảng 2: Data warehouse và kho dữ liệu hướng chủ đề 25
Bảng 3: Khung nhìn dữ liệu đa chiều đơn giản 32
Bảng 4: Khung nhìn dữ liệu đa chiều chi tiết 32
Bảng 5: Đặc trưng cơ bản của phân tích đa chiều 43
Bảng 6: Đặc trưng nâng cao của phân tích đa chiều 44
Bảng 7: Bảng so sánh giữa MOLAP và ROLAP 50
Bảng 8- Công suất thiết kế các nhà máy điện 69
Bảng 9: Sản lượng điện sản xuất theo nguồn 70
Bảng 10: Cấu trúc bảng BCSLDGNHAN 78
Bảng 11: Cấu trúc bảng BCHOPDPTAI 78
Bảng 12: Cấu trúc bảng BCCTKH_CTO 79
10
Bảng 13: Cấu trúc bảng BCCTNOI_BO 79
Bảng 14: Cấu trúc bảng BCBDTHEODA 80
Bảng 15: Cấu trúc bảng BCBDTGCTPT 80
Bảng 16: Cấu trúc bảng BCBDTH_GIA 80
Bảng 17: Cấu trúc bảng BCSTHUDUTD 81
Bảng 18: Cấu trúc bảng DTHOIGIAN 81
Bảng 19: Cấu trúc bảng DCONGTY 81
Bảng 20: Cấu trúc bảng CMIS_CUBE 82
BẢNG TỪ VIẾT TẮT
Từ hoặc cụm từ
Từ viết tắt
Từ tiếng Anh
Cơ sở dữ liệu
CSDL
Database
Kho dữ liệu
DW
Data Warehouse
Kho dữ liệu hướng chủ đề
DM
Datamart
Xử lý giao dịch trực tuyến
OLTP
Online Transaction Processing
Xử lý phân tích trực tuyến
OLAP
Online Analytical Processing
Hệ hỗ trợ ra quyết định
DSS
Decission Suport System
Kho dữ liệu tác nghiệp
ODS
Operational Data Store
Hệ CSDL quan hệ
RDBMS
Relational DB Management System
CSDL đa chiều
MDDB
Multidimentional Database
OLAP đa chiều
MOLAP
Multidimentional OLAP
OLAP quan hệ
ROLAP
Relational OLAP
Bảng sự kiện
Bảng sự
kiện
Fact table
Bảng chiều
Bảng
Dimension
Dimension table
Điện lực Việt Nam
EVN
Electricity Of Viet Nam
11
TỪ KHOÁ
Data warehouse, Data mining, Data store, OLAP, data warehouse, xử lý phân tích trực
tuyến.
12
MỞ ĐẦU
Nhiều thập kỷ nay đã chứng kiến sự phát triển vô cùng mạnh mẽ của công nghệ thông
tin. Điều này dẫn tới sự xâm nhập mạnh mẽ của công nghệ thống tin vào tất cả các lĩnh
vực trong cuộc sống hiện đại từ kinh tế, kỹ thuật cho đến đời sống xã hội. Các doanh
nghiệp ngày nay hầu như không thể tồn tại được nếu không có các hệ thống công nghệ
thống tin tác nghiệp hàng ngày. Các hệ thống đó có nhiệm vụ thực hiện các công việc
lưu trữ, xử lý tính toán, thống kê dữ liệu theo các nghiệp vụ hàng ngày của doanh
nghiệp.
Từ năm 1990 khi mà nghiệp vụ trở lên phức tạp hơn, mô hình của công ty không chỉ ở
trong một vùng đơn lẻ mà được triển khai, nhân rộng ra nghiều khu vực trên thế giới,
sự cạnh tranh giữa các doanh nghiệp càng trở lên khắc nghiệt trong khi các hệ thống
thông tin hiện tại chỉ cung cấp các thông tin tác nghiệp hàng ngày mà chưa thể cung
cấp những thông tin mang tính hỗ trợ các nhà quản lý trọng việc hoạch định chiến lược
và ra quyết định. Từ những yêu cầu này, việc xây dựng hệ thống theo các phương pháp
truyền thống không đáp ứng được và khái niệm kho dữ liệu (data warehouse) ra đời.
Mặc dù lí thuyết hoàn chỉnh về data warehouse đã ra đời từ năm 1992 nhưng ý tưởng
về nó đã có từ rất lâu và đã được thử thách qua thời gian.
Ở Việt Nam, trong những năm trở lại đây, xuất hiện nhu cầu cần xây dựng data
warehouse nhằm mục đích khám phá tri thức từ các dữ liệu sẵn có để nâng cao năng
lực cạnh tranh của các doanh nghiệp trong thời kỳ nền kinh tế đang phát triển mạnh
mẽ. Vì lý do này, tôi chọn hướng nghiên cứu "Thiết kế data warehouse và ứng
dụng trong hệ thống thông tin ngành điện" làm đề tài nghiên cứu cho luận văn của
mình. Luận văn trình bày là một khảo cứu về data warehouse, bao gồm từ lý thuyết
đến cách xây dựng triển khai hệ thống. Trên cơ sở đi sâu vào tìm hiểu, phân tích các
đặc điểm, thành phần trong data warehouse và tình hình thực tại của doanh nghiệp
kinh doanh điện ở nước ta hiện nay là môi trường mà tôi đang làm việc, tôi đã lựa
chọn việc xây dựng một data warehouse cho ngành điện làm phần triển khai thực tế
của đề tài.
Ngoài phần mở đầu và kết luận, cấu trúc nội dung của luận văn bao gồm có 5
chương được tóm tắt như sau:
Chương 1: tập trung trình bày tổng quan về data warehouse và một số khái
niệm liên quan, đồng thời làm rõ các đặc điểm của data warehouse để phân biệt với
các hệ thống. Phần tiếp theo của chương là trình bày về kiến trúc nhằm làm rõ hơn
những lý thuyết đã trình bày trong chương 1 này.
13
Chương 2: giới thiệu về kiến trúc, các mô hình, kiến trúc của data warehouse,
các khái niệm về mô hình dữ liệu đa chiều. Mô hình dữ liệu đa chiều, đây là một
hướng tiếp cận chính trong data warehouse.
Chương 3: trình bày công cụ OLAP, từ định nghĩa đến các đặc trưng quan trọng
và nổi bật của OLAP, các phép toán trong công cụ này là gì và những mô hình nào tồn
tại trong OLAP, các ưu, nhược điểm và việc lựa chọn khi triển khai.
Chương 4: trình bày về quy trình thiết kế vật lý data warehouse. Chương này
mô tả các bước thiết kế cũng như xem xét, cân nhắc các yêu tố, công nghệ hiện nay
được sử dụng để lưu trữ và tối ưu cho data warehouse.
Chương 5: trình bày về cách thức xây dựng data warehouse, minh chứng trên
data warehouse của EVN. Mô hình data warehouse tổng quan cho EVN và các bước
triển khai chi tiết cụ thể cũng như các kết quả đạt được sau quá trình thiết kế, triển
khai.
Phần kết luận, phần này trình bày tóm tắt về các nội dung thực hiện trong luận văn
này, đồng thời đưa ra những vấn đề nghiên cứu tiếp theo cho tương lai.
14
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ DATA WAREHOUSE
1.1. Giới thiệu
Thời gian qua, sự phát triển mạnh mẽ của công nghệ thống tin đang nhanh chóng đưa
hệ thống thông tin kỹ thuật số ngự trị hệ thống thông tin văn bản cổ truyền và tạo điều
kiện quan trọng cho quá trình toàn cầu hoá. Công nghệ thông tin làm thay đổi mạnh
mẽ từ hạ tầng kinh tế xã hội tới các phong cách và văn hóa của cá nhân và tổ chức.
Tri thức đang trở thành sức mạnh quan trọng nhất trong hệ thống kinh tế xã hội. Các
chuyên gia đánh giá rằng hiện nay các giá trị sản phẩm dựa trên tri thức chiếm hơn nửa
tổng sản phẩm quốc nội (Gross Domestic Product - GDP) ở các nước công nghiệp.
Tài nguyên của hoạt động tri thức và tư duy hệ thống là thông tin, nó cần phải được
cung cấp đầy đủ, kịp thời theo đa chiều, đặc biệt là thông tin trái chiều, cá biệt. Trong
kỷ nguyên bùng nổ thông tin thì không thể theo dõi hết mà phải biết bao quát nó để
đảm bảo hệ thống phát triển. Một cách để xử lý lượng thông tin lớn là chú ý cao tới
thông tin bất thường. Các bất ổn hoặc cơ hội để có ý tưởng mới thường xuất phát từ
các xem xét thông tin bất thường này.
Nhiều thập kỷ nay đã chứng kiến sự phát triển vô cùng mạnh mẽ của công nghệ thống
tin. Điều này dẫn tới sự xâm nhập mạnh mẽ của công nghệ thống tin vào tất cả các lĩnh
vực trong cuộc sống hiện đại từ kinh tế, kỹ thuật cho đến đời sống xã hội. Các doanh
nghiệp ngày nay hầu như không thể tồn tại được nếu không có các hệ thống công nghệ
thống tin tác nghiệp hàng ngày. Các hệ thống đó có nhiệm vụ thực hiện các công việc
lưu trữ, xử lý tính toán, thống kê dữ liệu theo các nghiệp vụ hàng ngày của doanh
nghiệp.
Từ năm 1990 khi mà nghiệp vụ trở lên phức tạp hơn, mô hình của công ty không chỉ ở
trong một vùng đơn lẻ mà được triển khai, nhân rộng ra nghiều khu vực trên thế giới,
sự cạnh tranh giữa các doanh nghiệp càng trở lên khắc nghiệt và các hệ thống thông tin
hiện tại chỉ cung cấp các thông tin tác nghiệp hàng ngày mà chưa thể cung cấp những
thông tin mang tính hỗ trợ các nhà quản lý trọng việc kinh doanh, hoạch định chiến
lược và ra quyết định. Trong việc điều hành, xử lý công việc, các nhà quản lý thường
không chỉ quan tâm chi tiết đến những cái gì xảy ra trong doanh nghiệp mà còn muốn
biết tại sao sao như vậy. Các yêu cầu trả lời được các dự đoán trong tương lai khi thay
đổi các chính sách, chiến lược là yêu cầu hết sức cần thiết.
Trong quá trình xử lý dữ liệu nhờ trợ giúp của các hệ thống thông tin, các nhà quản lý
thường mong muốn có các câu trả lời từ các câu hỏi như: "Những cái gì đã xảy ra?",
"Tại sao nó lại xảy ra như vậy?" và "Khả năng sẽ xảy ra tiếp theo là như thế nào?"
15
Với các yêu cầu như vậy, việc xây dựng hệ thống theo các phương pháp truyền thống
không đáp ứng được và cần phải có một hệ thống thông tin mới trả lời được các câu
hỏi nghiệp vụ mà các nhà doanh nghiệp đưa ra.
Khái niệm data warehouse đã ra đời từ đây với mục đích đáp ứng được các yêu cầu cơ
bản như sau:
Tối ưu hoá cơ sở dữ liệu cho mục đích báo cáo, phân tích dữ liệu
Tổng hợp và kết nối dữ liệu từ các nguồn hệ thống khác nhau
Lập ra các báo cáo nhanh và dễ dàng hơn
Giảm chi phí khi đưa ra các báo cáo so với cách xây dựng hệ thống khác theo
phương pháp truyền thống
Đưa ra cái nhìn tổng quát về doanh nghiệp dựa trên dữ liệu được tích hợp từ
nhiều nguồn khác nhau
Hỗ trợ việc ra quyết định dựa trên dữ liệu hiện tại và dữ liệu lịch xử
1.2. Khái niệm về data warehouse
Khối lượng dữ liệu từ các nguồn tăng nhanh, đòi hỏi ta phải có sự lựa chọn và tổ chức
dữ liệu hợp lý để phục vụ cho việc tạo nên các quyết định chiến lược, đặc biệt là các
quyết định trong điều hành tổ chức từ cấu trúc lưu trữ đó. Để có các CSDL theo từng
chủ đề cho hệ hỗ trợ ra quyết định (DSS) và thực hiện phân tích trực tuyến nhằm khám
phá tri thức trong các tổ chức và doanh nghiệp người ta thường xây dựng ra kho dữ
liệu (Data warehouse) tách khỏi các CSDL tác nghiệp. Có nhiều cách định nghĩa data
warehouse (DW) nên khó có một định nghĩa chính xác. Dưới đây là định nghĩa DW
của W. H. Inmon được nhiều người sử dụng.
Khái niệm về data warehouse được phát triển khi mà các chuyên gia về IT nhận ra
rằng cấu trúc của dữ liệu phục vụ cho việc tạo báo cáo trên các giao dịch là khác với
cấu trúc dữ liệu phục vụ cho việc phân tích dữ liệu.
Vậy data warehouse là gì?
William H. Inmon [22] định nghĩa như sau: "data warehouse là tập hợp các dữ liệu
tích hợp, hướng chủ đề, không thay đổi và gắn với thời gian được thiết kế để cung cấp
các thông tin cần cho việc ra quyết định".
Đây là một định nghĩa ngắn gọn, nhưng cô đọng và dễ hiểu. Định nghĩa này bao hàm
đầy đủ các đặc điểm chính của data warehouse. Từ định nghĩa này dễ nhận thấy có 4
đặc điểm chính được thể hiện ở đây là: hướng chủ đề, tính tích hợp, dữ liệu không thay
đổi và dữ liệu gắn với thời gian và mang tính lịch xử.
Dữ liệu có tính hướng chủ đề: Hướng chủ đề trong data warehouse được thể hiện rõ
khi so sánh với các ứng dụng ở hệ thống tác nghiệp. Trong hệ thống tác nghiệp, dữ
16
liệu được tổ chức để hỗ trợ các quy trình nghiệp vụ xác định, vì vậy, cùng một dữ liệu
có thể được tổ chức theo các cách khác nhau tại các hệ thống khác nhau. Ví dụ, một
khách hàng có thể xuất hiện trong nhiều bảng khác nhau trong các cơ sở dữ liệu tác
nghiệp nhưng trong data warehouse chỉ có một đối tượng khác hàng trong toàn bộ hệ
thống thể hiện những đặc điểm cơ bản của môi trường nghiệp vụ. Theo tiêu chí này,
data warehouse được thiết kế để giúp người sử dụng phân tích dữ liệu theo một chủ đề
nào đó mà nằm rải rác tại nhiều nơi nhằm đưa ra một bức tranh đẩy đủ về chủ đề cần
hỗ trợ.
Chẳng hạn, để biết tình hình buôn bán của công ty, chúng ta sẽ xây dựng một data
warehouse tập trung vào vấn đề buôn bán. Khi sử dụng data warehouse này, chúng ta
sẽ trả lời được câu hỏi “Khách hàng nào mua nhiều đồ gia dụng nhất trong quí 3 năm
2000?”.
Hình 1: Tính chủ đề trong data warehouse
Dữ liệu được tích hợp: Đây là đặc điểm quan trọng nhất của data warehouse. Dữ
liệu được lấy dữ liệu từ các nguồn dữ liệu bên ngoài vào trong data warehouse theo
một định dạng đã được xác định. Trong quá trình lấy dữ liệu, nó phải kiểm tra xem có
sự xung đột dữ liệu hay không. Quá trình này đảm bảo dữ liệu trong data warehouse
được lưu trữ theo một cấu trúc thống nhất, toàn vẹn.
Hình 2: Tích hợp trong data warehouse
17
Không thay đổi dữ liệu: Các dữ liệu trong hệ thống tác nghiệp thường chỉ được dữ
lại trong một khoảng thời gian ngắn (từ 3 đến 6 tháng) với mục đích phục vụ các các
hoạt động nghiệp vụ hàng ngày. Tuy nhiên, trong data warehouse dữ liệu được lưu trữ
dài hơn nhằm phục vụ cho mục đích phân tích dữ liệu. Sau khi dữ liệu được đưa vào
data warehouse, chúng ta sẽ không nên thay đổi chúng nhằm đảm bảo tính nguyên
thuỷ của dữ liệu. Bởi vì mục đích của data warehouse là giúp chúng ta phân tích cái gì
đã xảy ra.
Hình 3: Dữ liệu không thay đổi
Dữ liệu gắn với thời gian và mang tính lịch xử: data warehouse bao gồm một khối
lượng lớn các dữ liệu lịch xử. Dữ liệu được lưu trữ thành một loạt các phiên bản, mỗi
phiên bản phản ánh dữ liệu tại một thời điểm nhất định. Chúng được sử dụng để phân
tích xu hướng phát triển kinh doanh của doanh nghiệp.
Tóm lại, data warehouse là một kho dữ liệu thống nhất được thiết kế trên một mô hình
dữ liệu vật lý hỗ trợ việc ra quyết định nhằm giúp các doanh nghiệp tạo ra các quyết
định chiến lược. Data warehouse cũng thường được xem như là một kiến trúc được tạo
dựng bởi nhiều nguồn dữ liệu hỗn độn khác nhau có đặc tính hỗ trợ các truy vấn có
cấu trúc và phi cấu trúc, các báo cáo phân tích và khả năng tạo ra quyết định.
So với các hệ thống tác nghiệp của doanh nghiệp thì data warehouse có các đặc trưng
khác nổi bật như sau:
Dữ liệu có tính chất chỉ đọc.
Dữ liệu được cập nhật một cách định kỳ.
Dữ liệu được thiết kế cho vấn đề phân tích, báo cáo nghiệp vụ.
Dữ liệu được trích từ nhiều ứng dụng khác nhau.
Dễ sử dụng và cho phép các người sử dụng lấy dữ liệu phân tích dễ dàng.
Người sử dụng có thể tương tác trực tiếp với hệ thống mà không cần có kiến
thức nhiều của IT.
Thể hiện được những thông tin hiện thời và thông tin lịch xử.
18
1.3. Lợi ích sử dụng data warehouse
Định nghĩa về data warehouse đề cập ở trên cho thấy mục đích chính của nó là việc sử
dụng cho mục đích phân tích và ra quyết định. Tuy nhiên có một câu hỏi đặt ra là: “Tại
sao không thực hiện việc xử lý phân tích trực tuyến trên các CSDL tác nghiệp thay vì
việc tiêu tốn thời gian, tiền của để tạo ra một data warehouse riêng biệt?”. Một số lý
do giải thích cho vấn đề này như sau:
Data warehouse được thiết kế để có thể đáp ứng tốt cho các yêu cầu truy vấn dữ liệu
tổng thể khi chạy trên một lượng dữ liệu lớn.
Cấu trúc của data warehouse thường là dễ định hướng hơn, và dễ hiểu hiểu khi so sánh
với các ứng dụng tác nghiệp đối với những người dùng cuối. Nó không giống với các
với các cơ sở dữ liệu quan hệ mà mục tiêu chính là thiết kế ra để xử lý các giao dịch.
Với data warehouse, người dùng có thể truy vấn về các hoạt động riêng rẽ của doanh
nghiệp. Ví dụ như người dùng có thể so sánh dữ liệu hàng hóa với dữ liệu kiểm kê
hàng ngày ngay cả khi các dữ liệu này được lưu ở những cơ sở dữ liệu khác nhau với
các cấu trúc khác nhau.
Những câu truy vấn để lấy được dữ liệu cần thiết thường trở lên rất phức tạp trong cơ
sở dữ liệu chuẩn hóa nhưng lại rất đơn giản và hiệu quả trong môi trường data
warehouse và một điểm mạnh nữa là data warehouse còn giúp giảm tải trên các hệ
thống giao dịch khi có yêu cầu về báo cáo, phân tích.
Việc tách biệt cơ sở dữ liệu tác nghiệp và data warehouse là dựa trên cấu trúc và mục
đích sử dụng khác nhau. Các hệ thống hỗ trợ ra quyết định thì cần data warehouse bởi
một đặc điểm hết sức quan trọng là dữ liệu mang tính lịch xử còn các cơ sở dữ liệu tác
nghiệp thì chỉ lưu dữ liệu theo một chu kỳ nào đó.
1.4. Các thành phần trong môi trường data warehouse
Hình bên dưới chỉ ra các thành phần cơ bản trong môi trường data warehouse.
Hình 4: Các thành phần trong data warehouse
19
Theo hình vẽ này, Môi trường data warehouse bao gồm các thành phần sau: khối các
nguồn dữ liệu, khối tạo dựng data warehouse, thành phần lưu trữ dữ liệu, thành phần
phân phát thông tin, thành phần siêu dữ liệu (metadata), thành phần quản lý và kiểm
soát và thành phần ứng dụng.
1.4.1. Khối các nguồn dữ liệu
Là một thành phần mấu chốt trong hệ thống data warehouse. Nó có thể chia thành 4
loại như sau:
Dữ liệu tác nghiệp: Đây là loại dữ liệu được lấy từ các hệ thống tác nghiệp khác nhau
trong doanh nghiệp. Dựa trên nhưng yêu cầu thông tin trong data warehouse, ta phải
chọn ra các loại dữ liệu từ các hệ thống tác nghiệp này. Trong quá trình xử lý dữ liệu
này, ta sẽ gặp cùng một loại dữ liệu nhưng được lưu ở nhiều định dạng khác nhau và ở
các hệ quản trị cơ sở dữ liệu khác nhau. Đặc trưng nổi bật của loại dữ liệu này là sự
không tương đồng vì vậy, thách thức lớn nhất là việc làm sạch, chuẩn hoá dữ liệu
trước khi đưa và lưu trữ trong data warehouse.
Dữ liệu nội bộ: Trong các tổ chức, người sử dụng lưu giữ các bảng tính riêng, tài liệu
riêng và đôi khi là cả một cơ sở dữ liệu của phòng ban. Chúng cần thiết phải được
chuyển đổi và lưu giữ trong data warehouse.
Dữ liệu lịch xử: Trong các hệ thống tác nghiệp, bạn thường xuyên phải lấy ra dữ liệu
cũ và lưu trữ nó ra các tệp trên hệ thống và đôi khi dữ liệu này được loại bỏ sau một
khoảng thời gian do nghiệp vụ của hệ thống quy định. Theo cách đề cập ở trên. Data
warehouse có chức năng lưu trữ dữ liệu lịch xử nhằm mục đích phân tích dữ liệu theo
lịch xử. Theo cách này bạn phải tìm kiếm thông tin trong tập dữ liệu lịch xử này và
phụ thuộc vào yêu cầu dữ liệu của data warehouse để trích lọc và lưu trữ chúng.
Dữ liệu ngoài: Là loại dữ liệu không do các hệ thống tác nghiệp của doanh nghiệp tạo
ra nhưng góp phần quan trọng cho mục đích phân tích dữ liệu. Ví dụ như data
warehouse cho một công ty cho thuê xe hơi có chứa dữ liệu về kế hoạch sản xuất hiện
tại của các hãng sản xuất xe hơi đầu bảng.
1.4.2. Khối tạo dựng data warehouse
Sau khi trích chọn dữ liệu từ các hệ thống tác nghiệp khác nhau, dữ liệu cần phải được
làm sạch trước khi lưu trữ vào data warehouse. Các dữ liệu trích chọn này đến từ nhiều
nguồn khác nhau cần được chuyển đổi theo định dạng để lưu trữ nhằm thuận lợi cho
việc truy vấn và phân tích dữ liệu.
Ba chức năng chính cần được thực hiện trong thành phần tạo dựng dữ liệu này là trích
lọc dữ liệu, truyền đổi và đẩy dữ liệu vào hệ thống lưu trữ của data warehouse.
20
Trích lọc dữ liệu: Chức năng này thực hiện với một lượng lớn dữ liệu. Vì vậy, cần
phải lựa chọn một kỹ thuật thích hợp cho mỗi một loại dữ liệu nguồn. Dữ liệu ở các
nguồn có thể nằm trong một hệ quản trị cơ sở dữ liệu hoặc là một mô hình dữ liệu
phân cấp hoặc đôi khi là các tệp với định dạng khác nhau trên hệ thống.
Trích lọc dữ liệu đòi hỏi vấn đề quản lí thời gian tốt và hiệu năng trích lọc dữ liệu.
Trong mọi phương thức trích lọc thì các siêu dữ liệu đóng một vai trò quan trọng. Dữ
liệu cần thiết được hiển thị là dữ liệu được định nghĩa trong siêu dữ liệu điều khiển
tiến trình này. Dữ liệu sau khi được trích từ nhiều nguồn khác nhau được đưa vào một
kho tạm để xử lí rồi mới thực sự được đưa vào data warehouse.
Chuyển đổi dữ liệu: Trong các vấn đề về triển khai hệ thống, chuyển đổi dữ liệu là
một phần quan trọng. Nó có nhiều vấn đề và thách thức hơn quá trình trích lọc dữ liệu.
Trong phần chuyển đổi dữ liệu, bạn cần phải thực hiện một số các công việc riêng biệt.
Trước tiên, dữ liệu được trích từ các nguồn khác nhau cần được làm sạch. Việc làm
sạch này không chỉ làm đúng dữ liệu mà nó còn giải quyết một số xung đột của dữ liệu
từ nguồn như việc làm đúng dữ liệu giữa mã nước hay mã bưu điện. Một kiểu xung
đột khác như đưa ra giá trị mặc định cho những dữ liệu bị thiếu, loại bỏ việc trùng giá
trị.
Chuyển đổi dữ làm là chuyển đổi dữ liệu thành một thể thống nhất và đồng bộ. Tiến
trình này kiểm tra tính toàn vẹn của dữ liệu và sau đó tạo ra các trường chỉ mục, khoá
chính.
Sau quá trình chuyển đổi dữ liệu, ta đã có được một tập hợp dữ liệu đã được làm sạch,
chuẩn hoá và là những dữ liệu khái quát hệ thống. Bước tiếp theo là chuyển dữ liệu
này vào data warehouse.
Nạp dữ liệu: Khi đã xây dựng xong thiết kế về tạo dựng data warehouse, cần phải nạp
dữ liệu vào cấu trúc lưu trữ của data warehouse. Việc nạp dữ liệu ban đầu cho data
warehouse sẽ di chuyển một lượng lớn dữ liệu từ nhiều nguồn khác nhau và tốn rất
nhiều thời gian. Khi data warehouse đã đi vào vận hành, công việc tiếp theo là chỉ nạp
những dữ liệu đã thay đổi tại các nguồn dữ liệu kể từ lần nạp dữ liệu gần nhất. Hình
bên dưới minh hoạ một số kiểu thông thường cho quá trình nạp dữ liệu
Hình 5: Các chu kỳ nạp dữ liệu
21
1.4.3. Thành phần lưu trữ dữ liệu
Thành phần lưu trữ dữ liệu trong data warehouse là một cái kho riêng biệt. Các hệ
thống tác nghiệp của doanh nghiệp phục vụ các hoạt động tác nghiệp hằng ngày của
doanh nghiệp và chỉ lưu dữ liệu hiện hành còn với data warehouse thì dữ liệu được cấu
trúc, lưu trữ theo định dạng chuẩn hoá cao nhằm mục đích tạo quy trình xử lý nhanh
và hiệu quả. Ngoài ra, data warehouse cần có kích thước lớn để lưu trữ dữ liệu lịch xử.
Một điểm khác nữa là dữ liệu trong data warehouse được cấu trúc hoá sao cho phù hợp
với mục đích phân tích dữ liệu. Dưới đây là một số đặc điểm sử dụng vận hành môi
trường data warehouse với thành phần lưu dữ liệu này.
Các hàm sử dụng tiêu tốn nhiều thời gian
Việc nạp dữ liệu ban đầu thao tác với một lượng lớn dữ liệu
Chu kỳ lấy dữ liệu do nghiệp vụ quy định
1.4.4. Thành phần phân phát thông tin
Hình 6: Thành phần phân phát thông tin
Trong doanh nghiệp, mỗi người dùng cần những thông tin phân tích khác nhau. Thành
phần này bao gồm nhiều phương pháp phân phát thông tin khác nhau nhằm cung cấp
thông tin để truyền thông rộng rãi giữa các người dùng. Hình vẽ trên chỉ ra các phương
pháp phân phát thông tin khác nhau trong môi trường data warehouse. Báo cáo phi cấu
trúc (ad hoc) là những mẫu báo cáo được định nghĩa trước phục vụ cho những người
dùng mới, bình thường không quan trọng. Phương pháp truy vấn phức tạp (complex
queries), phân tích dữ liệu đa phương tiện (MD Analysis), phân tích thông kê
(Statistical Analysis) phục vụ cho những user quan trọng có hiểu biết về nghiệp vụ.
EIS phục vụ cho những nhà quản lý cấp cao. Một vài data warehouse cung cấp dữ liệu
cho các ứng dụng khai phá dữ liệu.
1.4.5. Thành phần siêu dữ liệu
Siêu dữ liệu (metadata) trong data warehouse là khái niệm giống với từ điển dữ liệu
hay là mục lục dữ liệu trong hệ quản trị cơ sở dữ liệu. Trong từ điển dữ liệu, ta lưu
22
thông tin về cấu trúc dữ liệu logic, thông tin về các files, địa chỉ, thông tin về chỉ mục
Từ điển dữ liệu chứa thông tin dữ liệu về dữ liệu trong cơ sở dữ liệu.
Cũng giống như vậy, thành phần siêu dữ liệu là dữ liệu định nghĩa về dữ liệu trong
data warehouse nhằm trả lời các câu hỏi có liên quan đến dữ liệu. Thành phần này
được sử dụng để xây dựng, quản lý và duy trì data warehouse.
Siêu dữ liệu trong data warehouse có thể phân ra thành 3 loại chính như sau:
Siêu dữ liệu tác nghiệp
Siêu dữ liệu trích chọn và chuẩn hoá dữ liệu
Siêu dữ liệu người dùng
1. Siêu dữ liệu tác nghiệp
Do dữ liệu từ data warehouse đến từ nhiều nguồn khác nhau của doanh nghiệp. Các hệ
thống nguồn dữ liệu này có các cấu trúc dữ liệu khác nhau, các phần tử lưu trữ dữ liệu
cho data warehouse có độ dài cũng như kiểu thành phần là khác với phần tử của dữ
liệu nguồn. Trong việc thu thập dữ liệu nguồn, cần phải tách hoặc nhóm dữ liệu của
các bản ghi để phù hợp với yêu cầu lưu dữ liệu trong data warehouse. Các siêu dữ liệu
tác nghiệp là loại thông tin lưu tất cả các thông tin này của các nguồn dữ liệu tác
nghiệp của doanh nghiệp.
2. Siêu dữ liệu trích chọn và chuẩn hoá dữ liệu
Siêu dữ liệu trích chọn và chuẩn hoá lưu dữ liệu về việc trích lọc dữ liệu từ các nguồn
khác nhau, các thông tin về thứ tự trích chọn, phương pháp trích chọn, nguyên tắc
nghiệp vụ cho việc trích chọn dữ liệu. Như vậy, loại dữ liệu này chứa đựng tất cả các
thôn tin về biến đổi dữ liệu trong quá trình thao tác với dữ liệu.
3. Siêu dữ liệu người dùng
Là loại dữ liệu cung cấp cho người dùng khả năng tìm kiếm thông tin về data
warehouse, là dữ liệu về dữ liệu, nhằm trả lời câu hỏi ai, cái gì, khi nào, tại sao, như
thế nào về dữ liệu.
1.4.6. Thành phần quản lý và kiểm soát
Thành phần này trong kiến trúc data warehouse nằm ở lớp trên cùng so với các thành
phần khác theo hình vẽ số 4 mô tả ở trên. Nó phối hợp cùng với các dịch vụ và hoạt
động trong data warehouse nhằm kiểm soát việc truyền thông dữ liệu và chuyển dữ
liệu vào trong cấu trúc lưu trữ dữ liệu data warehouse. Thành phần này tương tác với
thành phần siêu dữ liệu để thực hiện quản lý và kiểm soát các hàm thông qua nguồn
thông tin siêu dữ liệu.