BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
TRƯƠNG THỊ DIỄM
XÂY DỰNG HỆ THỐNG TRÍCH LỌC DỮ LIỆU
CHO KHO DỮ LIỆU VÀ ỨNG DỤNG TRONG
ĐIỀU TRA THỦY SẢN ĐỐI VỚI DỊCH HẠI
TRÊN TÔM VÀ CÁ
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Cần Thơ – 2010
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
TRƯƠNG THỊ DIỄM
XÂY DỰNG HỆ THỐNG TRÍCH LỌC DỮ LIỆU
CHO KHO DỮ LIỆU VÀ ỨNG DỤNG TRONG
ĐIỀU TRA THỦY SẢN ĐỐI VỚI DỊCH HẠI
TRÊN TÔM VÀ CÁ
Chuyên ngành: HỆ THỐNG THÔNG TIN
Mã số: 60 48 05
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Người hướng dẫn khoa học
Ts. PHẠM THỊ XUÂN LỘC
Cần Thơ - 2010
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này được hồn thành trên kết quả nghiên cứu của tơi.
Các cơng việc nghiên cứu và nội dung thực hiện trong luận văn chưa từng được nộp
để lấy bằng cấp từ một trường nào; ngoại trừ phần lý thuyết và các kết quả từ các
cơng trình khác được ghi rõ trong phần tài liệu tham khảo của luận văn.
Cần Thơ, ngày 10 tháng 03 năm 2010
Ký tên
Trương Thị Diễm
Trang i
LỜI CẢM ƠN
Đề tài “Xây dựng hệ thống trích lọc dữ liệu cho kho dữ liệu và ứng dụng
trong điều tra thủy sản đối với dịch hại trên tôm và cá” đến nay đã được hoàn
thành sau một thời gian tìm hiểu và thực hiện. Để đạt được kết quả như hơm nay,
ngồi sự cố gắng của bản thân em nhận được rất nhiều sự giúp đỡ của thầy cô, gia
đình và bạn bè.
Em xin chân thành nói lời cảm ơn đến các thầy cô trường Đại Học Cần Thơ đã
cung cấp cho em nhiều kiến thức quý báu trong những năm qua. Và đặc biệt là sự
tận tình hướng dẫn của cô Phạm Thị Xuân Lộc đã hướng dẫn em trong suốt thời
gian qua. Cô đã cung cấp kiến thức, truyền kinh nghiệm, cho lời khuyên và động
viên em trong suốt quá trình thực hiện luận văn.
Xin cám ơn cha, mẹ, các anh em trong gia đình đã hỗ trợ, lo lắng và động viên.
Đồng thời xin chân thành cảm ơn các anh, chị trong lớp Cao học k14 đã động viên,
giúp đỡ em trong quá trình thực hiện luận văn này.
Xin chúc thầy cô nhiều sức khỏe, gặt hái nhiều thành cơng trong sự nghiệp
giảng dạy của mình và đào tạo ra nhiều nhân tài cho đất nước.
Học viên Trương Thị Diễm, MSHV 250725
Lớp Cao học Hệ thống thông tin K14
Trang ii
MỤC LỤC
#"
LỜI CAM ĐOAN ................................................................................................... i
LỜI CẢM ƠN ........................................................................................................ ii
MỤC LỤC............................................................................................................. iii
DANH MỤC HÌNH .............................................................................................. vi
DANH MỤC TỪ VIẾT TẮT............................................................................... vii
ABSTRACT ....................................................................................................... viii
TÓM TẮT ............................................................................................................. ix
CHƯƠNG 1: GIỚI THIỆU................................................................................. 1
1.1 Mở đầu....... ............................................................................................. 1
1.1.1 Đặt vấn đề .................................................................................... 1
1.1.2 Hướng giải quyết ......................................................................... 1
1.1.3 Mục đích nghiên cứu của đề tài................................................... 2
1.1.4 Đối tượng và phạm vi nghiên cứu ............................................... 3
1.1.5 Ý nghĩa thực tiễn của đề tài ......................................................... 3
1.2 Các vấn đề liên quan ............................................................................... 3
1.2.1 Trong nước .................................................................................. 4
1.2.2 Ngồi nước .................................................................................. 4
1.3 Các nội dung chính.................................................................................. 5
CHƯƠNG 2: TỔNG QUAN VỀ KHO DỮ LIỆU............................................. 6
2.1 Lịch sử phát triển kho dữ liệu.................................................................. 6
2.2 Các giai đoạn tiến triển cơ bản của kho dữ liệu ...................................... 8
2.3 Các định nghĩa về kho dữ liệu................................................................. 8
2.4 Các đặc điểm của kho dữ liệu ................................................................. 9
2.4.1 Hướng chủ đề (Subject Oriented) ............................................. 10
2.4.2 Tích hợp (Integrated) ................................................................ 10
2.4.3 Ổn định (Nonvolatile) ............................................................... 11
2.4.4 Thay đổi theo thời gian (Time Variant) .................................... 11
2.5 Mục đích của kho dữ liệu ...................................................................... 13
2.6 Những thành phần cơ bản của kho dữ liệu............................................ 13
2.6.1 Hệ thống hoạt động nguồn......................................................... 14
2.6.2 Vùng dữ liệu tạm ....................................................................... 14
2.6.3 Biểu diễn dữ liệu........................................................................ 16
2.6.4 Công cụ truy cập dữ liệu............................................................ 18
Trang iii
2.6.5 Siêu dữ liệu (Metadata) ............................................................. 18
CHƯƠNG 3: THIẾT KẾ KHO DỮ LIỆU THEO MƠ HÌNH CHIỀU ........ 20
3.1 Lý do sử dụng mơ hình chiều trong xây dựng kho dữ liệu ................... 20
3.2 Các khái niệm cơ bản trong mơ hình chiều........................................... 20
3.2.1 Bảng sự kiện .............................................................................. 21
3.2.2 Bảng chiều ................................................................................. 23
3.3 Chiều thời gian ...................................................................................... 27
3.4 Sự kết hợp bảng sự kiện và bảng chiều................................................. 27
3.4.1 Lược đồ hình sao (Star schema) ................................................ 28
3.4.2 Lược đồ hình bơng tuyết (Snowflake schema) .......................... 29
3.4.3 Lược đồ chòm sao (constellation schema) ................................ 30
3.5 Các bước của quá trình thiết kế mơ hình chiều ..................................... 32
3.6 Giới thiêu mơ hình dữ liệu đa chiều...................................................... 32
3.6.1 Khái niệm cơ sở dữ liệu đa chiều .............................................. 33
3.6.2 Xử lý phân tích trực tuyến (OLAP)........................................... 33
3.6.3 Các thao tác của OLAP.............................................................. 34
CHƯƠNG 4: QUÁ TRÌNH TRÍCH XUẤT, CHUYỂN ĐỔI VÀ NẠP
DỮ LIỆU................................................................................... 36
4.1 Giới thiệu quá trình ETL ....................................................................... 36
4.2 Các cách tiếp cận ETL........................................................................... 36
4.3 Trích xuất (Extraction) ......................................................................... 38
4.3.1 Xem xét chung ........................................................................... 38
4.3.2 Trích dữ liệu từ hệ thống hoạt động .......................................... 39
4.3.2.1 Ánh xạ dữ liệu logic từ hệ thống nguồn vào kho
dữ liệu ............................................................................ 40
4.3.2.2 Các phương pháp trích xuất logic .................................. 42
4.3.3 Trích dữ liệu từ các hệ thống tập tin .......................................... 47
4.4 Chuyển đổi (Transformation) ............................................................... 47
4.5 Nạp (Loading) ...................................................................................... 50
4.5.1 Nạp bảng chiều .......................................................................... 50
4.5.2 Nạp bảng sự kiện ....................................................................... 56
4.6 ETL theo định kỳ................................................................................... 60
4.7 Siêu dữ liệu ........................................................................................... 61
CHƯƠNG 5: THIẾT KẾ CƠ SỞ DỮ LIỆU NGUỒN VỀ TÔM, CÁ .......... 62
5.1 Giới thiệu chung về Tơm, cá................................................................. 62
5.1.1 Tơm sú ở Sóc Trăng................................................................... 63
5.1.1.1 Đặc điểm sinh học của tôm sú ....................................... 63
Trang iv
5.1.1.2 Chu kỳ sống của tôm ..................................................... 63
5.1.1.3 Mùa vụ nuôi ................................................................... 63
5.1.1.4 Các nguyên nhân phát triển dịch bệnh trên tôm ............ 63
5.1.2 Cá tra, basa ở An Giang............................................................. 64
5.1.2.1 Đặc điểm sinh học.......................................................... 64
5.1.2.2 Các giai đoạn sinh trưởng .............................................. 64
5.1.2.3 Mùa vụ nuôi ................................................................... 64
5.1.2.4 Các mô hình ni cá ...................................................... 64
5.1.2.5 Các ngun nhân phát triển dịch bệnh trên cá ............... 65
5.2 Mô tả hệ thống cơ sở dữ liệu tơm, cá.................................................... 66
5.3 Mơ hình liên kết thực thể (ERD: Entity Relationship Diagram) .......... 67
5.4 Mô hình dữ liệu luận lý (MLD: Model of Logical Data) ..................... 69
5.5 Bảng từ điển dữ liệu ............................................................................. 70
CHƯƠNG 6: THIẾT KẾ KHO DỮ LIỆU TÔM, CÁ .................................... 71
6.1 Xây dựng kho dữ liệu tơm, cá theo mơ hình chiều ............................... 71
6.2 Kho dữ liệu tôm, cá khi thiết kế theo mơ hình chiều ............................ 74
CHƯƠNG 7: ỨNG DỤNG HỆ THỐNG TRÍCH XUẤT, CHUYỂN ĐỔI VÀ
NẠP DỮ LIỆU VÀO KHO DỮ LIỆU.............................................................. 75
7.1 Cấu trúc chương trình............................................................................ 75
7.2 Tạo bảng chiều ...................................................................................... 76
7.3 Tạo bảng sự kiện ................................................................................... 80
7.4 Xem thông tin về siêu dữ liệu ............................................................... 82
CHƯƠNG 8: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................ 83
8.1 Kết quả đạt được.................................................................................... 83
8.2 Hướng phát triển.................................................................................... 84
PHỤ LỤC ............................................................................................................ 85
TÀI LIỆU THAM KHẢO ............................................................................... 104
Trang v
DANH MỤC HÌNH
STT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Tên
Hình 2.1: Vấn đề của sự tích hợp
Hình 2.2: Vấn đề của sự ổn định
Hình 2.3: Vấn đề của sự thay đổi theo thời gian
Hình 2.4: Những phần tử cơ bản của kho dữ liệu
Hình 3.1: Cấu trúc cơ bản của bảng sự kiện
Hình 3.2: Cấu trúc cơ bản của bảng chiều
Hình 3.3: Phân cấp chiều ngày hoặc địa điểm
Hình 3.4: Lược đồ hình sao
Hình 3.5: Lược đồ hình bơng tuyết
Hình 3.6: Lược đồ chịm sao
Hình 4.1: Thực hiện sự chuyển đổi trên vùng tạm
Hình 4.2: Thực hiện sự chuyển đổi trong bộ nhớ
Hình 4.3: ETL và ELT: chọn nơi để thực hiện sự chuyển đổi
Hình 4.4: Trích dữ liệu từ hệ thống hoạt động
Hình 4.5: Ánh xạ dữ liệu logic
Hình 4.6: Trích tồn bộ bảng và trích gia tăng
Hình 4.7: Mơ hình thực thể liên kết về thơng tin cán bộ
Hình 4.8: Bảng chiều cán bộ
Hình 4.9: Thao tác trích lọc thơng tin cán bộ
Hình 4.10: Thơng tin cán bộ sau khi trích lọc
Hình 4.11: Chuyển đổi phân tách
Hình 4.12: Chuyển đổi hợp nhất
Hình 4.13: Chuyển đổi chuẩn hóa
Hình 4.14: Chuyển đổi loại bỏ nhân bản
Hình 4.15: Nạp dữ liệu trực tiếp hoặc qua xử lý ở vùng tạm
Hình 4.16: Cấu trúc cơ bản của bảng chiều
Hình 4.17: Tạo bảng chiều tự động
Hình 4.18: Kết quả nạp dữ liệu vào bảng chiều
Hình 4.19: Chiều thay đổi chậm kiểu 1
Hình 4.20: Chiều thay đổi chậm kiểu 2
Hình 4.21: Chiều thay đổi chậm kiểu 3
Hình 4.22: Luồng dữ liệu trong nạp bảng sự kiện
Hình 4.23: Thao tác trích lọc thơng tin cho bảng sự kiện
Hình 4.24: Thơng tin bảng sự kiện sau khi trích lọc
Hình 4.25: Thay thế khóa tự nhiên bằng khóa đại diện
Hình 4.26: Kết quả dữ liệu sau khi thay khóa tự nhiên bằng
khóa đại diện
Hình 5.1: Mơ hình thực thể liên kết về tơm, cá
Hình 5.2: Mơ hình dữ liệu vật lý về tơm, cá
Hình 6.1 : Mơ hình liên kết thực thể về q trình báo cáo
Hình 6.2: Lược đồ hình sao về sự kiện báo cáo
Hình 6.3: Lược đồ hình sao về sự kiện phiếu điều tra
Hình 6.4: Mơ hình chiều của kho dữ liệu về tôm, cá
Trang vi
Trang
10
11
12
14
22
24
27
28
29
31
36
37
38
39
41
42
43
43
44
46
47
48
48
49
50
51
52
52
53
54
55
56
57
58
59
69
68
70
72
73
73
74
DANH MỤC TỪ VIẾT TẮT
#"
ETL
Extract-Transform-Load
DWH
Data WareHouse (Kho dữ liệu)
DASD
Direct Access Storage Device (Thiết bị lưu trữ truy cập trực
ERD
Entity Relationship Diagram (Mơ hình thực thể liên kết)
MLD
Model of Logical Data (Mơ hình dữ liệu luận lý)
FK
Foreign Key
NK
Natural Key
3NF
Third-Normal-Form (hình thức chuẩn thứ 3)
SCD
Slowly Changing Dimensions (Chiều thay đổi chậm)
OLTP
Online Transaction Processing (Xử lý giao dịch trực tuyến)
KDL
Kho dữ liệu
CSDL
Cơ sở dữ liệu
ĐBSCL
Đồng bằng sông Cửu Long
tiếp)
Trang vii
ABSTRACT
In this thesis, the basic concepts and components of data warehouse are
introduced. The building of data warehouse structure is also described according to
the dimension model. The purpose of the thesis is to research and to construct an
Extract-Transform-Load (ETL) system. The ETL system is to build data warehouse
of fish and shrimp diseases in some areas in Mekong Delta, Vietnam.
The thesis is to research and to construct the ETL system according to two
methods. First, the thesis uses one of ETL tools in the market. Second, the thesis
constructs the application program of ETL system. This program helps designers to
build more easily the data warehouse.
This thesis gives a dynamics: the users can select necessary data from data
source, then the program will automatically create table and load data into the data
warehouse. In additon, the data is also saved automatically into the Metadata
database.
Trang viii
TÓM TẮT
Trong luận văn, những khái niệm và những thành phần chủ yếu của kho dữ liệu
được giới thiệu. Việc xây dựng cấu trúc của kho dữ liệu được thiết kế theo mơ hình
chiều. Mục đích của luận văn là nghiên cứu và xây dựng hệ thống trích xuất, chuyển
đổi và nạp dữ liệu (ETL) vào kho. Hệ thống được áp dụng để xây dựng kho dữ liệu
về bệnh tôm và cá ở một vài vùng ở đồng bằng sông Cửu Long.
Luận văn nghiên cứu và xây dựng hệ thống ETL cho kho dữ liệu theo hai
phương pháp. Trước tiên, luận văn dùng một trong những công cụ ETL sẵn có trên
thị trường. Cách thứ hai là xây dựng chương trình ứng dụng thực hiện quá trình
ETL. Luận văn giúp những người thiết kế xây dựng kho dữ liệu được dễ hơn.
Luận văn cung cấp tính động: người dùng có thể chọn những dữ liệu cần từ cơ
sở dữ liệu nguồn, sau đó chương trình sẽ tự động tạo bảng và nạp dữ liệu vào kho.
Thêm vào đó, dữ liệu cũng được lưu tự động vào siêu dữ liệu.
Trang ix
CHƯƠNG 1: GIỚI THIỆU
1.1 Mở đầu
1.1.1 Đặt vấn đề
Đồng bằng sông Cửu Long (ĐBSCL) là một vùng đất ngập nước, điển hình với
chế độ ngập lũ, ngập mặn và hệ thống sơng rạch chằng chịt, có các hệ sinh thái rừng
ngập mặn, hệ sinh thái rừng tràm và các hệ sinh thái nơng nghiệp rất phát triển.
ĐBSCL có tiềm năng to lớn trong phát triển nuôi trồng thủy sản nước mặn, nước lợ
và nước ngọt thuộc vùng hạ lưu sông Mê Công.
Trong những năm qua, nuôi trồng thủy sản đã trở thành thế mạnh kinh tế rất
quan trọng ở ĐBSCL và trong cả nước. Năm 2005, diện tích ni trồng thủy sản
toàn khu vực là 680.200 ha với sản lượng thủy sản khoảng 983.384 tấn. Năm 2007
là 1.100.000 ha với sản lượng đạt 1.268.000 tấn, bằng khoảng 70% sản lượng nuôi
trồng thủy sản của cả nước. Kim ngạch xuất khẩu thủy sản của cả nước đạt 3,792 tỷ
USD, trong đó ĐBSCL đạt trên 60,52% giá trị kim ngạch xuất khẩu thủy sản của cả
nước. [17]
Tổng giá trị kim ngạch xuất khẩu thuỷ sản đến tháng 10 năm 2009 đạt 3,488 tỷ
USD. Trong đó, tỷ trọng trong xuất khẩu thủy sản: cá tra và cá basa chiếm 50,4% về
lượng và 32,7% về giá trị; tôm chiếm 15,9% về khối lượng và 36,9% về giá trị. [18]
Các số liệu nầy cho thấy ngành thủy sản ngày càng đóng vai trị quan trọng
trong nền kinh tế quốc dân và là một trong những lĩnh vực đang được Chính phủ
đầu tư phát triển. Định hướng phát triển chung của nuôi trồng thủy sản Việt Nam là
thúc đẩy sự phát triển của nhiều mơ hình nuôi với các mức độ thâm canh khác nhau
như quảng canh, quảng canh cải tiến, bán thâm canh và thâm canh.
Tuy nhiên, như một quy luật tất yếu khi hoạt động thủy sản tăng thì nguy cơ
dịch bệnh cũng sẽ tăng, điều này được lý giải là do mức độ thâm canh ngày càng
cao, thả nuôi nhiều vụ trong năm làm cho tình trạng mơi trường q tải như chất
lượng nước xấu, nhiệt độ nước khơng thích hợp và khơng có quản lý chặt chẽ làm
cho nguồn bệnh lây lan khó kiểm sốt. Do đó, dẫn đến dịch bệnh trên thủy sản ngày
càng tăng.
1.1.2 Hướng giải quyết
Trang 1
Dịch bệnh trên thủy sản phát triển và lan truyền rất nhanh nếu chúng ta khơng
phịng trừ một cách kịp thời các dịch bệnh sẽ phát tán toàn vùng. Thêm vào đó sự
khắt khe về chất lượng và an tồn vệ sinh thực phẩm khi gia nhập vào WTO đòi hỏi
người nơng dân phải sử dụng phương pháp phịng bệnh là chính.
Ngày nay cơng nghệ thơng tin phát triển rất nhanh, việc sử dụng cơng nghệ
thơng tin khơng cịn xa lạ gì với mọi người, khơng chỉ ở thành thị mà ở nhiều vùng
nông thôn đã sử dụng công nghệ thông tin để phục vụ cho nông nghiệp. Tại các
Trung tâm Khuyến nông – Khuyến ngư, Chi cục Thủy sản và cả các nhóm kỹ thuật
viên của từng địa phương cũng đã sử dụng công nghệ thông tin rất hiệu quả. Hàng
tuần các kỹ thuật viên sẽ gởi một bản báo cáo về tình hình ni thủy sản trong phạm
vi của mình quản lý đến các cấp lãnh đạo.
Tuy nhiên, hầu hết các bản báo cáo tuần, tháng và năm thường được các cấp
lãnh đạo xem qua vài lần và sau đó đưa vào lưu trữ. Do đó, khối lượng dữ liệu của
các bản báo cáo này theo thời gian đã trở thành một khối lượng dữ liệu khổng lồ.
Hàng triệu byte dữ liệu “bị khóa” trên máy tính. Hậu quả là, các quyết định quan
trọng thường được đưa ra không dựa trên dữ liệu giàu thông tin lưu trữ trong cơ sở
dữ liệu mà dựa trên cảm tính của người đưa ra quyết định.
Thêm vào đó với nhu cầu ngày càng cao hơn, con người khơng bằng lịng với
những dữ liệu đơn giản thu thập được từ các kỹ thuật trước đây. Họ ln có nhu cầu
phát hiện những quy luật ẩn chứa trong khối lượng dữ liệu khổng lồ. Do đó, cần có
một cấu trúc lưu trữ thích hợp cho khối lượng dữ liệu lớn nhằm phục vụ tốt cho các
q trình phân tích, khai thác dữ liệu tiếp sau. Kho dữ liệu ra đời với mục đích phục
vụ cho những cơ sở dữ liệu như vậy.
Xuất phát từ thực tế đó, việc xây dựng kho dữ liệu về dịch bệnh trên tôm, cá là
một nhu cầu cần thiết. Kho dữ liệu được xây dựng nhằm cung cấp nguồn dữ liệu
phong phú phục vụ tốt cho các quá trình phân tích, dự báo và mơ phỏng về tình hình
dịch bệnh trên thủy sản. Từ những yêu cầu thực tế đã thúc đẩy em thực hiện đề tài
“Xây dựng hệ thống trích lọc dữ liệu cho kho dữ liệu và ứng dụng trong điều tra
thủy sản đối với dịch hại trên tơm và cá”.
1.1.3 Mục đích nghiên cứu của đề tài
Đề tài nhằm xây dựng hệ thống trích xuất dữ liệu nguồn, chuyển đổi và nạp dữ
liệu (ETL) vào kho dữ liệu. Ứng dụng hệ thống ETL vào việc tạo kho dữ liệu về
dịch bệnh trên tôm, cá. Việc xây dựng hệ thống ETL được thực hiện theo hai cách:
trước tiên dùng một trong những cơng cụ có sẵn trên thị trường, cách thứ hai là viết
chương trình ứng dụng ETL.
Trang 2
Đề tài hướng đến việc cung cấp công cụ ETL mang tính động: người dùng có
thể trực tiếp chọn lựa những dữ liệu nguồn cần thiết từ giao diện, chương trình sẽ tự
động tạo các bảng và nạp dữ liệu vào kho dữ liệu. Thông tin về cấu trúc kho dữ liệu
vừa tạo cũng được lưu trữ tự động vào siêu dữ liệu.
1.1.4 Đối tượng và phạm vi nghiên cứu
Đề tài nghiên cứu lý thuyết chung về kho dữ liệu, xây dựng kho dữ liệu theo mơ
hình chiều và các giai đoạn thực hiện q trình trích xuất, chuyển đổi và nạp dữ liệu
vào kho.
Đồng thời đề tài cũng nghiên cứu về các thông tin liên quan đến tôm sú, cá tra,
cá basa tại các tỉnh ở đồng bằng sông Cửu Long nói chung và một số huyện thí
điểm của Tỉnh Sóc Trăng và An Giang nói riêng như: đặc điểm sinh học, các hình
thức ni hiện nay và các vấn đề bệnh trên tôm, cá. Từ các thông tin tìm hiểu được
đề tài tiến hành xây dựng cơ sở dữ liệu nguồn để phục vụ cho quá trình ETL để tạo
kho dữ liệu.
Để xây dựng kho dữ liệu đề tài tiến hành nghiên cứu một trong những công cụ
ETL có sẵn trên thị trường đó là dịch vụ tích hợp của SQL Server (Microsoft SQL
Server Integration Services). Tuy nhiên, đề tài cũng tiến hành xây dựng chương
trình ứng dụng ETL mang tính động nhằm cung cấp cho việc xây dựng kho dữ liệu
được dễ dàng hơn.
1.1.5 Ý nghĩa thực tiễn của đề tài
Sự thành cơng của đề tài có thể cung cấp một cơng cụ ETL động, nó giúp cho
việc xây dựng kho dữ liệu được dễ dàng hơn. Thêm vào đó nó cũng có thể xây dựng
kho dữ liệu về dịch bệnh trên tơm, cá ở ĐBSCL nói chung và tại một số huyện ở hai
tỉnh An Giang và Sóc Trăng nói riêng.
Hơn nữa, đề tài cũng là một trong nhiều nhánh của đề tài cấp nhà nước “Nghiên
cứu xây dựng các hệ thống thông tin hỗ trợ việc phòng chống dịch bệnh cây trồng
và thuỷ sản cho vùng kinh tế trọng điểm” của Ts. Lê Quyết Thắng (đề tài được chia
ra nhiều giai đoạn: thiết kế xây dựng cơ sở dữ liệu cho hệ thống, xây dựng hệ
chuyên gia hỗ trợ, xây dựng cổng thông tin, mô phỏng, dự báo,…). Do đó, việc xây
dựng kho dữ liệu là nhằm cung cấp một lượng dữ liệu tri thức cho q trình phân
tích và mơ phỏng tiếp sau của dự án.
1.2 Các vấn đề liên quan
Trước khi tiến hành nghiên cứu đề tài đặt ra, chúng ta tiến hành tìm hiểu các vấn
đề liên quan về kho dữ liệu đã được như hiện như thế nào đối với trong và ngoài
nước.
Trang 3
1.2.1 Trong nước
Trước sự phát triển và những thuận lợi của kho dữ liệu trong những năm gần
đây việc xây dựng kho dữ liệu nói chung cũng đã được nhiều cơ quan, tổ chức thực
hiện nghiên cứu và xây dựng. Một số dự án có ứng dụng kho dữ liệu như:
- Ngày 24 tháng 05 năm 2008, hội đồng bảo vệ đề cương và tuyển chọn chủ
nhiệm đề tài do ông Nguyễn Văn Liệu, Phó tổng cục trưởng Tổng cục Thống
kê, Chủ tịch Hội đồng chủ trì đã tiến hành họp để xét duyệt đề cương và
tuyển chọn chủ nhiệm đề tài “Nghiên cứu xây dựng kho dữ liệu đầu vào của
Tổng cục Thống kê”. Mục tiêu tổng quát của đề tài là xây dựng mơ hình, cấu
trúc kho dữ liệu nhằm lưu trữ, quản lý, khai thác và sử dụng có hiệu quả các
nguồn dữ liệu đầu vào của Tổng cục Thống kê. [19]
- Tháng 7 năm 2008 Tổng cục Hải quan có kế hoạch xây dựng, triển khai gói
thầu: “Thiết kế tổng thể kho dữ liệu hàng hóa xuất nhập khẩu, xây dựng kho
dữ liệu tác nghiệp và cung cấp báo cáo thống kê định kỳ”.[20]
- Tháng 1 năm 2009 Tổng cục Thuế có kế hoach đấu thầu tổng thể gói thầu
“Kho cơ sở dữ liệu (Data Warehouse) Dự án Hiện đại hoá quản lý thuế sử
dụng vốn vay Ngân hàng thế giới”. Thời gian tổ chức đấu thầu là năm 2011.
Thời gian thực hiện hợp đồng từ năm 2011 đến năm 2013. [21]
1.2.2 Ngoài nước
Trên thế giới ngày càng có nhiều dự án, cơng trình nghiên cứu, sản phẩm phần
mềm được thực hiện mà có ứng dụng việc xây dựng kho dữ liệu. Sau đây là một số
dự án có ứng dụng việc xây dựng kho dữ liệu:
- VITALNET [22]: là một phần mềm ứng dụng data warehouse, cho phép truy
cập và phân tích bộ dữ liệu y tế vô cùng lớn. Kho dữ liệu Vitalnet lưu trữ
khối lượng lớn dữ liệu về sinh sản, tử vong hoặc các dữ liệu về ung thư và dữ
liệu về tình hình dân số.
Qua các thơng tin trên, chúng ta thấy rằng kho dữ liệu đã được ứng dụng trong
hầu hết mọi lĩnh vực của đời sống. Việc xây dựng kho dữ liệu đã trở thành một
phần không thể thiếu trong các dự án lớn.
Tuy nhiên, cho đến nay vẫn chưa có dự án nào xây dựng kho dữ liệu về dịch
bệnh trên tơm, cá. Do đó nhu cầu xây dựng kho dữ liệu này là một nhu cầu cần thiết
hiện nay.
Bên cạnh đó, việc xây dựng kho dữ liệu lại là một cơng việc khơng đơn giản địi
hỏi cần phải có những nhóm chun mơn về lĩnh vực kho dữ liệu. Việc xây dựng
Trang 4
thành công kho dữ liệu bao gồm rất nhiều công việc, một trong những cơng việc
khơng thể thiếu đó là xây dựng q trình trích xuất dữ liệu nguồn, chuyển đổi và
nạp dữ liệu vào kho.
Ngày nay, trên thị trường đã cung cấp nhiều công cụ hỗ trợ cho quá trình ETL.
Nó cung cấp nhiều thuận lợi trong tất cả các giai đoạn của q trình ETL từ việc
trích xuất, làm sạch dữ liệu, chuyển đổi, gỡ lỗi và nạp dữ liệu vào kho dữ liệu. Tuy
nhiên, các công cụ ETL này đều phải tương ứng với các hệ cơ sở dữ liệu của từng
cơng ty. Ví dụ, cơng cụ Microsoft SQL Server Integration của công ty Microsoft
hoặc Oracle Warehouse Builder của công ty Oracle.
Xuất phát từ thực tế trên, nên đề tài tiến hành xây dựng một phần mềm ứng
dụng thực hiện q trình ETL mang tính động nhằm phục vụ việc xây dựng kho dữ
liệu được dễ hơn.
1.3 Các nội dung chính
Đề tài được chia thành các nội dung chính sau:
Chương 1: Giới thiệu chung về đề tài.
Chương 2: Giới thiệu tổng quan về kho dữ liệu. Các khái niệm cơ bản và các
thành phần chủ yếu của kho dữ liệu.
Chương 3: Giới thiệu thiết kế kho dữ liệu theo mơ hình chiều. Giới thiệu các
khái niệm cơ bản về bảng chiều, bảng sự kiện trong mơ hình chiều.
Chương 4: Q trình trích xuất, chuyển đổi và nạp dữ liệu vào kho dữ liệu. Giới
thiệu các bước thực hiện trong quá trình ETL
Chương 5: Thiết kế cơ sở dữ liệu nguồn về tơm, cá. Giới thiệu tình hình nuôi và
những đặc điểm chung của tôm, cá ở các tỉnh Sóc Trăng, An Giang.
Chương 6: Thiết kế kho dữ liệu kho tơm, cá.
Chương 7: Ứng dụng chương trình ETL vào xây dựng kho dữ liệu cho tôm, cá.
Chương 8: Kết luận và hướng phát triển.
Trang 5
CHƯƠNG 2: TỔNG QUAN VỀ KHO DỮ LIỆU
2.1 Lịch sử phát triển kho dữ liệu
Trong những năm đầu của thập niên 1960s, thế giới của sự tính tốn gồm những
ứng dụng cá nhân mà nó được điều khiển bởi các tập tin gốc (master files) . Các tập
tin gốc được lưu trữ vào băng từ. Băng từ thì tốt cho việc lưu trữ và truy xuất tuần
tự. Tuy nhiên, thời gian cho sự truy xuất tồn bộ tập tin có thể mất 20 đến 30 phút,
phụ thuộc vào dữ liệu trên tập tin và quá trình được làm.
Trước1970, thời kỳ của kỹ thuật mới cho sự lưu trữ và truy cập dữ diệu bắt đầu
xuất hiện. Trong thập niên 1970 cho thấy sự xuất hiện của lưu trữ đĩa hoặc thiết bị
lưu trữ truy cập trực tiếp (direct access storage device- DASD). Lưu trữ đĩa về cơ
bản khác với lưu trữ băng từ trong đó dữ liệu có thể được truy cập trực tiếp trên một
DASD. Thời gian để định vị một mẫu tin trên DASD có thể được đo trong một phần
nghìn giây.
Với thiết bị lưu trữ truy cập trực tiếp (DASD) dẫn đến một kiểu mới của phần
mềm hệ thống được biết như một hệ thống quản lý cơ sở dữ liệu (database
management system - DBMS). Mục đích của hệ thống quản lý cơ sở dữ liệu là làm
cho nó dễ dàng hơn cho người lập trình để lưu trữ và truy xuất dữ liệu trên một
DASD.
Vào khoảng giữa thập niên 1970, xử lý giao dịch trực tuyến (online transaction
processing - OLTP) có thể làm cho dữ liệu được truy cập nhanh hơn, mở đầu toàn
bộ triển vọng mới cho doanh nghiệp và xử lý. Với sự xuất hiện của OLTP máy tính
có thể được dùng cho các tác vụ mà trước đây không thể thực hiện được, bao gồm
các hệ thống đặt chỗ trước, các hệ thống thu ngân của ngân hàng…
Trước thập niên 1980, nhiều kỹ thuật mới như PCs và fourth-generation
languages (4GLs) bắt đầu xuất hiện. Người dùng cuối bắt đầu giả định một vai trị
mà trước đây khơng có – trực tiếp điều khiển dữ liệu và hệ thống – vai trò trước đây
dành riêng cho các bộ xử lý dữ liệu chuyên nghiệp. Với kỹ thuật PCs và 4GL dẫn
đến nhiều khái niệm có thể được làm với dữ liệu hơn so với xử lý các giao dịch trực
tuyến. Hệ thống thông tin quản lý (Management Information System - MIS), nó
được gọi trong những ngày đầu, cũng có thể được cài đặt. Ngày nay được biết như
hệ hỗ trợ quyết định (decision support systems - DSS), MIS là quá trình được dùng
để các nhà quản lý ra các quyết định. Trước đây, dữ liệu và kỹ thuật được dùng
Trang 6
riêng để ra các quyết định hoạt động chi tiết. Cơ sở dữ liệu độc lập không thể phục
vụ cho cả hai xử lý giao dịch hoạt động và xử lý phân tích ở cùng thời gian.
Những năm cuối thập niên 1980, khái niệm của kho dữ liệu xuất hiện khi các
nhà nghiên cứu IBM là Barry Devlin và Paul Murphy phát triển “kho dữ liệu doanh
nghiệp” (“business data warehouse”). Về bản chất, khái niệm kho dữ liệu dự định
cung cấp một mơ hình kiến trúc cho luồng dữ liệu từ các hệ thống hoạt động đến
môi trường hỗ trợ quyết định. Quy trình tập hợp, làm sạch và tích hợp dữ liệu từ
nhiều nguồn khác nhau là điển hình trong phần nhân bản cho mỗi kho dữ liệu.
Sự phát triển chủ yếu trong những năm đầu của kho dữ liệu là[15]:
- 1960s - General Mills và Dartmouth College, trong một dự án nghiên cứu
chung, phát triển các thuật ngữ chiều(dimensions) và sự kiện (facts).
- 1970s - ACNielsen và IRI cung cấp chợ dữ liệu chiều cho việc bán lẻ
(dimensional data marts for retail sales.)
- 1983 - Teradata giới thiệu một hệ thống quản lý cơ sở dữ liệu đặc biệt được
thiết kế cho hỗ trợ quyết định.
- 1988 - Barry Devlin và Paul Murphy xuất bản bài báo “kiến trúc cho doanh
nghiệp và hệ thống thông tin”(“An architecture for a business and
information systems”) trong IBM Systems Journal nơi họ giới thiệu thuật ngữ
“kho dữ liệu doanh nghiệp”.
- 1990 – Các hệ thống Red Brick giới thiệu Red Brick Warehouse, một hệ
thống quản lý cơ sở dữ liệu đặc tả cho kho dữ liệu.
- 1991 – Các giải pháp Prism giới thiệu Prism Warehouse Manager, phần mềm
cho sự phát triển kho dữ liệu.
- 1991 - Bill Inmon xuất bản quyển sách xây dựng kho dữ liệu (Building the
Data Warehouse).
- 1996 - Ralph Kimball xuất bản quyển sách Bộ công cụ kho dữ liệu (The
Data Warehouse Toolkit).
- 1997 - Oracle 8, với sự hỗ trợ cho các truy vấn sao, được phát hành
- 1998 – Microsoft, phát hành dịch vụ phân tích (sau là dịch vụ OLAP) sử
dụng lược đồ kho dữ liệu.
Trang 7
2.2 Các giai đoạn tiến triển cơ bản của kho dữ liệu
Các tổ chức thường bắt đầu với việc dùng kho dữ liệu tương đối đơn giản. Theo
thời gian, việc dùng kho dữ liệu phức tạp hơn đã phát triển. Kho dữ liệu tiến triển
qua nhiều giai đoạn cơ bản có thể được phân biệt như sau[15]:
- Cơ sở dữ liệu hoạt động không trực tuyến (Off line Operational Database):
kho dữ liệu trong giai đoạn khởi tạo được phát triển bởi sự sao chép đơn giản
cơ sở dữ liệu của hệ thống hoạt động đến một máy chủ độc lập nơi q trình
nạp báo cáo khơng ảnh hưởng đến sự thực hiện của hệ thống hoạt động.
- Kho dữ liệu không trực tuyến (Off line Data Warehouse): kho dữ liệu trong
giai đoạn này thì được cập nhật thường xuyên theo chu kỳ thời gian (thường
hàng ngày, hàng tuần hoặc hàng tháng) từ hệ thống hoạt động và dữ liệu
được lưu trong một kiến trúc được thiết kế để dễ dàng cho báo cáo.
- Kho dữ liệu thời gian thực (Real Time Data Warehouse): kho dữ liệu ở giai
đoạn này được cập nhật mỗi lần hệ thống hoạt động thực hiện một giao dịch.
- Kho dữ liệu tích hợp (Integrated Data Warehouse): kho dữ liệu được cập
nhật mỗi lần hệ thống hoạt động thực hiện một giao dịch. Sau đó kho dữ liệu
sinh ra giao dịch hoạt động và gởi trở vào hệ thống hoạt động cho việc dùng
trong hoạt động hàng ngày của tổ chức.
2.3 Các định nghĩa về kho dữ liệu
Việc xây dựng kho dữ liệu ngày càng phát huy được những ích lợi vốn có của
nó nhằm phục tốt hơn cho những nhu cầu tìm hiểu tri thức dữ liệu ngày càng cao
của con người. Do đó đã có nhiều tác giả nghiên cứu về lĩnh vực kho dữ liệu. Mỗi
tác giả nghiên cứu kho dữ liệu theo chun mơn của họ nên từ đó đã xuất hiện nhiều
định nghĩa về kho dữ liệu như sau:
- Theo Bill Inmon [14]: được xem như cha của khái niệm kho dữ liệu. Ông đã
định nghĩa: Kho dữ liệu là một tập hợp dữ liệu hướng chủ đề, tích hợp, thay
đổi theo thời gian và ổn định nhằm hỗ trợ quá trình ra quyết định của nhà
quản lý.
- Theo Ralph Kimball [9]: Kho dữ liệu là một hệ thống trích, làm sạch, chuyển
đổi làm cho thích hợp và chuyển giao dữ liệu nguồn vào kho dữ liệu chiều,
sau đó hỗ trợ cài đặt truy vấn và phân tích cho mục đích ra quyết định.
- Theo Sivakumar Harinath, Stephen Quinn[12]: Kho dữ liệu là một hệ thống
mà nó lấy dữ liệu từ cơ sở dữ liệu của một công ty hoặc các nguồn dữ liệu
Trang 8
khác và chuyển đổi nó vào một cấu trúc có lợi để doanh nghiệp phân tích.
Những phép tính tốn học thường được thực hiện trên dữ liệu được tổ chức
hoặc xây dựng lại nhằm gia tăng sự hữu ích của nó, phục vụ cho doanh
nghiệp ra các quyết định. Cuối cùng, dữ liệu thì được chuẩn bị sẵn để người
dùng cuối truy vấn và phân tích.
Nhìn chung, kho dữ liệu là một lĩnh vực khá hấp dẫn nên đã có rất nhiều tác giả
nghiên cứu về kho dữ liệu. Mỗi tác giả đều nghiên cứu kho dữ liệu theo những lĩnh
vực riêng của họ, do đó mỗi người đã có những cách nhìn khác nhau về kho dữ liệu
nên đã dẫn đến nhiều định nghĩa tương đối khác nhau về kho dữ liệu. Điển hình như
hai tác giả khá nổi tiếng trong lĩnh vực kho dữ liệu là Bill Inmon và Ralph Kimball
có điểm giống và khác nhau như [16]:
- Cả hai ông đều đồng ý rằng kho dữ liệu tích hợp dữ liệu từ nhiều hệ thống
nguồn hoạt động khác nhau.
- Tuy nhiên, trong tiếp cận của Inmon, kho dữ liệu thì được cài đặt vật lý như
kho dữ liệu chuẩn hóa. Trong khi đó tiếp cận của Kimball, kho dữ liệu thì
được cài đặt vật lý trong kho dữ liệu theo mơ hình chiều.
Tóm lại, mỗi tác giả đều có định nghĩa kho dữ liệu theo lĩnh vực chun mơn
của họ nhưng mục đích cuối cùng của kho dữ liệu là phục vụ cho truy vấn và phân
tích. Do đó, nếu chúng ta lưu dữ liệu trong kho dữ liệu với cấu trúc của mơ hình
chuẩn hóa, thì chúng ta vẫn cần phải nạp dữ liệu đó vào kho dữ liệu theo mơ hình
chiều cho mục đích truy vấn và phân tích. Kho dữ liệu chuẩn hóa là một định dạng
tốt để phục vụ cho các hệ thống giao dịch trực tuyến. Nhưng kho dữ liệu chiều mới
là một định dạng tốt hơn để lưu dữ liệu cho mục đích truy vấn nhanh và phân tích
dữ liệu. Vì vậy khi xây dựng kho dữ liệu ta nên xây dựng kho dữ liệu theo dạng mơ
hình chiều để đáp ứng tốt mục đích truy vấn và phân tích.
2.4 Các đặc điểm của kho dữ liệu
Cách phổ biến của giới thiệu kho dữ liệu là xem xét bốn đặc điểm cơ bản của
kho dữ liệu được viết bởi William Inmon: [14]
- Hướng chủ đề (Subject Oriented)
- Tích hợp (Integrated)
- Ổn định (Nonvolatile)
- Thay đổi theo thời gian (Time Variant)
Trang 9
2.4.1 Hướng chủ đề (Subject Oriented)
Dữ liệu trong kho dữ liệu được tổ chức theo các chủ đề chính, phục vụ cho các
tổ chức dễ dàng xác định được những thông tin cần thiết theo yêu cầu. Cách tổ chức
này khác với cách tổ chức dữ liệu theo kiểu chức năng trong hệ thống cũ từ trước
đến nay. Do đó, thay vì chú trọng vào những thao tác và xử lý giao dịch hàng ngày
của một tổ chức, kho dữ liệu tập trung vào việc mơ hình hóa và phân tích dữ liệu hỗ
trợ cho những nhà ra quyết định. Do đó, kho dữ liệu thường cung cấp một khung
nhìn đơn giản và chính xác về một chủ đề cụ thể bằng cách loại trừ những dữ liệu
khơng có ích trong q trình ra quyết định.
2.4.2 Tích hợp (Integrated)
Trong bốn đặc điểm của kho dữ liệu, tích hợp là quan trọng nhất. Kho dữ liệu
thường được xây dựng bằng cách tập hợp dữ liệu từ nhiều nguồn khác nhau, như cơ
sở dữ liệu quan hệ, các tập tin đơn lẻ và những bản ghi giao dịch trực tuyến. Điều
này dẫn đến quá trình tập hợp dữ liệu phải thực hiện các kỹ thuật chuyển đổi, định
dạng lại, sắp xếp, tổng hợp và làm sạch...nhằm đảm bảo sự nhất quán của dữ liệu
trước khi nạp vào kho dữ liệu.
Trong thực tế, khi những nhà thiết kế xây dựng một ứng dụng, họ không bao giờ
xem xét rằng dữ liệu họ thao tác sẽ phải tích hợp với những dữ liệu khác hay không.
Nên sự cân nhất quyết định thường chỉ là một ý kiến tự do. Vì vậy, nhiều ứng dụng
khơng có sự nhất quán về cấu trúc mã hóa, quy ước về tên gọi, thuộc tính vật lý của
dữ liệu, số đo thuộc tính… Mỗi người thiết kế ứng dụng đều tự do làm các quyết
định thiết kế của riêng họ. Kết quả là các ứng dụng khác nhau sẽ có những thiết kế
thường khơng giống nhau.
Vì vậy, khi thiết kế kho dữ liệu cần xem xét đến vấn đề tích hợp dữ liệu. Hình
2.1 minh họa sự tích hợp dữ liệu xảy ra khi dữ liệu chuyển từ môi trường hoạt động
hướng ứng dụng đến kho dữ liệu.
Nguồn 1
Nguồn 2
Nguồn 3
Giới tính
Giới tính
Giới tính
Nam - Nam
Nam - True
Nam - 1
Nữ - Nu
Nữ - False
Nữ - 0
Kho dữ liệu
Giới tính
Nam – True
Nữ - False
Hình 2.1: Vấn đề của sự tích hợp
Trang 10
2.4.3 Ổn định (Nonvolatile)
Một kho dữ liệu luôn luôn là một kho chứa dữ liệu được lưu trữ riêng biệt,
chuyển đổi từ các dữ liệu ứng dụng trong các môi trường hoạt động. Chính do sự
riêng biệt này, một kho dữ liệu khơng cần có các cơ chế xử lý giao dịch, khơi phục
và kiểm sốt sự đồng bộ. Kho dữ liệu thường chỉ yêu cầu hai thao tác trong quá
trình truy cập dữ liệu: nạp dữ liệu ban đầu và truy cập dữ liệu. Hình 2.3 minh họa
tính ổn định của dữ liệu.
Hình 2.2: Vấn đề của sự ổn định [14]
Hình minh họa cho thấy rằng dữ liệu thao tác thường được truy xuất và được
thực hiện một lần một mẫu tin. Dữ liệu thì được cập nhật, chèn, xóa trong mơi
trường hoạt động, nhưng dữ liệu của kho dữ liệu chỉ được nạp và truy cập dữ liệu.
Để thay đổi dữ liệu, khi dữ liệu được nạp vào trong kho dữ liệu, nó được nạp trong
một mẫu tin ảnh (snapshot), định dạng tĩnh. Khi xảy ra sự thay đổi, một mẫu tin ảnh
(snapshot) mới được ghi. Trong cách làm này, mẫu tin lịch sử của dữ liệu đã được
giữ trong kho dữ liệu.
2.4.4 Thay đổi theo thời gian (Time Variant)
Dữ liệu trong các hệ thống ứng dụng hoạt động phải chính xác ở thời điểm truy
nhập cịn kho dữ liệu chỉ cần chính xác trong khoảng thời gian nào đó: dài là 5 đến
10 năm, ngắn là hàng tuần, tháng; khơng u cầu phải chính xác ở thời điểm truy
nhập. Trong một vài trường hợp, mẫu tin được dán tem thời gian (time stamped).
Trong vài trường hợp khác, mẫu tin có ngày giao dịch. Nhưng trong mỗi trường
Trang 11
hợp, có hình thức của đánh dấu thời gian để cho thấy trong suốt thời gian ngắn mẫu
tin nào thì chính xác. Hình 2.3 minh họa dữ liệu thay đổi theo thời gian của kho dữ
liệu có thể biểu diễn trong nhiều cách.
Hình 2.3: Vấn đề của sự thay đổi theo thời gian [14]
Những mơi trường khác nhau thì có những phạm vi thời gian (time horizon)
khác nhau được kết hợp với chúng. Một phạm vi thời gian (time horizon) là khoảng
thời gian dữ liệu được biểu diễn trong môi trường kho. Tập hợp phạm vi thời gian
cho dữ liệu bên trong kho dữ liệu thì lâu hơn nhiều so với dữ liệu đó trong các hệ
thống hoạt động. Một phạm vi thời gian 60 đến 90 ngày thì phổ biến cho các hệ
thống hoạt động. Một phạm vi thời gian 5 đến 10 năm thì phổ biến cho kho dữ liệu.
Do kết quả khác nhau trong phạm vi thời gian, kho dữ liệu chứa dữ liệu lịch sử lâu
hơn các môi trường khác.
Cơ sở dữ liệu hoạt động chứa dữ liệu giá trị hiện hành (current-value data),
hoặc độ chính xác của dữ liệu thì có giá trị như ở chính thời điểm truy cập. Thơng
thường, dữ liệu giá trị hiện hành (current-value data) có thể được cập nhật khi
những điều kiện doanh nghiệp thay đổi. Tuy nhiên, kho dữ liệu thì rất khác dữ liệu
giá trị hiện hành. Dữ liệu của kho dữ liệu có thể được nghĩ đến như các chuỗi thao
tác tinh vi của các mẫu tin ảnh (snapshots), mỗi ảnh lưu giữ ở một thời gian hiện
hành. Hiệu quả của việc tạo bởi một chuỗi các ảnh (snapshots) đó là kho dữ liệu có
một chuỗi lịch sử của các hoạt động và các sự kiện.
Cấu trúc chính của dữ liệu hoạt động có thể có hoặc khơng có chứa một vài
phần tử thời gian, như năm, tháng, ngày… Nhưng cấu trúc chính của kho dữ liệu
ln chứa vài phần tử thời gian. Việc nhúng phần tử thời gian trong mẫu tin kho dữ
liệu có thể dẫn đến nhiều hình thức, như tem thời gian (time stamp) trên mỗi mẫu
Trang 12
tin, tem thời gian cho toàn bộ cơ sở dữ liệu… Các mơi trường khác nhau có những
phạm vi thời gian khác nhau được kết hợp với chúng.
2.5 Mục đích của kho dữ liệu
Một trong những tài sản quan trọng nhất của tổ chức là thơng tin của nó. Tài sản
này luôn luôn được lưu giữ bởi một tổ chức trong hai hình thức: hệ thống hoạt động
về mẫu tin và kho dữ liệu. Crudely nói [4], hệ thống hoạt động về mẫu tin là nơi dữ
liệu nhập vào, và kho dữ liệu là nơi chúng ta lấy dữ liệu ra. Sau đây là những mục
đích cơ bản của kho dữ liệu:
- Kho dữ liệu làm cho thông tin của tổ chức dễ dàng truy cập. Dữ liệu trong
kho dữ liệu được lưu trữ theo cấu trúc của mơ hình chiều. Sử dụng mơ hình
chiều, nhiều người dùng cuối có thể dễ hiểu và điều hướng cấu trúc dữ liệu
và khai thác hoàn toàn dữ liệu.
- Kho dữ liệu biểu diễn nhất quán thông tin của tổ chức. Dữ liệu trong kho dữ
liệu phải tin cậy. Dữ liệu được tập hợp cẩn thận từ nhiều nguồn khác nhau
của tổ chức, được làm sạch, đảm bảo chất lượng và chỉ được lấy ra khi nó
thích hợp với sự sử dụng của người dùng.
- Kho dữ liệu có khả năng thích nghi và linh động thay đổi. Nhu cầu người
dùng, điều kiện doanh nghiệp, dữ liệu và kỹ thuật tất cả chúng đều thay đổi
theo thời gian. Kho dữ liệu phải được thiết kế để xử lý những thay đổi có thể
xảy ra. Những thay đổi kho dữ liệu nên linh động, nghĩa là chúng không làm
mất hiệu lực dữ liệu đang tồn tại.
- Kho dữ liệu là nơi lưu trữ an tồn tài sản thơng tin của tổ chức. Kho dữ liệu
phải điều khiển việc truy cập có hiệu quả thơng tin tin cậy của tổ chức.
- Kho dữ liệu phục vụ cho việc cải tiến ra quyết định. Kho dữ liệu phải có dữ
liệu đúng trong nó để hỗ trợ ra quyết định. Chỉ có một đầu ra đúng từ một
kho dữ liệu: những quyết định được làm sau khi kho dữ liệu biểu diễn tính rõ
ràng của nó.
2.6 Những thành phần cơ bản của kho dữ liệu
Sau đây chúng ta nghiên cứu những thành phần tạo nên môi trường kho dữ liệu.
Nó giúp chúng ta hiểu những thành phần cẩn thận trước khi chúng ta kết hợp chúng
để tạo một kho dữ liệu. Mỗi thành phần phục vụ một chức năng đặc biệt. Chúng ta
cần tìm hiểu ý nghĩa chiến lược của mỗi thành phần và dùng nó như thế nào để có
hiệu quả và thành cơng trong việc tạo kho dữ liệu. Hình 2.4, minh họa các thành
Trang 13
phần chủ yếu của môi trường kho dữ liệu gồm: các hệ thống nguồn hoạt động, vùng
dữ liệu tạm (data staging area), vùng biểu diễn dữ liệu và công cụ truy cập dữ liệu.
Hình 2.4: Những phần tử cơ bản của kho dữ liệu [10]
2.6.1 Hệ thống hoạt động nguồn
Đây là những hệ thống nguồn của mẫu tin mà nó lưu giữ những giao dịch của
doanh nghiệp. Hệ thống nguồn nên được nghĩ đến như thế giới bên ngoài kho dữ
liệu. Những câu hỏi dựa vào hệ thống nguồn thì hạn hẹp, câu hỏi một mẫu tin ở một
thời điểm (one-record-at-a-time) là một phần của luồng giao dịch phổ biến và nhiều
giới hạn trong yêu cầu của chúng trên hệ thống hoạt động.
Hệ thống nguồn thường không được yêu cầu rộng và những cách bất ngờ mà
kho dữ liệu điển hình được u cầu. Hệ thống nguồn ít bảo trì dữ liệu lịch sử, và
nếu bạn có một kho dữ liệu tốt, hệ thống nguồn có thể làm giảm bớt nhiều trách
nhiệm cho việc biểu diễn quá khứ.
2.6.2 Vùng dữ liệu tạm (staging area)
Vùng dữ liệu tạm của kho dữ liệu thường vừa là vùng lưu trữ vừa là một tập hợp
quá trình được tham chiếu đến như quá trình trích xuất, chuyển đổi và nạp dữ liệu
(extract-transformation-load - ETL).
- Vùng dữ liệu tạm tương tự như nhà bếp của một nhà hàng, nơi sản phẩm
thức ăn thô được chuyển đổi thành bữa ăn ngon. Trong kho dữ liệu, dữ liệu
Trang 14