Tải bản đầy đủ (.pdf) (65 trang)

Xây dựng và khai thác kho dữ liệu cước khách hàng tại Công ty Thông tin Viễn thông Điện lực

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.41 MB, 65 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ



PHẠM THỊ ĐÀO




XÂY DỰNG VÀ KHAI THÁC
KHO DỮ LIỆU CƯỚC KHÁCH HÀNG
TẠI CÔNG TY THÔNG TIN VIỄN THÔNG ĐIỆN LỰC





LUẬN VĂN THẠC SĨ













Hà Nội - 2011

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ



PHẠM THỊ ĐÀO




XÂY DỰNG VÀ KHAI THÁC KHO DỮ LIỆU CƯỚC
KHÁCH HÀNG TẠI CÔNG TY THÔNG TIN
VIỄN THÔNG ĐIỆN LỰC


Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.05


LUẬN VĂN THẠC SĨ


Cán bộ hướng dẫn khoa học: TS. Nguyễn Trí Thành








Hà Nội - 2011


3
MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT 5
DANH MỤC HÌNH VẼ 6
DANH MỤC BẢNG 7
MỞ ĐẦU 8
CHƯƠNG 1 TỔNG QUAN VỀ KHO DỮ LIỆU 9
1.1 Giới thiệu bài toán xây dựng kho dữ liệu 9
1.2 Khái niệm chung về kho dữ liệu 10
1.2.1 Định nghĩa kho dữ liệu 10
1.2.2 Sự khác nhau giữa kho dữ liệu và CSDL tác nghiệp 11
1.3 Lịch sử ra đời và vai trò của kho dữ liệu 12
1.3.1 Lịch sử ra đời 12
1.3.2 Vai trò của kho dữ liệu 12
1.4 Kiến trúc tổng thể kho dữ liệu 13
1.5 Kho dữ liệu chủ đề (Datamart) 15
1.6 Các bước cơ bản xây dựng kho dữ liệu 15
1.6.1 Định dạng nguồn dữ liệu 16
1.6.2 Trích chọn dữ liệu 16
1.6.3 Làm sạch và chuyển dạng 16
1.6.4 Nạp, tích hợp vào kho dữ liệu 17
1.6.5 Xây dựng mô hình dữ liệu đa chiều 18
1.7 Ví trí của làm sạch dữ liệu trong quá trình xây dựng kho dữ liệu 22
CHƯƠNG 2 LÀM SẠCH DỮ LIỆU VÀ CÁC GIẢI PHÁP KỸ THUẬT 24

2.1 Khái niệm về làm sạch dữ liệu 24
2.2 Vai trò của quá trình làm sạch dữ liệu 24
2.3 Các vấn đề chất lượng dữ liệu 25
2.3.1 Làm sạch dữ liệu mức đơn nguồn 26
2.3.2 Làm sạch dữ liệu mức đa nguồn 28
2.3.3 Các giải pháp làm sạch dữ liệu 30
CHƯƠNG 3 XÂY DỰNG VÀ KHAI THÁC KHO DỮ LIỆU CƯỚC KHÁCH
HÀNG TẠI CÔNG TY THÔNG TIN VIỄN THÔNG ĐIỆN LỰC 31
3.1 Hiện trạng và yêu cầu 31
3.1.1 Giới thiệu về Công ty Thông tin Viễn thông Điện lực 31
3.1.2 Hiện trạng tổ chức thông tin 31
3.1.3 Hạn chế của các tổ chức thông tin hiện tại 33
3.1.4 Yêu cầu bài toán 33
3.2 Xây dựng kho dữ liệu 34
3.2.1 Giới thiệu công cụ Oracle Warehouse Builder 34
3.2.2 Tạo dữ liệu nguồn 41
3.2.3 Tạo dữ liệu đích 42
3.2.4 Trích chọn, làm sạch, tích hợp, nạp dữ liệu 43
3.2.5 Lược đồ quan hệ giữa các bảng trong kho dữ liệu 52
3.2.6 Xây dựng kho dữ liệu chủ đề 52
3.2.7 Xây dựng khối dữ liệu nhiều chiều 53


4
3.3 Khai thác kho dữ liệu 60
KẾT LUẬN 64
TÀI LIỆU THAM KHẢO 65




5
DANH MỤC CÁC TỪ VIẾT TẮT
STT
Từ viết tắt
Giải nghĩa
1
CSDL
Cơ Sở Dữ Liệu
2
DSS
Decision Support System
3
DWH
Data WareHouse
4
ETL
Extraction, Transformation, Loading
5
KDD
Knowledge Discovery and Data Mining
6
KDL
Kho Dữ Liệu
7
LSDL
Làm Sạch Dữ Liệu
8
OWB
Oracle Warehouse Builder
9

OLAP
Online Analyst Processing
10
OLTP
OnlineTransaction Processing
11
WB
Warehouse Builder


6
DANH MỤC HÌNH VẼ
Hình 1. Đặc trưng của kho dữ liệu 10
Hình 2. Kiến trúc 3 tầng kho dữ liệu 14
Hình 3. Ví dụ lược đồ hình sao 19
Hình 4. Ví dụ lược đồ hình bông tuyết 21
Hình 5. Ví dụ lược đồ chòm sự kiện 21
Hình 6. Ví trí của làm sạch dữ liệu trong quá trình xây dựng kho dữ liệu 22
Hình 7. Phân loại vấn đề chất lượng dữ liệu 26
Hình 8. Ví dụ đa nguồn mức lược đồ và mức thể hiện. 29
Hình 9. Mô hình tổ chức EVNTelecom 31
Hình 10. Hiện trạng tổ chức thông tin tại EVNTelecom 32
Hình 11. Quy trình báo cáo hiện nay tại EVNTelecom 33
Hình 12. Mô hình kho dữ liệu cước khách hàng 34
Hình 13. Các thành phần của OWB 35
Hình 14. Chu kỳ xử lý đảm bảo chất lượng dữ liệu 37
Hình 15. Phân loại quá trình hồ sơ dữ liệu trong Warehouse Builder 39
Hình 16. Các loại hồ sơ dữ liệu 40
Hình 17. Tạo module nguồn 42
Hình 18. Tạo module đích 43

Hình 19. Quy trình xây dựng kho dữ liệu 43
Hình 20. Hồ sơ hóa bảng KHACH_HANG_MB 48
Hình 21. Phân tích thuộc tính CMT, GIOI_TINH 49
Hình 22. Lược đồ quan hệ giữa các bảng trong kho dữ liệu 52
Hình 23. Cấu trúc các kho dữ liệu chủ đề 53
Hình 24. Tạo đối tượng chiều 54
Hình 25. Tạo đối tượng chiều KIEUTHANHTOAN 55
Hình 26. Chọn kiểu lưu trữ 55
Hình 27. Khai báo thuộc tính cho đối tượng chiều 56
Hình 28. Hoàn thành bước tạo đối tượng chiều 56
Hình 29. Tạo các khối dữ liệu 57
Hình 30. Lược đồ hình sao khối phattrien_thuebao 58
Hình 31. Lược đồ hình sao khối doanhthu 58
Hình 32. Lược đồ hình sao khối congno 59
Hình 33. Lược đồ hình sao khối thanhkhoan 59
Hình 34. Giao diện chương trình 60
Hình 35. Báo cáo tăng trưởng thuê bao CDMA 61
Hình 36. Báo cáo tăng trưởng doanh thu CDMA 61
Hình 37. Báo cáo tăng trưởng thuê bao 3G 62
Hình 38. Báo cáo tăng trưởng doanh thu 3G 62
Hình 39. Báo cáo so sánh doanh thu giữa các tháng 63
Hình 40. Báo cáo tình hình thu nợ 63



7
DANH MỤC BẢNG
Bảng 1. Ví dụ về bài toán đơn nguồn - mức lược đồ 27
Bảng 2. Ví dụ về bài toán đơn nguồn - mức thể hiện 28
Bảng 3. Danh sách các bảng trong CSDL 46

Bảng 4. Danh sách các bảng dữ liệu trong được tích hợp 51



8
MỞ ĐẦU
Trong thời đại ngày nay, sự bùng nổ của công nghệ thông tin đã khiến cho nhu cầu
tiếp nhận và xử lý thông tin trở nên cực kỳ bức thiết. Thông tin là vấn đề quan trọng
hàng đầu của các công ty, tổ chức doanh nghiệp. Các hệ thống thông tin được duy trì
tốt sẽ cho phép các công ty có được những quyết định mang tính nghiệp vụ thành
công. Thông tin lại nằm dưới dạng dữ liệu. Bùng nổ thông tin kéo theo tình trạng bùng
nổ dữ liệu. Và mặc dù các hệ thống máy tính đã cố gắng lưu trữ một khối lượng dữ
liệu cực lớn, rất nhiều trường hợp con ngừời vẫn không khai thác được hết tiềm năng
của chúng, có nghĩa là không thể chiết xuất được các thông tin cần thiết ; chỉ có thể
thu được thông tin sau khi tổng kết các dữ liệu theo những hình thức khác nhau. Thông
tin càng sâu thì mức độ và hình thức tổng kết càng phức tạp, nhất là thực hiện trên một
tập dữ liệu lớn.
Một trong những giải pháp tối ưu cho vấn đề này chính là Data Warehouse – Kho
dữ liệu, một hệ thống tích hợp nhiều chức năng giúp đưa ra thông tin cần thiết và hợp
lý cho người dùng. Tuy nhiên, để khai thác được thông tin có hiệu quả, có nghĩa là để
có được thông tin tốt thì điều cần thiết là phải có, duy trì và đảm bảo được chất lượng
dữ liệu. Dữ liệu sạch sẽ là đầu vào lý tưởng cho các hệ thống Kho dữ liệu phục vụ cho
các mục đích khai thác dữ liệu và phát hiện tri thức. Quá trình làm sạch dữ liệu được
coi là giai đoạn tiền xử lý để có được nguồn dữ liệu đảm bảo chất lượng trước khi nạp
vào trong Kho dữ liệu.
Công ty Thông tin Viễn thông Điện lực (EVNTelecom) không nằm ngoài xu
hướng của sự bùng nổ thông tin trên. EVNTelecom kinh doanh các dịch vụ viễn thông
bao gồm dịch vụ cố định, di động, internet…với gần 3 triệu khách hàng và gần 3tr thuê
bao; mỗi tháng phát sinh xấp xỉ 3 triệu hoá đơn cước…Ngoài ra còn các thông tin về
công nợ của khách hàng, thông tin về đối soát và thanh toán cước giữa EVNTelecom

và các nhà cung cấp viễn thông khác. Đây là nguồn dữ liệu phong phú, rất hữu ích cho
việc ra quyết định chiến lược kinh doanh. Tuy nhiên với cách tổ chức hỗn tạp và rời
rạc như hiện nay thì việc khai thác nguồn dữ liệu trên còn nhiều hạn chế.
Xuất phát từ thực tế trên tại EVNTelecom, em quyết định chọn đề tài “Xây dựng
và khai thác khai thác kho dữ liệu cước khách hàng tại Công ty Thông tin Viễn
thông Điện lực”




9
CHƯƠNG 1 TỔNG QUAN VỀ KHO DỮ LIỆU
1.1 Giới thiệu bài toán xây dựng kho dữ liệu
Ngày nay, phần lớn các công ty đều hiểu rằng việc tập hợp và lưu trữ các nguồn dữ
liệu giao dịch là vô cùng có ích. Thực tế cho thấy hầu hết các công ty đều ghi lại các
giao dịch của họ. Dữ liệu được tập hợp trong nhiều năm từ các nguồn khác nhau. Một
vài trong số chúng được lưu trữ trong các máy tính lớn, một vài được lưu trữ trong các
hệ thống cá nhân và một vài trong các ứng dụng client- server . Hơn nữa, mỗi hệ thống
này hầu như là đều được xây dựng và duy trì bởi nhiều người khác nhau. Qua thời
gian lượng dữ liệu trở nên khổng lồ, phân tán và không nhất quán…
Giải pháp tối ưu trong trường hợp này chính là xây dựng kho dữ liệu (KDL).
KDL không chỉ lưu trữ dữ liệu có tính lịch sử mà nó còn là một nền tảng để tích hợp
dữ liệu cực kỳ tốt. KDL giúp các công ty dễ dàng và nhanh chóng tìm kiếm các dữ liệu
lịch sử của họ. Đặc biệt, các công cụ xử lý phân tích trực tuyến (OLAP) trong KDL
cho phép người dùng đưa ra các báo cáo chỉ với các thao tác kích chuột và tìm kiếm
các quá trình thực thi của công ty ở những góc cạnh khác nhau, trong các khoảng thời
gian khác nhau.
Kho dữ liệu đóng vai trò cải thiện tốc độ truy vấn dữ liệu, hỗ trợ việc phân tích,
báo cáo; hỗ trợ phát hiện tri thức và ra quyết định; giúp tăng hiệu suất thực thi.
Mặc dù kho dữ liệu ra đời từ rất lâu (những năm 90 của thế kỷ trước) và có một vai

trò to lớn đối với hoạt động của doanh nghiệp, nhưng tại Việt Nam việc xây dựng kho
dữ liệu mới chỉ được áp dụng tại một số công ty lớn trong một số lĩnh vực (ngân hàng,
viễn thông…)
Công ty thông tin Viễn thông Điện lực (EVNTelecom) là một công ty kinh
doanh các dịch vụ viễn thông bao gồm dịch vụ điện thoại cố đinh, di động, internet,
voip trong nước và quốc tế…EVNTelecom có gần 3 triệu khách hàng và 3 triệu thuê
bao. Mỗi tháng EVNTelecom có xấp xỉ 3 triệu hoá đơn cước và hàng trăm triệu cuộc
gọi chi tiết của khách hàng…Ngoài ra, EVNTelecom còn lưu trữ các thông tin về công
nợ của khách hàng, thông tin về đối soát và thanh toán cước giữa EVNTelecom và các
nhà cung cấp viễn thông khác. Đây là nguồn dữ liệu phong phú, rất hữu ích cho việc ra
quyết định chiến lược kinh doanh. Tuy nhiên với cách tổ chức hỗn tạp và rời rạc như
hiện nay thì việc khai thác nguồn dữ liệu trên còn nhiều hạn chế.
Chính vì vậy, nhu cầu xây dựng và khai thác kho dữ liệu cước khách hàng tại
EVNTelecom rất cấp thiết. Đây chính là bài toán sẽ được nghiên cứu trong luận văn và
triển khai thực tế tại EVNTelecom.


10
1.2 Khái niệm chung về kho dữ liệu
1.2.1 Định nghĩa kho dữ liệu
Định nghĩa do W.H. Inman đề xướng: DATA WAREHOUSE (DWH) được hiểu
là một tập hợp các dữ liệu tương đối ổn định (không hay thay đổi), cập nhật theo thời
gian, được tích hợp theo hướng chủ đề nhằm hỗ trợ quá trình tạo quyết định về mặt
quản lý.

Hình 1. Đặc trưng của kho dữ liệu
Hướng chủ đề (Subject - Oriented) : Một KDL được tổ chức theo những chủ đề
chính như khách hàng (customer), sản phẩm (product), bán hàng (sale). Thay vì chú
trọng vào các hoạt động và xử lý giao tác hàng ngày của tổ chức, một KDL tập trung
vào việc mô hình hóa và phân tích dữ liệu hỗ trợ ra quyết định. Do đó, KDL 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 quá trình ra quyết định.
Tích hợp (Integrated): Một trong những đặc trưng quan trọng nhất của KDL là dữ
liệu chứa trong nó phải được tích hợp thành một thể thống nhất. Có nghĩa là một KDL
thường được xây dựng bằng cách tích hợp những nguồn dữ liệu khác nhau như: CSDL
quan hệ, các file không cấu trúc (flat files), những bản ghi giao tác trực tuyến.
Các kỹ thuật làm sạch và tích hợp dữ liệu được áp dụng nhằm đảm bảo sự nhất
quán trong việc đặt tên, mã hóa cấu trúc, đánh giá thuộc tính, Khi các nhà phân tích


11
hệ hỗ trợ quyết định (DSS) tiếp cận KDL , sự quan tâm của họ là sử dụng KDL mà
không còn băn khoăn về độ tin cậy cũng như tính nhất quán của dữ liệu.
Gắn với thời gian (Time Variant) : Tất cả dữ liệu trong một KDL là chính xác tại
một thời điểm nào đó. Đặc trưng cơ bản này của dữ liệu trong KDL rất quan trọng so
với trong môi trường tác nghiệp. Yêu cầu của một KDL là phạm vi về thời gian dài
hơn so với các hệ thống tác nghiệp. Với CSDL tác nghiệp , dữ liệu có giá trị hiện thời,
trong khoảng 60-90 ngày. Trong KDL, dữ liệu cung cấp thông tin lịch sử ( khoảng từ
5-10 năm trước).
Mặt khác, dữ liệu trong KDL một khi đã được sửa lỗi thì không thể cập nhật được.
Xét về mặt mục đích thực tế, chúng là một chuỗi dài các snapshot. Nếu một snapshot
được tạo ra chưa chính xác thì sau đó nó sẽ được cập nhật lại , bằng cách thêm một
snapshot khác. Do đó, ta giả sử rằng nó là chính xác và một khi đã được tạo ra , nó sẽ
không bị thay đổi nữa. Bởi vì nếu sửa đổi, trong một vài trường hợp sẽ dẫn đến sự trái
quy tắc thậm chí dẫn đến sai sót. Ngược lại, dữ liệu tương tác phản ánh sự chính xác
tại thời điểm truy cập có thể được cập nhật nếu cần thiết.
Ổn định (Non- Volative): KDL là một kho chứa dữ liệu , lưu trữ kiểu vật lý các
dữ liệu chuyển đổi từ môi trường tác nghiệp. Do đó, việc cập nhật tác nghiệp dữ liệu là
không tồn tại trong KDL. Trong KDL, không yêu cầu các cơ chế xử lý giao dịch, phục
hồi và điều khiển tương tranh. Nó chỉ yêu cầu hai thao tác trong quá trình truy cập dữ

liệu, đó là nạp dữ liều ban đầu vào KDL và truy cập dữ liệu đó.
1.2.2 Sự khác nhau giữa kho dữ liệu và CSDL tác nghiệp
DWH về bản chất cũng là một database bình thường, các hệ quản trị cơ sở dữ liệu
quản lý và lưu trữ nó như các database thông thường (tuy nhiên có hỗ trợ thêm về quản
lý dữ liệu lớn và truy vấn). Thực ra nét khác biệt của DWH so với database là ở quan
niệm, cách nhìn vấn đề:
 Trước tiên DWH là database rất lớn (very large database-VLDB).
 Database hướng về xử lý thời gian thực, DWH hướng về tính ổn định.
 Database phục vụ xử lý transaction, cập nhật. Datawarehouse thường chỉ đọc,
phục vụ cho những nhu cầu báo cáo. VD: Chúng ta sẽ yêu cầu hãy cho biết
trong 5 năm, bộ phận phần mềm đã làm được những dự án nào từ đó chúng ta
sẽ có quyết định về hiệu năng của nhóm này.
 DWH sẽ lấy thông tin có thể từ nhiều nguồn khác nhau: DB2, Oracle,
SQLserver thậm chí cả File thông thưởng rồi làm sạch chúng và đưa vào cấu
trúc của nó-đó là VLDB(very large database). DWH rất lớn nên muốn cho từng
bộ phận chuyên biệt người sử dụng cuối cùng có thể khai thác thông dễ dàng thì


12
bản thân DWH phải được chuyên hoá, phân ra thành những chủ đề, do đó
những chủ đề chuyên môn hóa đó tạo thành một Database chuyên biệt-đó là
Data mart. VD: DWH của Microsoft là rất lớn, trong một núi thông tin đó làm
sao khai thác? Vì thế có rất nhiều Data mart về kinh doanh, tiếp thị, kỹ thuật,
testing,…. Có một điểm lưu ý ở đây là có một công cụ hay đúng hơn là một
chuẩn công cụ mà mọi hệ quản trị Database hỗ trợ cho việc truy vấn thông tin
trong Datamart rồi đưa ra những quyết định, nhận dịnh những thông tin trong
Datamart - Đó là OLAP, bộ phân tích trực tuyến.
 Một điểm quan trọng là Database thường được chuẩn hóa (Dạng chuẩn 1, 2, 3,
BCK) để khai thác. DWH phải phi chuẩn hoá rồi sau đó có thể chuẩn hoá theo
start chema trong Data mart, điều này đồng nghĩa vớI việc DWH sẽ trùng lắp

thông tin. Thật ra điều này là hiển nhiên vì việc chuẩn hoá nhằm tránh sự trùng
lắp thông tin, do đó sẽ nhất quán trong việc cập nhật, thêm, xoá, sửa, tuy nhiên
DWH là Database rất lớn phục vụ cho báo cáo, truy vấn chỉ đọc nên việc trùng
lắp thông tin sẽ giúp thao tác tìm kiếm sẽ nhanh hơn. Đây cũng là một quy luật:
Càng trùng lắp thông tin thì tìm kiếm càng dễ dàng và ngược lại.
1.3 Lịch sử ra đời và vai trò của kho dữ liệu
1.3.1 Lịch sử ra đời
KDL ra đời vào những năm 90 của thế kỷ trước, được đề xướng bởi B.Inmon, là
một cách tiếp cận khác được so với hệ thống OLTP(Online Transaction Processing).
KDL là sự kết hợp của một số giải pháp kỹ thuật và được đặt tên là Data
Warehoushing - kỹ thuật xây dựng các KDL.
Những người đầu tiên đưa ra ý tưởng về KDL xác định rằng tiến hành phân tích
trực tiếp trên dữ liệu của các hệ xử lý giao dịch là không hiệu quả. Dữ liệu từ các hệ
thống OLTP được biến đổi và sau đó đưa vào một nguồn dữ liệu duy nhất là KDL
1.3.2 Vai trò của kho dữ liệu
 KDL cải thiện tốc độ truy vấn dữ liệu, hỗ trợ việc phân tích, báo cáo
KDL được thiết kế đặc trưng hỗ trợ cho các thao tác phân tích, báo cáo và truy vấn
dữ liệu.
Mô hình dữ liệu được “làm phẳng” và được cấu trúc theo các vùng chủ đề giúp
người dùng dễ dàng hơn trong việc lấy thông tin phức tạp chỉ bằng việc thực hiện phân
tích đa chiều và truy vấn tương đối đơn giản. Nó hỗ trợ quá trình phân tích đa mức và
thực hiện quyền cho người dùng cuối.


13
Mô hình dữ liệu được “làm phẳng” (flattened) giúp người dùng dễ dàng hơn trong
việc hiểu và viết các câu truy vấn có thể liên quan tới vài trăm bảng và viết các câu
truy vấn với các phép “Join” giữa các bảng và các mệnh đề phức tạp.
 KDL hỗ trợ phát hiện tri thức và ra quyết định (Knowledge Discovery and
Decision Support)

Phát hiện tri thức và khai phá dữ liệu (Knowledge discovery and Data Mining -
KDD) là quá trình chiết xuất tri thức ẩn từ một lượng dữ liệu khổng lồ.
Những ứng dụng của KDD sử dụng các kỹ thuật thống kê và khai phá dữ liệu dựa
trên dữ liệu đảm bảo các tính chất : hướng chủ đề, được tóm gọn được làm sạch và
không tạp nhiễu. Những yếu tố này được cung cấp đầy đủ từ một KDL.
 KDL giúp tăng hiệu suất thực thi (performance)
Cuối cùng, So sánh hiệu suất thực thi của các hệ thống giao dịch và thời gian đáp
ứng truy vấn với một KDL.Các hệ thống giao dịch với chức năng chính chỉ đảm bảo
thực thi các giao dịch hiệu quả. Do đó, chúng được thiết kế để tối ưu thường xuyên
việc đọc và ghi CSDL. Ngược lại, KDL được thiết kế để tối ưu các quá trình truy vấn
và phân tích phức tạp. Với một vài câu truy vấn chuyên biệt và các phép phân tích
tương tác có thể chỉ mất vài giây đến vài phút trong KDL. Nhưng với các hệ thống
giao dịch, nó có thể là gánh nặng lớn và kéo cả quá trình thực thi đi xuống. Trong các
hệ thống tác nghiệp, nếu lưu giữ dữ liệu lịch sử trong một thời gian dài có thể gây cản
trở đến hiệu suất thực thi của hệ thống. Do đó, KDL trở thành nơi thích hợp và đảm
bảo cho dữ liệu mang tính lịch sử
1.4 Kiến trúc tổng thể kho dữ liệu
Kiến trúc 3 tầng của kho dữ liệu như hình 2:


14

Hình 2. Kiến trúc 3 tầng kho dữ liệu
Lớp dưới cùng là một máy chủ chứa cơ sở dữ liệu, thông thường là một hệ thống
cơ sở dữ liệu quan hệ. Các công cụ và tiện ích được sử dụng để tích hợp dữ liệu từ các
cơ sở dữ liệu tác nghiệp hoặc các nguồn dữ liệu bên ngoài (ví dụ như thông tin về tiểu
sử khách hàng được cung cấp hởi các chuyên gia bên ngoài) vào kho dữ liệu. Các công
cụ và tiện ích này thực hiện trích chọn dữ liệu, làm sạch dữ liệu, chuyển dạng, nạp dữ
liệu và làm mới dữ liệu để cập nhật vào kho dữ liệu.
Lớp giữa là một máy chủ OLAP, thường được cài đặt sử dụng môt trong các mô

hình ROLAP (Relational OLAP), MOLAP (Multidimensional OLAP) và HOLAP
(Hybrid OLAP).
Lớp trên cùng một lớp client phía người sử dụng, nó chứa các công cụ báo cáo,
truy vấn, các công cụ phân tích, các công cụ khai phá dữ liệu…


15
1.5 Kho dữ liệu chủ đề (Datamart)
Kho dữ liệu chủ đề (Datamart-DM) là cơ sở dữ liệu có những đặc điểm giống với
kho dữ liệu nhưng với quy mô nhỏ hơn và lưu trữ dữ liệu về một lĩnh vực, một chuyên
ngành. Các Datamart có thể được hình thành từ một tập con dữ liệu của kho dữ liệu
hoặc cũng có thể được xây dựng độc lập và sau khi xây dựng xong các Datamart có
thể được kết nối, tích hợp lại với nhau tạo thành kho dữ liệu.
Datamart là một kho dữ liệu thứ cấp gồm các dữ liệu tích hợp của kho dữ liệu.
Datamart được hướng tới một phần của dữ liệu, thường được gọi là một vùng chủ đề
(SA) được ta ra danh cho một nhóm người sử dụng. Dữ liệu trong Datamart cho thong
tin về một chủ đề xác định, không phải về toàn bộ các hoạt động nghiệp vụ đang diễn
ra trong một tổ chức. Thể hiện thường xuyên nhất của Datamart là một kho dữ liệu
riêng rẽ theo phương diện vật lý, thường được lưu trữ trên một Server riêng trong một
mạng cục bộ phục vụ cho một nhóm người nhất định. Đôi khi Datamart với công nghệ
OLAP tạo ra các quan hệ theo dạng hình sao đặc biệt hoặc những siêu khối
(Hypercube) dữ liệu chọ việc phân tích của một nhóm người có cùng mối quan tâm
trên một phạm vi dữ liệu. Có thể chia Datamart thành hai loại: Datamart độc lập và
Datamart phụ thuộc.
Data mart phụ thuộc (Dependent Data Mart): Chứa những dữ liệu được lấy từ
DW và những dữ liệu này sẽ được trích lọc và tinh chế, tích hợp lại ở mức cao hơn để
phục vụ một chủ đề nhất định của Datamart
Data mart độc lập ( Independent Data Marts) không giống như Data Mart phụ
thuộc, Data mart độc lập được xây dựng trước kho dữ liệu và dữ liệu được trực tiếp
lấy từ các nguồn dữ liệu tác nghiệp. Phương pháp này đơn giản hơn và chi phí thấp

hơn nhưng đổi lại có những điểm yếu. Một Datamart độc lập có cách tích hợp riêng do
đó dữ liệu từ nhiều Datamart khó đồng nhất với nhau.
Datamart thể hiện hai vấn đề: tính ổn định khi một Datamart nhỏ ban đầu lớn lên
nhanh chống theo nhiều chiều và sự tích hợp dữ liệu giữa các Datamart. Vì vậy khi
thiết kế Datamart phải chú ý đến tính ổn định của hệ thống, sự đồng nhất dữ liệu và
vấn đề về khả năng quản lý.
1.6 Các bước cơ bản xây dựng kho dữ liệu
Phần này mô tả các bước chính trong quá trình phát triển một KDL, đặc biệt là các
quá trình: trích chiết dữ liệu (Extracting), chuyển đổi dữ liệu (Transforming) và nạp dữ
liệu vào trong KDL (Loading) – ETL. Mất khá nhiều thời gian cho các thao tác này
tùy thuộc vào độ phức tạp của các nguồn dữ liệu.Quy trình nạp dữ liệu từ ngoài vào


16
kho dữ liệu thông qua các bước: trích lọc, làm sạch và chuyển dạng, nạp hay tích hợp
dữ liệu.
1.6.1 Định dạng nguồn dữ liệu
Đây là bước đầu tiên nhất trước khi bắt đầu xây dựng một KDL.Nguồn dữ liệu sẽ
cần được định dạng. Chúng cần được tính toán những yếu tố cần thiết để được cho vào
một KDL
1.6.2 Trích chọn dữ liệu
Một phần công việc rất lớn của quá trình xây dựng KDL là lấy dữ liệu từ các nguồn
khác nhau và đặt chúng vào khu vực lưu trữ trung tâm. Ta cần phải tính toán hệ CSDL
dùng cho vùng lưu trữ (staging area) và cách thức để lấy dữ liệu từ các nguồn khác
nhau chuyển vào trong vùng đó.
Đây là quá trình đọc dữ liệu từ dữ liệu nguồn, bao gồm các thao tác truy cập, giữ
và chọn lọc. Quá trình này làm việc trên các hệ thống nguồn và các nguồn dữ liệu
ngoài. Có thể là CSDL gốc (original), CSDL ảnh (image) hay các hệ thống băng đĩa
từ. Đối với các nguồn dữ liệu lớn thì việc truy cập vào băng đĩa từ sẽ hiệu quả hơn so
với xử lý trong các file nguồn.

Sau đó là phải lập ra kế hoạch và tần suất tiến trình trích dữ liệu. Điều này nhằm tối
thiểu hoá các tác động lên các hệ thống và thi hành các tác vụ này trong một cửa sổ xứ
lý theo lô (batch window). Đối với các bảng dữ liệu khác nhau thì tần suất trích dữ liệu
sẽ khác nhau. Việc trích dữ liệu còn phụ thuộc vào sự ảnh hưởng từ hệ thống nguồn và
loại dữ liệu sẽ được trích. Ví dụ : Đối với dữ liệu bán hàng thì nên trích dữ liệu hàng
ngày nhưng với dữ liệu sản phẩm thì chỉ cần trích hàng tuần.
Thực tế thì đây chính là giai đoạn khó nhất. Có thể xảy ra trường hợp những người
đã từng làm việc trên các hệ thống đã được chuyển đến công việc khác. Hoặc họ đã rời
công ty hoặc họ đã chuyển sang bộ phận khác
1.6.3 Làm sạch và chuyển dạng
Làm sạch dữ liệu là quá trình
 xác định tính không chính xác, không đầy đủ/tính bất hợp lý của dữ liệu
 chỉnh sửa các sai sót và thiếu sót được phát hiện
 nâng cao chất lượng dữ liệu.
Quá trình bao gồm


17
 kiểm tra định dạng, tính đầy đủ, tính hợp lý, miền giới hạn,
 xem xét dữ liệu để xác định ngoại lai (địa lý, thống kê, thời gian hay môi
trường) hoặc các lỗi khác,
 đánh giá dữ liệu của các chuyên gia miền chủ đề.
Quá trình thường dẫn đến
 loại bỏ, lập tài liệu và kiểm tra liên tiếp và hiệu chỉnh đúng bản ghi nghi ngờ.
 Kiểm tra xác nhận có thể được tiến hành nhằm đạt tính phù hợp với các chuẩn
áp dụng, các quy luật, và quy tắc.
Cách thực hiện:
 Tìm và loại trừ các bộ trùng nhau. Ví dụ Jane Doe, Jane Q.Doe
 Kiểm tra tính nhất quán, khám phá dữ liệu sai, không nhất quán. Ví dụ số phone
không đúng, có ngòai vùng xác định không…

 Sửa hoàn chỉnh dữ liệu thiếu, không đọc được, hay giá trị rỗng NULL. Chỉ ra
các lỗi và có thể chèn giá trị mặc định…
 Cảnh báo cho các nguồn các kho dữ liệu về các lỗi tìm được
1.6.4 Nạp, tích hợp vào kho dữ liệu
Quá trình tích hợp bao gồm :
 Sắp xếp và hợp lại khi một bảng dữ liệu đích được tạo ra từ nhiều nguồn . Khi
đó, dữ liệu được sắp xếp lại và loại bỏ đi các bản ghi giống nhau và chúng được
hợp lại thành một file dữ liệu duy nhất.
 Chia cắt dữ liệu nếu như từ một dữ liệu nguồn cần tạo ra nhiều dữ liệu đích,
hoặc một thuộc tính lại nhiều trường chứa dữ liệu cho nó. Trong trường hợp
này, file hoặc trường đó phải được cắt tới mức thấp nhất.
 Tạo ra các khoá tổng hợp (nhân tạo) có khă năng tách biệt và bảo vệ khỏi các
biên động trong hệ thống nguồn.
Sau tiến trình trích chiết, chuyển đổi làm sạch và sau khi xây dựng xong mô hình
chiều, dữ liệu được nạp vào trong KDL.
Có thể phân thành 2 loại hình nạp : nạp dữ liệu mang tính hiện thời đối với CSDL
tác nghiệp và nạp cập nhật với CSDL tác nghiệp đã có thay đổi. Cần đảm bảo việc làm
tươi dữ liệu. Đã có nhiều vấn đề xảy ra trong quá trình nạp cập nhật dữ liệu cho KDL.
Trong khi nạp cập nhật, cần chắc chắn là không xảy ra mất dữ liệu. Cần lập kế hoạch
cho việc nạp dữ liệu, thời gian và thứ tự của các bảng trong KDL


18
1.6.5 Xây dựng mô hình dữ liệu đa chiều
Phần lớn các hệ thống giao dịch hiện đại đều được xây dựng sử dụng các mô hình
quan hệ. CSDL quan hệ được chuẩn hóa ở mức cao. Khi thiết kế hệ thống, cố gắng
loại bỏ các cột trùng lặp và đảm bảo tất cả các cột đều phụ thuộc vào khóa chính của
mỗi bảng. Các hệ thống quan hệ hiệu quả tốt trong môi trường xử lý giao dịch trực
tuyến (OLTP). Tuy nhiên chúng lại kém hơn khi thực thi trong môi trường có tích chất
báo cáo (đặc biệt là KDL), việc kết nối giữa một số lượng bảng cực lớn không phải là

một ý tưởng tốt nhất.
Định dạng quan hệ tỏ ra không hiệu quả khi tiến hành xây dựng các báo cáo với
các giá trị mang tính tổng quan và kết tập. Ngược lại, phương pháp chiều (dimensional
approach) giúp cải thiện quá trình truy vấn dữ liệu mà không ảnh hưởng đến việc tích
hợp dữ liệu. Một vấn đề nảy sinh là không gian lưu trữ. CSDL chiều thì cần không
gian lưu trữ lớn hơn CSDL quan hệ. Ngày nay, không gian lưu trữ trở nên khá rẻ và
hầu hết các công ty có thể đáp ứng được dung lượng lớn các ổ đĩa cứng.
Mô hình chiều (Dimensional Model) bao gồm các bảng chiều (dimensions) và bảng
sự kiện (fact). Bảng sự kiện chứa khóa ngoài của mỗi bảng chiều và các phép đo. Các
phép đo (measures) cho phép xác định mức độ tốt hay tồi mà doanh nghiệp của bạn
đang có.(vidu : số lượng bộ phận được sản xuất trong một giờ hay số lượng ô tô cho
thuê trong một giờ…). Còn các chiều thể hiện cho cái mà nhà doanh nghiệp mong đợi
trong các báo cáo – chi tiết về các phép đo. (Vidu : chiều thời gian cho người dùng biết
có 2000 bộ phận đã được sản xuất trong khoảng từ 7h sáng đến 7h tối).
Các lược đồ cho lưu trữ dữ liệu đa chiều:
 Lược đồ hình sao (star schema)
 Lược đồ hình bông tuyết (Snowflake schema)
 Lược đồ chòm sao sự kiện (Fact constellations schema)
1.6.5.1 Lược đồ hình sao
Giản đồ hình sao được đưa ra lần đầu tiên bởi Raph Kimball như là một lựa chọn
thiết kế CSDL cho kho dữ liệu. Trong giản đồ hình sao, dữ liệu được xác định và phân
loại theo 2 kiểu: sự kiện (bảng Fact: đối tượng trung tâm) và phạm vi (các bảng
Dimension: các bảng liên kết). Trong giản đồ hình sao chỉ có một bảng liên quan trực
tiếp tới hầu hết các bảng còn lại đó là bảng Fact và là bảng chứa yếu tố cốt lõi cần
được phân tích. Nó được gọi là giản đồ hình sao bởi vì các sự kiện nằm ở trung tâm
của mô hình và được bao quanh bởi các phạm vi liên quan, rất giống với các điểm của
một ngôi sao. Các sự kiện là các đại lượng số của công việc. Các phạm vi là các bộ lọc


19

hoặc các ràng buộc của những sự kiện này. Ví dụ: thông tin về khách hàng như tên, địa
chỉ là một phạm vi, trong khi đó thông tin bán hàng cho khách hàng đó là một sự kiện.
Với giản đồ hình sao, người thiết kế có thể dễ dàng mô phỏng những chức năng
của CSDL đa chiều. Sự phi chuẩn hóa có thể coi là sự tiền kết nối (Pre-joining) các
bảng để cho các ứng dụng không phải thực hiện công việc kết nối, làm giảm thời gian
thực hiện.
Giản đồ hình sao được thiết kế là để khắc phục những hạn chế của mô hình quan hệ
hai chiều. Với cơ sở dữ liệu được thiết kế theo giản đồ hình sao, những truy vấn với
những câu hỏi phức tạp liên quan tới nhiều bảng và số liệu tổng cộng trở nên đơn giản
hơn và số lượng công việc cần thực hiện để đưa được ra câu trả lời là ít nhất so với
một mô hình quan hệ chuẩn. Giản đồ hình sao cải thiện đáng kể thời gian truy vấn và
cho phép thực hiện một số tính năng đa phạm vi. Giản đồ này rất trực quan, dễ sử
dụng, thể hiện khung nhìn đa chiều của dữ liệu dùng ngữ nghĩa của CSDL quan hệ.
Khóa của bảng Fact được tạo bởi những khóa của các bảng chứa thông tin theo từng
phạm vi (bảng Dimension). Tất cả các khóa đều được xác định với cùng một chuẩn đặt
tên.

Hình 3. Ví dụ lược đồ hình sao


Trong ví dụ hình 3, bảng Sales là bảng sự kiện chứa các khóa ngòai của các bảng
chiều: time_key (khóa ngòai của bảng time), item_key (khóa ngòai của bảng item),

time_key
day
day_of_the_week
month
quarter
year
time

location_key
street
city
state_or_province
country
location
Sales Fact Table

time_key
item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales
Measures
item_key
item_name
brand
type
supplier_type
item
branch_key
branch_name
branch_type

branch


20
branch_key (khóa ngòai của bảng Branch), location_key (khóa ngòai của bảng
location); và các giá trị đo units_sold, dollars_sold, avg_sales
Một giản đồ hình sao đơn giản chỉ gồm một bảng Fact và một vài bảng Dimension.
Một giản đồ hình sao phức tạp bao gồm hàng trăm bảng Fact và bảng Dimension. Một
vài kỹ thuật để cải thiện hiệu suất của các truy vấn trong giản đồ hình sao bao gồm:
 Xác định sự kết hợp các bảng Fact đang tồn tại hay tạo ra một sự kết hợp mới
các bảng Fact.
 Phân chia bảng Fact đến mức mà hầu hết các truy vấn chỉ truy nhập tới phần đó.
 Tạo ra các bảng Fact riêng rẽ.
 Tạo ra những tệp chỉ số đơn duy nhất hoặc các kỹ thuật khác để cải thiện năng
suất kết hợp.
1.6.5.2 Lược đồ hình bông tuyết
Giản đồ hình tuyết rơi là một sự mở rộng của giản đồ hình sao, tại đó mỗi cánh sao
không phải là một bảng Dimension mà là nhiều bảng. Trong dạng giản đồ này, mỗi
bảng theo chiều của giản đồ hình sao được chuẩn hóa hơn. Giản đồ hình tuyết rơi cải
thiện năng suất truy vấn, tối thiểu không gian đĩa cần thiết để lưu trữ dữ liệu và cải
thiện năng suất nhờ việc chỉ phải kết hợp những bảng có kích thước nhỏ hơn thay vì
phải kết hợp những bảng có kích thước lớn lại không chuẩn hóa. Nó cũng làm tăng
tính linh hoạt của các ứng dụng bởi sự chuẩn hóa và ít mang bản chất theo chiều hơn.
Nó làm tăng số lượng các bảng và làm tăng tính phức tạp của một vài truy vấn cần có
sự tham chiếu tới nhiều bảng. Một vài công cụ đã che giấu người sử dụng giản đồ
CSDL vật lý và cho phép họ có thể làm việc ở mức khái niệm. Những công cụ này đã
ánh xạ những truy vấn của người sử dụng tới sơ đồ vật lý. Họ cần một bộ quản trị
CSDL để thực hiện công việc này một lần đầu tiên khi công cụ này được cài đặt. Hình
4 đưa ra một ví dụ về lược đồ hình bông tuyết.



21

Hình 4. Ví dụ lược đồ hình bông tuyết
1.6.5.3 Lược đồ chòm sao sự kiện

Các ứng dụng phức tạp có thể đòi hỏi nhiều bảng sự kiện cùng chia sẻ các bảng
chiều. Loại lược đồ này có thể được xét như một tập hợp các lược đồ hình sao. Và vì
thế nó được gọi là lược đồ chòm sự kiện. Ví dụ một lược đồ chòm sự kiện như hình 5:

Hình 5. Ví dụ lược đồ chòm sự kiện

time_key
day
day_of_the_week
month
quarter
year
time
location_key
street
city
province_or_state
country
location
Sales Fact Table

time_key
item_key


branch_key

location_key

units_sold

dollars_sold

avg_sales
Measures
item_key
item_name
brand
type
supplier_type
item
branch_key
branch_name
branch_type
branch

Shipping Fact Table

time_key
item_key

shipper_key

from_location


to_location

dollars_cost

units_shipped

time_key
day
day_of_the_week
month
quarter
year
time
location_key
street
city_key
location
Sales Fact
Table

time_key
item_key

branch_key
branch_key

location_key

units_sold


dollars_sold

avg_sales
Measures
item_key
item_name
brand
type
supplier_key
item
branch_key
branch_name
branch_type
branch
supplier_key
supplier_type
supplier
city_key
city
state_or_province
country
city


22
1.7 Ví trí của làm sạch dữ liệu trong quá trình xây dựng kho dữ liệu
Quá trình xây dựng KDL ở trên đã cho thấy điều kiện đầu tiên để có thể tiến hành
xây dựng một KDL chính là nguồn dữ liệu nạp vào kho.
Để có được dữ liệu đảm bảo chất lượng trước khi nạp vào kho, dữ liệu phải qua
giai đoạn trích chiết, chuyển đổi và tích hợp.

Quan sát hình vẽ dưới đây, ta có một cái nhìn tổng quan về nhiệm vụ của mỗi giai
đoạn trong mô hình KDL.



Hình 6. Ví trí của làm sạch dữ liệu trong quá trình xây dựng kho dữ liệu
Giai đoạn đầu Pre-Data Warehouse làm nhiệm vụ cung cấp nguồn dữ liệu cho quá
trình xây dựng KDL. Có hai luồng dữ liệu chính.
 CSDL OLTP: đây chính là các nguồn CSDL tác nghiệp (operational data).
Chúng tồn tại trong các ứng dụng phần mềm giao dịch, Ví dụ như các hệ thống
ERP (Enterprise Resource Planning ), phần mềm dịch vụ khách hàng
(Custormer Serving Software). OLTP được thiết kế đảm bảo tốc độ và sự chính
xác cho các giao dịch
 Metadata : Metadata đảm bảo các ràng buộc và sự chính xác khi nguồn dữ liệu
được đưa vào trong chu trình xử lý.


23
Làm sạch dữ liệu (Data Cleaning) được tích hợp vào giai đoạn ETL của kỹ thuật
xây dựng kho. Đây có thể coi là giai đoạn tiền xử lý đảm bảo chất lượng dữ liệu trước
khi chúng được đưa vào trong KDL.
Các giai đoạn sau là quá trình xử lý dữ liệu khi dữ liệu đã có trong KDL. Áp dụng
các ký thuật OLAP và Data mining để phát hiện tri thức, hỗ trợ cho các hệ trợ giúp
quyết định.


24

CHƯƠNG 2 LÀM SẠCH DỮ LIỆU VÀ CÁC GIẢI PHÁP KỸ THUẬT
Trong chương trước đã đưa ra một cái nhìn tổng quan về KDL và các kỹ thuật xây

dựng. Đồng thời qua đó thấy được vị trí của công đoạn làm sạch dữ liệu trong quá
trình xây dựng KDL. Chương này sẽ giới thiệu một cái nhìn đầy đủ hơn về làm sạch
dữ liệu.
2.1 Khái niệm về làm sạch dữ liệu
Làm sạch dữ liệu (LSDL) - Data Cleaning còn được gọi là Data Cleasing hay
Scrubbing là quá trình phát hiện và loại bỏ lỗi và tính ko nhất quán trong dữ liệu; nhờ
đó mà cải thiện chất lượng dữ liệu.
Nói theo một cách khác thì dữ liệu trong thế giới thực thường không đầy đủ, nhiễu
và không nhất quán. Quá trình LSDL sẽ cố gắng lấp đầy những giá trị bị thiếu, làm
mịn các dữ liệu nhiễu, xác định và loại bỏ những dữ liệu nằm lệch khoảng giá trị kì
vọng và giải quyết vấn đề không nhất quán của dữ liệu.
2.2 Vai trò của quá trình làm sạch dữ liệu
Thực tế cho thấy, dữ liệu trong thế giới thực là không “sạch” hay còn gọi khác đi là
dữ liệu “bẩn” (dirty data).
Vậy dữ liệu bẩn là gì ? Hiểu đơn giản đó là nguồn dữ liệu có chứa lỗi. Nó thường
là nguồn dữ liệu không hoàn chỉnh , bị nhiễu và không nhất quán…
 Không hoàn chỉnh (incomplete) : thiếu giá trị thuộc tính, thiếu những thuộc tính
quan trọng, chỉ chứa những dữ liệu gộp chung…
 Nhiễu (noisy) : Có thể là dữ liệu nằm ngoài miền giá trị Ví dụ salary = -10…
 Không nhất quán (Inconsistent) : Không nhất quán thể hiện ở nhiều khía cạnh .
Dữ liệu có thể được tập hợp từ nhiều nguồn khác nhau. Có thể là không nhất
quán trong cách đặt tên. Vidu : thuộc tính Custormer identification có thể là
customer_id trong CSDL này nhưng lại là cust_id trong CSDL khác. Hay
trường hợp định dạng dữ liệu không giống nhau . Vidu : Giới tính lúc là M hoặc
F , lúc là 1 hoặc 0 ….
Dữ liệu bẩn làm giảm chất lượng nguồn dữ liệu. Dẫn đến hiệu suất kém trong quá
trình khai phá dữ liệu và phát hiện tri thức phục vụ cho các mục đích của doanh
nghiệp.



25
Ngày nay, thông tin là vấn đề quan trọng hàng đầu của các công ty, tổ chức doanh
nghiệp. Các hệ thống thông tin được duy trì tốt sẽ cho phép các công ty có được những
quyết định mang tính nghiệp vụ thành công. Ngược lại, nếu thiếu thông tin hoặc thông
tin có chứa lỗi, điều đó có thể khiến các công ty rơi vào tình trạng thua lỗ hoặc có
những quyết định mang tính chiến lược thiếu đúng đắn.
LSDL sẽ từng bước giải quyết vấn đề .LSDL duy trì, đảm bảo và cải thiện chất
lượng dữ liệu trong các hệ thống thông tin.
2.3 Các vấn đề chất lượng dữ liệu
Thông tin được định nghĩa là dữ liệu và phương thức thể hiện chúng. Thông tin
nằm ẩn trong dữ liệu . Do đó, để có thông tin tốt thì điều cơ bản là phải duy trì được
chất lượng dữ liệu – Data Quality. Chất lượng dữ liệu ở mức cao có nghĩa là nó phải
phù hợp cho sử dụng, đủ tốt và thỏa mãn các ứng dụng nghiệp vụ có liên quan. Một số
tiêu chuẩn sau đây cho phép đánh giá mức độ của chất lượng dữ liệu :
 Hoàn thiện (completeness) : Tất cả các thuộc tính cho mỗi bản ghi phải đầy đủ.
 Hợp lệ (validity) : tất cả các thuộc tính cho mỗi bản ghi phải đảm bảo giá trị
trong phạm vi cho phép.
 Nhất quán (consistency) : các thuộc tính của mỗi bản ghi không được phép mâu
thuẫn với bản ghi khác.
 Hợp thời (timeliness): Các bản ghi phải được cập nhật ở thời điểm gần nhất.
Thông tin về một đối tượng bất kì cần được cập nhật ngay khi có sự thay đổi về
nó trong thế giới thực.
 Chính xác (Accuracy) : Các bản ghi phải mô tả chính xác với các thuộc tính của
đối tượng trong thế giới thực.
 Phù hợp (Relevancy ) : CSDL chỉ nên chứa các thông tin cần thiết về đối tượng
để hỗ trợ cho chúng.
 Có thể truy cập và hiểu được : các nguồn metadata mô tả dữ liệu trong CSDL
cần có ngay khi chúng được cần đến.
Các vấn đề chất lượng dữ liệu có thể chia thành 2 loại chính : đơn nguồn (single-
source problems) và đa nguồn (multi-source problems) như được mô tả trong hình 7:

×