ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Trƣơng Vĩnh Long
NGHIÊN CỨU ỨNG DỤNG BỘ CÔNG CỤ
BUSINESS INTELLIGENCE TRONG VIỆC XỬ LÝ
SỐ LIỆU CỦA HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
MYSQL
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Trƣơng Vĩnh Long
NGHIÊN CỨU ỨNG DỤNG BỘ CÔNG CỤ
BUSINESS INTELLIGENCE TRONG VIỆC XỬ LÝ
SỐ LIỆU CỦA HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
MYSQL
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hƣớng dẫn: TS. Nguyễn Hà Nam
Cán bộ đồng hƣớng dẫn: ThS. Nguyễn Thu Trang
HÀ NỘI - 2010
LỜI CẢM ƠN
Trước tiên em xin gửi lời cảm ơn sâu sắc tới TS. Nguyễn Hà Nam và ThS. Nguyễn
Thu Trang đã tận tình chỉ bảo, giúp đỡ em hoàn thành luận văn này.
Em xin chân thành cảm ơn các thầy cô trong bộ môn Các hệ thống thông tin, trường
Đại học Công nghệ - Đại học Quốc gia Hà nội đã tạo điều kiện cho em thực hiện đề tài.
Đồng thời, em xin cảm ơn các thầy cô giáo trường Đại học Công nghệ đã dạy bảo, giúp
đỡ em trong 4 năm học vừa qua.
Cuối cùng em xin cảm ơn những người thân trong gia đình và bạn bè đã động viên,
giúp đỡ em trong quá trình học tập và thực hiện hoàn luận văn.
Xin chân thành cảm ơn!
Sinh viên
Trương Vĩnh Long.
TÓM TẮT
Ngày nay, việc lưu trữ, xử lý dữ liệu để tổng hợp thông tin, hỗ trợ ra quyết định đã
trở nên phổ biến đối với nhiều tổ chức sản xuất, kinh doanh. Có nhiều phương pháp để
đáp ứng yêu cầu này, trong đó Business Intelligence(BI- giải pháp quản trị doanh nghiệp
thông minh) là một giải pháp tiêu biểu, được nhiều tổ chức lựa chọn.
Khóa luận này giới thiệu một vài nét tổng quan về kho dữ liệu, hệ thống xử lý phân
tích trực tuyến và bộ công cụ Business Intelligence. Tiếp đó là việc triển khai cài đặt, ứng
dụng Business Intelligence, cụ thể là sử dụng bộ công cụ Pentaho trong việc xây dựng báo
cáo và khai phá dữ liệu dựa trên hệ quản trị cơ sở dữ liệu MySQL kết hợp phần mềm
Weka.
Danh sách các hình
Hình 1 – Cấu trúc hệ thống kho dữ liệu 3
Hình 2 – Dòng dữ liệu trong kho dữ liệu . 4
Hình 3 - Ứng dụng kho dữ liệu trong Business Intelligence 5
Hình 4 – Ví dụ về cây quyết định . 9
Hình 5 – Thành phần của hệ Business Intelligence 12
Hình 6 – Cấu trúc của Pentaho Business Intelligence 19
Hình 7 – Cơ sở dữ liệu về các thành phố 23
Hình 8 – Thiết lập Data Source 24
Hình 9 – Thiết lập Constraint 25
Hình 10 – Mô tả báo cáo thu được sử dụng Pentaho 26
Hình 11 – Mô tả bảng dữ liệu về khách hàng trong ngân hàng. 27
Hình 12 - Tải dữ liệu lên Weka từ MySQL 28
Hình 13 – Chọn bộ lọc MathExpression . 29
Hình 14 – Thay đổi thông số cho bộ lọc MathExpression 30
Hình 15 – Sử dụng MathExpression để gán lại giá trị cho trường THU NHAP 30
Hình 16 – Chọn bộ lọc NumericToNominal 31
Hình 17 – Chọn bộ lọc AddValues 32
Hình 18 – Thiết lập thông số cho bộ lọc AddValues 32
Hình 19 – Sử dụng chức năng Replace Value trong phần Edit . 33
Hình 20 – Lựa chọn giá trị cần thay thế 34
Hình 21 – Lựa chọn giá trị thay thế 34
Hình 22 – Lựa chọn xây dựng cây quyết định theo J48 35
Hình 23 - Cây quyết định thu được khi dùng Classifier J48 36
Hình 24 – Lựa chọn xây dựng luật kết hợp theo thuật toán Apriori 37
Hình 25 – Kết quả thu được khi tạo luật kết hợp sử dụng thuật toán Apriori 38
Bảng từ khóa
OLAP
Online Analysis Processing
MOLAP
Multidimensional Online Analysis Processing
ROLAP
Relational Online Analysis Processing
HOLAP
Hybird Online Analysis Processing
BI
Business Intelligence
Mục lục
Chƣơng 1 : KHO DỮ LIỆU VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL 1
1.1. Kho dữ liệu 1
1.1.1. Khái niệm kho dữ liệu 1
1.1.2. Các đặc tính của kho dữ liệu 1
1.1.3. Cấu trúc hệ thống kho dữ liệu 2
1.1.4. Dòng dữ liệu trong kho dữ liệu 3
1.1.5. Ứng dụng của kho dữ liệu 4
1.2. Hệ quản trị cơ sở dữ liệu MySQL 6
1.2.1. Giới thiệu MySQL 6
1.2.2. Ưu điểm và nhược điểm của MySQL 6
Chƣơng 2 : PHƢƠNG PHÁP KHAI PHÁ DỮ LIỆU 7
2.1. Khái niệm khai phá dữ liệu 7
2.2. Các thành phần của giải thuật khai phá dữ liệu 7
2.3. Cây quyết định 8
2.4. Phát hiện các luật kết hợp 10
Chƣơng 3 : BỘ CÔNG CỤ BUSINESS INTELLIGENCE 12
3.1. Business Intelligence 12
3.1.1. Khái niệm Business Intelligence 12
3.1.2. Các thành phần chính của hệ Business Intelligence 12
3.1.3. Lợi ích của Business Intelligence đối với doanh nghiệp 13
3.1.4. Các công cụ Business Intelligence 15
3.1.5. Kết hợp Business Intelligence và MySQL 15
3.2. Kỹ thuật OLAP 16
3.2.1. Khái niệm OLAP 16
3.2.2. Các thành phần trong hệ thống OLAP 17
3.3. Pentaho – Business Intelligence Server 18
3.3.1. Tổng quan về Pentaho 18
3.3.2. Khả năng và lợi ích của Pentaho 19
3.4. Mondrian – OLAP Server 20
3.4.1. Mondrian 20
3.4.2. Schema Workbench 20
3.5. Weka – Khai phá dữ liệu 21
Chƣơng 4 : ỨNG DỤNG BUSINESS INTELLIGENCE 22
4.1. Tạo báo cáo sử dụng công cụ BI 22
4.1.1. Giới thiệu cơ sở dữ liệu 22
4.1.2. Bài toán 23
4.1.3. Giải quyết bài toán 23
4.2. Khai phá dữ liệu 26
4.2.1. Giới thiệu cơ sở dữ liệu 26
4.2.2. Bài toán 27
4.2.3. Tiền xử lý 27
4.2.4. Thực hiện thuật toán phân lớp 35
4.2.5. Xây dựng luật kết hợp 36
4.2.6. Nhận xét kết quả 38
KẾT LUẬN 40
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
1
Chƣơng 1 : KHO DỮ LIỆU VÀ HỆ QUẢN TRỊ CƠ
SỞ DỮ LIỆU MYSQL
1.1. Kho dữ liệu
1.1.1. Khái niệm kho dữ liệu
Theo William Inmon [12], kho dữ liệu là một bộ dữ liệu có các đặc tính : hướng chủ
đề, có tính tích hợp, ổn định, dữ liệu gắn với thời gian, thường được sử dụng trong các hệ
thống hỗ trợ quyết định.
Kho dữ liệu thường bao gồm :
- Một hoặc nhiều công cụ để chiết xuất dữ liệu từ các dạng cấu trúc dữ liệu khác
nhau.
- Cơ sở dữ liệu tích hợp hướng chủ đề, ổn định được tổng hợp thông qua việc lập
các bảng dữ liệu.
Một kho dữ liệu có thể được coi là một hệ thống thông tin với những thuộc tính sau:
• Là một cơ sở dữ liệu được thiết kế dành cho nhiệm vụ phân tích, sử dụng các dữ liệu
từ các ứng dụng khác nhau.
• Hỗ trợ cho một số người dùng có liên quan, có sử dụng tới các thông tin liên quan.
• Nội dung được cập nhật thường xuyên, chủ yếu theo hình thức bổ sung thông tin.
• Chứa các dữ liệu trong lịch sử và hiện tại nhằm cung cấp các xu hướng thông tin.
• Chứa các bảng dữ liệu có kích thước lớn.
• Một câu hỏi thường trả về một tập kết quả liên quan đến toàn bộ bảng và các liên kết
nhiều bảng.
1.1.2. Các đặc tính của kho dữ liệu
Hƣớng chủ đề : Kho dữ liệu có thể chứa lượng dữ liệu lên tới hàng trăm Gigabyte,
được tổ chức theo những chủ đề chính. Kho dữ liệu không chú trọng vào giao tác và việc
xử lý giao tác. Thay vào đó, kho dữ liệu tập trung vào việc mô hình hóa, phân tích dữ liệu
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
2
nhằm hỗ trợ cho nhà quản lý ra quyết định. Do đó, các kho dữ liệu thường cung cấp một
khung nhìn tương đối đơn giản bằng cách loại bớt những dữ liệu không cần thiết trong
quá trình ra quyết định.
Tính tích hợp : Kho dữ liệu thường được xây dựng bằng cách tổng hợp dữ liệu từ
nhiều nguồn khác nhau, ví dụ các cơ sở dữ liệu, những bản ghi giao tác trực tuyến hoặc
thậm chí là từ những file dữ liệu độc lập. Những dữ liệu này tiếp tục được làm sạch,
chuẩn hóa để đảm bảo sự nhất quán, sau đó đưa vào kho dữ liệu.
Ổn định : Dữ liệu trong kho dữ liệu thường được lưu trữ lâu dài, ít bị sửa đổi, chủ
yếu dùng cho việc truy xuất thông tin nên có độ ổn định cao. Hai thao tác chủ yếu tác
động tới kho dữ liệu là : nhập dữ liệu vào và truy xuất.
Dữ liệu gắn với thời gian : Do có tính ổn định, kho dữ liệu thường lưu trữ dữ liệu
của hệ thống trong khoảng thời gian dài, cung cấp đủ số liệu cho các mô hình nghiệp vụ,
dự báo, khảo sát những chỉ tiêu cần quan tâm.
1.1.3. Cấu trúc hệ thống kho dữ liệu
Hệ thống kho dữ liệu thường bao gồm 3 tầng như trong hình 1:
Tầng đáy : là nơi lấy dữ liệu từ nhiều nguồn khác nhau sau đó làm sạch, chuẩn hóa,
lưu trữ tập trung.
Tầng giữa : thực hiện các thao tác với kho dữ liệu thông qua dịch vụ OLAP (OLAP
server). Có thể cài đặt bằng Relational OLAP, Multidimensional OLAP hay kết hợp cả
hai mô hình trên thành mô hình Hybrid OLAP.
Tầng trên : thực hiện việc truy vấn, khai phá thông tin.
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
3
Hình 1 – Cấu trúc hệ thống kho dữ liệu [6].
1.1.4. Dòng dữ liệu trong kho dữ liệu
Do kho dữ liệu chứa lượng dữ liệu lớn, đồng thời hạn chế thao tác sửa đổi nên rất
thích hợp cho việc phân tích dài hạn và báo cáo. Các thao tác với dữ liệu của kho dữ liệu
chủ yếu dựa trên cơ sở là Mô hình dữ liệu đa chiều (multidimensional data model),
thường áp dụng cho các khối dữ liệu (data cube). Khối dữ liệu là trung tâm của vấn đề cần
phân tích, bao gồm một hay nhiều tập dữ kiện (fact) và các dữ kiện được tạo ra từ nhiều
chiều (dimension) dữ kiện khác nhau.
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
4
Hình 2 – Dòng dữ liệu trong kho dữ liệu [5].
1.1.5. Ứng dụng của kho dữ liệu
Kho dữ liệu được đưa vào ba mảng ứng dụng chính.
Theo như cách khai thác truyền thống đối với cơ sở dữ liệu, kho dữ liệu được sử
dụng để khai thác thông tin bằng các công cụ thực hiện truy vấn và báo cáo. Nhờ việc dữ
liệu thô đã được chuyển sang thành các dữ liệu ổn định, có chất lượng nên kho dữ liệu đã
giúp nâng cao kỹ thuật biểu diễn thông tin truyền thống. Dữ liệu đầu vào của các kỹ thuật
này được đặt vào một nguồn duy nhất, giúp loại bỏ nhiều lỗi sinh ra do phải thu thập và
biểu diễn thông tin từ nhiều nguồn khác nhau đồng thời giảm bớt sự chậm trễ do phải lấy
dữ liệu từ những phân đoạn khác nhau, tránh cho người dùng phải viết những truy vấn
SQL quá phức tạp.
Với cách thứ hai, các kho dữ liệu được sử dụng để hỗ trợ cho phân tích trực
tuyến(OLAP). Trong khi ngôn ngữ SQL và các công cụ xây dựng báo cáo truyền thống
chỉ có thể mô tả những gì có trong cơ sở dữ liệu thì phân tích trực tuyến có khả năng phân
tích dữ liệu, xác định xem giả thuyết đúng hay sai. Tuy nhiên, phân tích trực tuyến lại
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
5
không có khả năng đưa ra được các giả thuyết. Ngoài ra, sử dụng OLAP còn giúp phân
tích tổng hợp dữ liệu, đưa ra kết quả bằng các báo cáo hoặc bảng biểu trực quan.
Cách thứ ba để khai thác kho dữ liệu là dựa trên các kỹ thuật khai phá dữ liệu. Đây
là một phương pháp mới, đáp ứng được cả những yêu cầu trong nghiên cứu khoa học
cũng như yêu cầu trong thực tiễn. Các kết quả thu được mang nhiều tính dự báo, dự đoán,
dùng trong việc xây dựng kế hoạch, chiến lược.
Các lĩnh vực hiện tại áp dụng kho dữ liệu
- Thương mại điện tử.
- Kế hoạch hoá nguồn lực doanh nghiệp (ERP - Enterprise Resource Planning).
- Quản lý quan hệ khách hàng (CRM - Customer Relationship Management)
- Chăm sóc sức khỏe.
- Viễn thông.
Hình 3 - Ứng dụng kho dữ liệu trong Business Intelligence [5].
Chương 1 – Kho dữ liệu và hệ quản trị cơ sở dữ liệu MySQL
6
1.2. Hệ quản trị cơ sở dữ liệu MySQL
1.2.1. Giới thiệu MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được
các nhà phát triển ứng dụng rất ưa chuộng. MySQL có tốc độ cao, ổn định và dễ sử dụng,
có tính khả chuyển, hoạt động trên nhiều hệ điều hành, cung cấp một hệ thống lớn các
hàm tiện ích mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng
dụng có truy cập cơ sở dữ liệu thông qua Internet. Ta có thể tải MySQL qua Internet, có
nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành
dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix,
Solaris, SunOS. MySQL là một trong những ví dụ rất cơ bản về hệ quản trị cơ sở dữ liệu
quan hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL).
1.2.2. Ƣu điểm và nhƣợc điểm của MySQL
Hệ quản trị cơ sở dữ liệu MySQL có những ƣu điểm nổi bật :
+ MySQL là hệ quản trị cơ sở dữ liệu có tốc độ nhanh, đáng tin cậy, có thể hoạt
động trên nhiều hệ thống.
+ MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở miễn phí, kích thước nhỏ.
+ Nhờ đội ngũ phát triển năng động, tích cực, các phiên bản MySQL ngày càng
hoản thiện, bổ sung nhiều chức năng mới.
Tuy nhiên, MySQL vẫn còn một số hạn chế nhất định :
+ MySQL hoạt động tốt đối với những cơ sở dữ liệu vừa và nhỏ nhưng chưa hỗ trợ
tốt cho các cơ sở dữ liệu có kích thước rất lớn.
+ Trong các phiên bản trước phiên bản 5.0, MySQL không hỗ trợ ROLE, COMMIT
và Stored procedure.
+ Các giao tác (transaction) khi xử lý vẫn còn gặp sai sót.
Chương 2 – Phương pháp khai phá dữ liệu
7
Chƣơng 2 : PHƢƠNG PHÁP KHAI PHÁ DỮ LIỆU
2.1. Khái niệm khai phá dữ liệu
Theo Frawley, Piatetski-Shapiro và Matheus [2] : Khai phá dữ liệu là một bước
trong quá trình Phát hiện tri thức trong cơ sở dữ liệu, thi hành một thuật toán khai phá dữ
liệu để tìm ra các mẫu từ dữ liệu theo khuôn dạng thích hợp.
Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng
các kỹ thuật để tìm ra các mẫu hình có tính chính quy trong tập dữ liệu.
2.2. Các thành phần của giải thuật khai phá dữ liệu
Giải thuật khai phá dữ liệu bao gồm 3 thành phần chính như sau: biểu diễn mô
hình, đánh giá mô hình, tìm kiếm mô hình.
Biểu diễn mô hình: Mô hình được biểu diễn bằng một ngôn ngữ L để mô tả các
mẫu có thể khai thác được. Nếu sự mô tả bị hạn chế quá mức thì sẽ không thể dùng các
mô hình tạo ra để học hoặc sẽ không thể tạo ra được một mô hình chính xác cho dữ liệu.
Việc quan trọng là người phân tích dữ liệu cần phải hiểu đầy đủ các giả thiết mô tả. Một
điều cần thiết khác là người thiết kế giải thuật cần phải diễn tả được rằng các giả thiết mô
tả nào được tạo ra bởi giải thuật nào. Khả năng mô tả mô hình càng lớn thì càng làm tăng
nguy cơ quá trình học diễn ra vượt mức và làm giảm đi khả năng dự đoán các dữ liệu
chưa biết. Hơn nữa, việc tìm kiếm sẽ càng trở nên phức tạp hơn và việc giải thích mô hình
cũng khó khăn hơn.
Mô hình ban đầu được xác định bằng cách kết hợp biến đầu ra (phụ thuộc) với các
biến độc lập mà biến đầu ra phụ thuộc vào. Sau đó phải tìm những tham số mà bài toán
cần tập trung giải quyết. Việc tìm kiếm mô hình sẽ đưa ra được một mô hình phù hợp với
các tham số được xác định dựa trên dữ liệu. Trong một số trường hợp, tập dữ liệu được
chia thành tập dữ liệu học và tập dữ liệu thử. Tập dữ liệu học được sử dụng để làm cho
các tham số của mô hình phù hợp với dữ liệu. Mô hình sau đó sẽ được đánh giá bằng cách
đưa các dữ liệu thử vào mô hình và thay đổi lại các tham số cho phù hợp nếu cần. Mô
hình lựa chọn có thể là phương pháp thống kê như SASS, v.v…, một số giải thuật học
máy, mạng neuron, suy diễn hướng tình huống, các kỹ thuật phân lớp.
Chương 2 – Phương pháp khai phá dữ liệu
8
Đánh giá mô hình: Đánh giá xem một mẫu có đáp ứng được các tiêu chuẩn của
quá trình phát hiện tri thức hay không. Việc đánh giá độ chính xác dự đoán dựa trên đánh
giá chéo. Đánh giá chất lượng mô tả liên quan đến độ chính xác dự đoán, độ mới, khả
năng sử dụng, khả năng hiểu được của mô hình. Cả hai chuẩn thống kê và chuẩn logic
đều có thể được sử dụng để đánh giá mô hình. Việc đánh giá mô hình được thực hiện qua
kiểm tra dữ liệu (trong một số trường hợp kiểm tra với tất cả các dữ liệu, trong một số
trường hợp khác chỉ kiểm tra với dữ liệu thử). Ví dụ như đối với mạng neuron, việc đánh
giá mô hình được thực hiện dựa trên việc kiểm tra dữ liệu (bao gồm cả dữ liệu học và dữ
liệu thử), đối với nhiệm vụ dự đoán thì việc đánh giá mô hình ngoài kiểm tra dữ liệu còn
phải dựa trên độ chính xác của dự đoán.
Phƣơng pháp tìm kiếm: phương pháp tìm kiếm bao gồm hai thành phần: tìm
kiếm tham số và tìm kiếm mô hình. Trong tìm kiếm tham số, giải thuật cần phải tìm kiếm
các tham số để tối ưu hóa các tiêu chuẩn đánh giá mô hình với các dữ liệu quan sát được
và với một mô tả mô hình đã định. Việc tìm kiếm là không cần thiết đối với một số bài
toán trong đó các đánh giá tham số tối ưu có thể đạt được bằng các cách đơn giản hơn.
Đối với các mô hình chung, giải thuật “tham lam” thường được sử dụng lặp đi lặp lại.
Tìm kiếm mô hình xảy ra giống như một vòng lặp qua phương pháp tìm kiếm tham số:
mô tả mô hình bị thay đổi tạo nên một họ các mô hình. Với mỗi mô hình, phương pháp
tìm kiếm tham số được áp dụng để đánh giá chất lượng mô hình. Các phương pháp tìm
kiếm mô hình thường sử dụng các kỹ thuật tìm kiếm heuristic vì kích thước của không
gian các mô hình có thể thường ngăn cản các tìm kiếm tổng thể.
Hai phương pháp khai phá dữ liệu phổ biến được trình bày ở phần sau là Cây quyết
định và Phát hiện luật kết hợp.
2.3. Cây quyết định
Cây quyết định: Cây quyết định là một mô tả tri thức dạng đơn giản nhằm phân các
đối tượng dữ liệu thành một số lớp nhất định. Các nút của cây được gán nhãn là tên các
thuộc tính, các cạnh được gán các giá trị có thể của các thuộc tính, các lá mô tả các lớp
khác nhau. Các đối tượng được phân lớp theo các đường đi trên cây, qua các cạnh tương
ứng với các giá trị của thuộc tính trong đối tượng ở lá. Hình 4 mô tả một mẫu đầu ra có
Chương 2 – Phương pháp khai phá dữ liệu
9
thể của quá trình khai phá dữ liệu dùng phương pháp cây quyết định với tập dữ liệu khách
hàng xin vay vốn. Hai nút của cây được gán nhãn là “Nợ” và “Thu nhập”, các cạnh được
gán nhãn tương ứng để so sánh Nợ với giá trị n, Thu nhập với giá trị t. Các đối tượng lá
ứng với đường đi trong cây, ví dụ lá ngoài cùng bên trái ứng với các đối tượng có Nợ < n
và Thu nhập < t và không được cho vay.
Hình 4 – Ví dụ về cây quyết định.
Tạo luật: Các luật được tạo ra nhằm suy diễn một số mẫu dữ liệu có ý nghĩa về mặt
thống kê. Các luật có dạng “NẾU P THÌ Q”, với P là mệnh đề đúng với một phần trong
cơ sở dữ liệu, Q là mệnh đề dự đoán. Ví dụ ta có một mẫu phát hiện được bằng phương
pháp tạo luật: nếu giá 1 gói bánh giảm đi 5000 đồng thì số lượng bánh bán ra sẽ tăng thêm
5%. Những luật như thế này được sử dụng rất rộng rãi trong việc mô tả tri thức trong hệ
chuyên gia. Chúng có điểm thuận lợi là dễ hiểu đối với người sử dụng.
Cây quyết định và luật có ưu điểm là hình thức mô tả đơn giản, mô hình suy diễn
khá dễ hiểu đối với người sử dụng. Tuy nhiên, giới hạn của chúng là chỉ có thể biểu diễn
được một số dạng chức năng và vì vậy giới hạn về cả độ chính xác của mô hình. Nếu mở
rộng không gian của mô hình để cho phép có nhiều mô tả hơn thì mô hình sẽ dự đoán tốt
hơn nhưng lại rất khó hiểu. Cho đến nay, đã có rất nhiều giải thuật suy diễn sử dụng các
luật và cây quyết định được áp dụng trong học máy và trong thống kê.
Đối với quy mô lớn, người ta dựa trên các phương pháp đánh giá mô hình theo xác
suất với các mức độ mô hình phức tạp khác nhau. Các phương pháp tìm kiếm “tham
lam”, liên quan đến việc tăng và rút gọn các luật và các cấu trúc cây, chủ yếu được sử
dụng để khai thác không gian siêu mũ của các mô hình. Cây và luật chủ yếu được sử dụng
Chương 2 – Phương pháp khai phá dữ liệu
10
cho việc mô hình hóa dự đoán, phân lớp và hồi quy. Chúng cũng có thể được áp dụng cho
việc tóm tắt và mô hình hóa các mô tả.
2.4. Phát hiện các luật kết hợp
Phương pháp này nhằm phát hiện ra các luật kết hợp giữa các thành phần dữ liệu
trong cơ sở dữ liệu. Mẫu đầu ra của giải thuật khai phá dữ liệu là tập luật kết hợp tìm
được. Ta có thể lấy một ví dụ đơn giản về luật kết hợp như sau: sự kết hợp giữa hai thành
phần A và B có nghĩa là sự xuất hiện của A trong bản ghi kéo theo sự xuất hiện của B
trong cùng bản ghi đó: A ⇒ B.
Cho một lược đồ R={A1, …, Ap} các thuộc tính với miền giá trị {0,1}, và một quan
hệ r trên R. Một luật kết hợp trên r được mô tả dưới dạng X⇒B với X⊆R và B∈R\X. Về
mặt trực giác, ta có thể phát biểu ý nghĩa của luật như sau: nếu một bản ghi của bảng r có
giá trị 1 tại mỗi thuộc tính thuộc X thì giá trị của thuộc tính B cũng là 1 trong cùng bản
ghi đó.
Cho W ⊆R, đặt s(W,r) là tần số xuất hiện của W trong r được tính bằng tỷ lệ của các
hàng trong r có giá trị 1 tại mỗi cột thuộc W. Tần số xuất hiện của luật X⇒B trong r được
định nghĩa là s(X∪{B}, r) còn gọi là độ hỗ trợ của luật, độ tin cậy của luật là s(X∪{B},
r)/s(X, r). Ở đây X có thể gồm nhiều thuộc tính, B là giá trị không cố định. Nhờ vậy mà
không xảy ra việc tạo ra các luật không mong muốn trước khi quá trình tìm kiếm bắt đầu.
Điều đó cũng cho thấy không gian tìm kiếm có kích thước tăng theo hàm mũ của số lượng
các thuộc tính ở đầu vào. Do vậy cần phải chú ý khi thiết kế dữ liệu cho việc tìm kiếm các
luật kết hợp.
Nhiệm vụ của việc phát hiện các luật kết hợp là phải tìm tất cả các luật X⇒B sao
cho tần số của luật không nhỏ hơn ngưỡng σ cho trước và độ tin cậy của luật không nhỏ
hơn ngưỡng θ cho trước. Từ một cơ sở dữ liệu ta có thể tìm được hàng nghìn và thậm chí
hàng trăm nghìn các luật kết hợp.
Ta gọi một tập con X⊆R là thường xuyên trong r nếu thỏa mãn điều kiện s(X, r)≥σ.
Nếu biết tất cả các tập thường xuyên trong r thì việc tìm kiếm các luật rất dễ dàng. Vì
vậy, giải thuật tìm kiếm các luật kết hợp trước tiên đi tìm tất cả các tập thường xuyên
Chương 2 – Phương pháp khai phá dữ liệu
11
này, sau đó tạo dựng dần các luật kết hợp bằng cách ghép dần các tập thuộc tính dựa trên
mức độ thường xuyên.
Các luật kết hợp có thể là một cách hình thức hóa đơn giản. Chúng rất thích hợp cho
việc tạo ra các kết quả có dữ liệu ở dạng nhị phân. Hạn chế cơ bản của phương pháp này
là các quan hệ cần phải thưa theo nghĩa không có tập thường xuyên nào chứa nhiều hơn
15 thuộc tính. Giải thuật tìm kiếm các luật kết hợp tạo ra số luật ít nhất phải bằng với số
các tập thường xuyên, và nếu như một tập thường xuyên có kích thước K thì phải có ít
nhất là 2K tập thường xuyên. Thông tin về các tập thường xuyên được sử dụng để ước
lượng độ tin cậy của các tập luật kết hợp.
Chương 3 – Bộ công cụ Business Intelligence
12
Chƣơng 3 : BỘ CÔNG CỤ BUSINESS INTELLIGENCE
3.1. Business Intelligence
3.1.1. Khái niệm Business Intelligence
Business Intelligence (BI - giải pháp quản trị doanh nghiệp thông minh) là một quy
trình, công nghệ cho phép tổ chức, doanh nghiệp khai thác dữ liệu từ nhiều nguồn khác
nhau về khách hàng, thị trường, nhà cung cấp, đối tác, nhân sự và phân tích, sử dụng
các dữ liệu đó thành các nguồn thông tin có ý nghĩa nhằm hỗ trợ việc ra quyết định. Công
nghệ BI cung cấp một cách nhìn toàn cảnh về hoạt động của doanh nghiệp từ quá khứ,
hiện tại và các dự đoán tương lai. Mục đích của BI là hỗ trợ cho doanh nghiệp ra quyết
định tốt hơn, vì vậy một hệ thống BI còn có thể được coi là hệ thống hỗ trợ quyết đinh.
3.1.2. Các thành phần chính của hệ Business Intelligence
Dữ liệu dùng trong hệ thống BI là dữ liệu tổng hợp từ nhiều nguồn, nhiều định dạng,
phân tán và có tính lịch sử. Đồng thời việc phân tích dữ liệu trong BI không phải là những
phân tích đơn giản mà là những kỹ thuật trong khai phá dữ liệu dùng để phân lớp, phân
cụm, hay dự đoán. Vì vậy BI có mối quan hệ rất chặt chẽ với kho dữ liệu và khai phá dữ
liệu.
Hình 5 – Thành phần của hệ Business Intelligence [1].
Chương 3 – Bộ công cụ Business Intelligence
13
Các thành phần cơ bản của hệ thống Business Intelligence được mô tả như trong
hình 5.
Data Warehouse (Kho dữ liệu): Chứa dữ liệu tổng hợp về hoạt động kinh doanh,
khách hàng, nhân sự …của doanh nghiệp.
Data Mining (Khai phá dữ liệu): Các kỹ thuật dùng để khai phá dữ liệu và phát hiện
tri thức như phân lớp, phân nhóm, phát hiện luật kết hợp, dự đoán,…nhằm tổng hợp thông
tin hữu ích cung cấp cho việc phân tích ra quyết định.
Business Analyst (Phân tích kinh doanh) : Các nhà lãnh đạo doanh nghiệp đưa ra
những quyết định chiến lược đối với hoạt động kinh doanh của doanh nghiệp.
3.1.3. Lợi ích của Business Intelligence đối với doanh nghiệp
Tiết kiệm chi phí : Thông thường để biết được lí do vì sao kết quả kinh doanh tháng
này giảm so với tháng trước, nhà quản lý thường phải tìm hiểu qua nhiều kênh thông tin
khác nhau từ phòng kế toán tới phòng kinh doanh , nhiều khi tiêu tốn khá nhiều thời gian,
nguồn lực. Còn với giải pháp BI, tận dụng ưu thế có thể phân tích sâu theo nhiều chiều,
nhà quản lý có thể tìm ngay được nguyên nhân bị giảm doanh thu là do đâu, cụ thể vùng
miền nào mà hầu như không cần nhờ đến bất cứ ai. Trong bối cảnh hiện nay, việc giúp
doanh nghiệp truy xuất nhanh gọn thông tin được coi như một giải pháp giúp tiết kiệm chi
phí, nâng cao hiệu quả hoạt động.
Chọn lọc mặt hàng kinh doanh : Bằng cách đo lường các chỉ số đánh giá hiệu quả
hoạt động chủ chốt về số lần bảo hành, các mặt hàng bán chậm nhất hay số khách hàng
mua và tổng doanh thu bán được từ những mặt hàng đó, BI giúp nhà quản lý biết được
những mặt hàng kém hiệu quả, làm tiêu tốn nhiều chi phí cho các hoạt động hỗ trợ, tồn
kho để từ đó ra quyết định loại bỏ hay cải tiến thành một sản phẩm mới.
Phân tích hiệu quả của các chƣơng trình khuyến mãi, quảng cáo : Thông qua
việc thu thập thông tin về số lượng hàng bán, doanh thu, chi phí, số khách hàng mới, số
sản phẩm bán được của các chương trình khuyến mãi, quảng cáo hệ thống BI sẽ đưa ra
báo cáo phân tích về mức độ hiệu quả của chương trình, từ đó nhà quản lý sẽ biết được
chương trình dạng nào mang lại hiệu quả cao nhất để áp dụng lại cho những lần sau.
Ngoài ra, dựa trên những bảng khảo sát, dữ liệu về bán hàng, BI có thể cho biết tác động
Chương 3 – Bộ công cụ Business Intelligence
14
của những hoạt động đó như thế nào sau mỗi kỳ quảng cáo, tung ra sản phẩm, dịch vụ
mới.
Nâng cao năng lực của nhân viên kinh doanh : Trong doanh nghiệp có nhiều kênh
phân phối, nhiều chi nhánh đại lý, nhân viên kinh doanh được tổ chức thành nhiều cấp
nên việc đo lường và đánh giá hiệu quả làm việc của nhân viên một cách chính xác
thường khó khăn và tốn nhiều thời gian. Để đánh giá đúng phải dựa trên nhiều tiêu chí:
doanh số, số khách hàng mới tìm được, và phải có trọng số riêng cho từng kênh bán
hàng Với sự hỗ trợ của hệ thống BI, nhà quản lý có thể đo lường nhiều tiêu chí đánh giá,
từ đó có những quyết định thưởng phạt, điều chỉnh nhân sự chính xác.
Nâng cao hiệu quả phục vụ khách hàng : Nắm bắt thông tin khách hàng ở nhiều
góc độ khác nhau sẽ giúp doanh nghiệp phục vụ khách hàng tốt hơn. Hệ thống BI cung
cấp cho doanh nghiệp cái nhìn tổng thể về khách hàng bằng cách phân loại khách hàng
theo nhiều tiêu chí khác nhau: độ tuổi, giới tính, nơi sinh sống, thu nhập, doanh thu để
doanh nghiệp có thể cung cấp những sản phẩm phù hợp với nhu cầu của họ hay có thể
thiết kế những chương trình khuyến mãi, quảng cáo riêng cho những khu vực mà những
đối tượng đó tập trung đông nhất.
Đánh giá đối thủ cạnh tranh, mở rộng thị trƣờng : Đối với thị trường cạnh tranh
gay gắt như hiện nay, nhà quản lý không những phải nắm rõ tình hình của doanh nghiệp
mình mà cần phải đánh giá được tiềm lực của đối thủ cạnh tranh trong ngành, nắm được
danh sách những khách hàng tiềm năng để mở rộng thị phần, tìm kiếm thêm khách hàng
mới. Thông qua việc thu thập thông tin từ bên ngoài doanh nghiệp, BI có thể đưa ra báo
cáo so sánh doanh thu, số lượng khách hàng của doanh nghiệp so với các đối thủ khác
trong ngành. Hoặc khi đối thủ tung ra một chương trình khuyến mãi nào đó, doanh nghiệp
sử dụng hệ thống BI để đo lường doanh thu và số khách hàng của mình, từ đó đối chiếu
với mức độ lôi cuốn của chương trình, nếu số khách hàng giảm đáng kể nhưng doanh thu
vẫn không giảm nhiều chứng tỏ chương trình của đối thủ chỉ thu hút những khách hàng có
giá trị thấp, và ngược lại là chương trình thành công. Từ đó doanh nghiệp có thể học được
ở đối thủ và có những hành động để kéo những khách hàng có giá trị cao về phía mình.
Chương 3 – Bộ công cụ Business Intelligence
15
3.1.4. Các công cụ Business Intelligence
Các công cụ Business Intelligence là các phần mềm ứng dụng được thiết kế để báo
cáo, phân tích và trình bày dữ liệu. Các công cụ này sẽ đọc dữ liệu đã được lưu trữ từ
trước trong các kho dữ liệu hoặc chợ dữ liệu. Các công cụ Business Intelligence rất đa
dạng và có mặt trên hầu hết các hệ điều hành. Nhờ tính tiện dụng và khả năng tạo báo
cáo, phân tích dữ liệu chuyên nghiệp nên các công cụ Business Intelligence thường được
áp dụng trong các tổ chức kinh doanh, thống kê.
Các công cụ Business Intelligence được chia thành những loại chính sau :
- Bảng tính
- Phần mềm truy vấn, báo cáo (công cụ trích chọn, sắp xếp, tổng kết, trình diễn dữ
liệu)
- OLAP (xử lý phân tích trực tuyến)
- Bảng điều khiển kỹ thuật số
- Khai phá dữ liệu
- Khai phá xử lý
- Hệ quản lý hoạt động kinh doanh
- Hệ thống thông tin cục bộ
Một số công cụ Business Intelligence miễn phí,mã nguồn mở tiêu biểu : InetSoft,
InfoZoom, JasperSoft, MicroStrategy, Pentaho, Openl,…
3.1.5. Kết hợp Business Intelligence và MySQL
Hiện nay trên thị trường giải pháp BI đã xuất hiện nhiều bộ sản phẩm của các hãng
lớn như : Oracle Enterprise BI Server (Oracle), SAP Business Objects Enterprise (SAP),
QL Server Analysis Service (Microsoft)…Các sản phẩm này đều đã tập trung giải quyết
các yêu cầu đối với một hệ thống BI hoàn chỉnh. Tuy nhiên, một cản trở lớn đối với các
doanh nghiệp muốn tiếp cận các giải pháp này chính là vấn đề tài chính. Kinh phí để xây
dựng hệ thống BI cũng như cơ sở dữ liệu tương ứng là không nhỏ. Đồng thời, các hệ
Chương 3 – Bộ công cụ Business Intelligence
16
thống này thường đi kèm với những cơ sở dữ liệu tương đối phức tạp như Oracle, MS
SQL Server, đòi hỏi phải có những nhân sự được đào tạo tốt để vận hành.
Tận dụng lợi thế của MySQL, hệ quản trị cơ sở dữ liệu mà nguồn mở miễn phí, một
số nhà sản xuất đã cho ra đời các bộ sản phẩm BI trong đó sử dụng hệ quản trị cơ sở dữ
liệu MySQL. Đây là giải pháp tốt cho những doanh nghiệp vừa vả nhỏ. Với kinh phí yêu
cầu thấp, hệ thống BI kết hợp MySQL vẫn thực hiện gần như đầy đủ các chức năng : xây
dựng báo cáo, khai phá dữ liệu, phân tích trực tuyến ….đáp ứng cho việc hỗ trợ ra quyết
định của nhà quản lý.
Trong thực tế, BI mang lại lợi ích rõ nét nhất cho các doanh nghiệp ngành hàng tiêu
dùng, giải khát, thực phẩm khi mà yếu tố về thời gian được đặt lên hàng đầu. Trên thế
giới, BI đã trở thành công cụ quản trị quen thuộc của nhiều tên tuổi lớn như: BMW,
Coca-Cola, Unilever… Còn tại Việt Nam, một số công ty lớn đã và đang triển khai BI và
coi đó như một lợi thế của mình. Trong thời gian tới, khi những bộ sản phẩm BI kết hợp
MySQL đã khắc phục được vấn đề về tài chính, giải pháp này chắc chắn sẽ được áp dụng
rộng rãi.
3.2. Kỹ thuật OLAP
3.2.1. Khái niệm OLAP
Xử lý phân tích trực tuyến (OLAP - Online Analitical Proccessing) là phương pháp để
trả lời những truy vấn đa chiều một cách nhanh chóng. OLAP là một phần của hệ
Business Intelligence, cùng với báo cáo quan hệ và khai phá dữ liệu. Nó cho phép người
sử dụng phân tích dữ liệu qua việc cắt lát (slice) dữ liệu theo nhiều khía cạnh khác nhau,
khoan xuống (drill down) mức chi tiết hơn hay cuộn lên (roll up) mức tổng hợp hơn của
dữ liệu. Bản chất cốt lõi của OLAP là dữ liệu được lấy ra từ kho dữ liệu hoặc từ Datamart
(kho dữ liệu chủ đề) sau đó được chuyển thành mô hình đa chiều và được lưu trữ trong
một kho dữ liệu đa chiều. Đối tượng chính của OLAP là khối, một sự biểu diễn đa chiều
của dữ liệu chi tiết và tổng thể. Một khối bao gồm một bảng sự kiện (Fact), một hoặc
nhiều bảng chiều (Dimensions), các đơn vị đo (Measures) và các phân hoạch (Partitions).
Những ứng dụng tiêu biểu của OLAP : báo cáo bán hàng, báo cáo marketing, báo cáo