Trực quan hóa các truy xuất website để hỗ trợ kinh doanh trực tuyến
Trang 1ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
ĐỂ HỖ TRỢ KINH DOANH TRỰC TUYẾN
HỘI ĐỒNG: Hệ Thống Thông Tin 2
GVHD : ThS Đặng Trần Trí
GVPB : ThS Trần Thị Quế Nguyệt
Trang 3Chúng tôi xin cam đoan: những kết quả đạt được là do quá trình tìm tòi vàphân tích mà có được, không sao chép của bất kỳ ai khác.
Trang 4Chúng em xin chân thành cảm ơn quý thầy cô khoa Khoa học & Kỹ thuật máytính trường Đại học Bách Khoa thành phố Hồ Chí Minh đã giúp đỡ, truyền đạt nhữngkiến thức quý báu và cần thiết để chúng em có thể thực hiện được đề tài này.
Đặc biệt chúng em xin chân thành cảm ơn thầy Đặng Trần Trí đã tận tình hướngdẫn chúng em trong suốt giai đoạn làm luận văn, đóng góp những ý kiến chân thành đểgiải quyết những vấn đề phát sinh trong lúc phân tích và hiện thực
Trang 5Bước vào những năm đầu thế kỷ 21, những ảnh hưởng của công nghệ thông tinkhông còn đi theo chiều rộng mà chủ yếu dần đi vào chiều sâu Điều này có thể nhậnthấy qua sự xuất hiện của công nghệ thông tin trong tất cả các ngành nghề, lĩnh vựcđời sống và xã hội Một trong những lĩnh vực đang phát triển mạnh hiện nay là kinhdoanh trực tuyến, đó là hình thức hoạt động quảng bá, buôn bán sản phẩm và dịch vụthông qua Internet Ví dụ: quảng cáo sản phẩm trên trang web, gửi thông tin quảng cáoqua email, đấu giá sản phẩm qua mạng, mua bán qua mạng… Sự xuất hiện củaInternet đã tạo nên cầu nối đến những khách hàng trên toàn thế giới Nó đem lại nhiềulợi ích như chi phí thấp để truyền tải tin tức và các thông tin đa phương tiện đến sốlượng lớn đối tượng tiếp nhận, đồng thời thông điệp được truyền tải dưới nhiều hìnhthức khác nhau như văn bản, hình ảnh, âm thanh, phim, trò chơi… Thừa kế những đặcđiểm nổi trội trên của Internet, kinh doanh trực tuyến đã cung cấp những dịch vụ trongthời gian ngắn và mang tính tương tác cao Giờ đây việc có một trang web để giớithiệu hay mua bán sản phẩm của mình không còn là vấn đề lớn mà điều cần nói đến ởđây chính là làm sao biết được nó hoạt động có hiệu quả hay không Trong kinh doanhnếu ta chỉ đơn thuần đánh giá hiệu quả kinh doanh qua doanh số cuối kỳ và mục tiêucủa chiến lược kinh doanh lúc nào cũng là lợi nhuận thì với tầm nhìn thiển cận đó sẽkhông thể tạo nên một doanh nghiệp hoặc một thương hiệu vững chắc; để làm đượcđiều đó người quản lý cần quan tâm tới nhiều vấn đề của khách hàng, đặc biệt là tháiđộ của họ đối với sản phẩm và dịch vụ của mình cung cấp từ đó thay đổi chiến lượckinh doanh phù hợp hơn nhằm mục đích làm hài lòng khách hàng Với cách kinhdoanh truyền thống để biết thái độ của khách hàng người ta thường phỏng vấn trựctiếp hay tiến hành những cuộc khảo sát, cách thức này tuy cũng đã từng mang lại hiệuquả cao nhưng lại giới hạn về mặt địa lý và thời gian, không phù hợp với những kháchhàng của hình thức kinh doanh trực tuyến vốn phân bố trên một vùng rộng lớn khôngxác định và thời gian hoạt động linh hoạt Như vậy cần có một giải pháp mang tínhcông nghệ nhằm giải quyết vấn đề trên Đó chính là mục tiêu ban đầu đặt ra của luậnvăn Trong luận văn này, chúng ta sẽ từng bước xây dựng nên một công cụ hỗ trợ kinhdoanh trực tuyến tự động với mục đích làm giảm công sức con người và khắc phụchạn chế của những công cụ hiện tại trong việc: thống kê phân tích các hành động củakhách hàng trên trang web kinh doanh trực tuyến Đề tài này ngoài mục đích khắcphục những vấn đề trên, việc hiện thực nó được thực hiện trên một công nghệ mới(công nghệ Flash của Adobe) mà hiện tại chưa có ứng dụng nào tương tự được hiệnthực trên công nghệ này với mục đích tương tự Từ việc phân tích đề tài cho đến ápdụng và tích hợp các công nghệ đều do nhóm tự phát triển thành một khuôn mẫu để từđó có thể áp dụng cho các ứng dụng dạng khác Điều này cũng là một bước tiến manglại tính mới trong phân tích và hiện thực của đề tài này.
Trang 6LỜI CAM ĐOAN ii
LỜI CẢM ƠN iii
TÓM TẮT LUẬN VĂN iv
MỤC LỤC v
DANH MỤC HÌNH ẢNH vii
CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI 1
1.1 Mục đích của đề tài và tầm quan trọng 1
1.2 Các công cụ sẵn có và ưu nhược điểm 3
1.2.1 Google Analytics 3
1.2.2 Yahoo! Web Analytics(YWA) 4
1.2.3 Piwik 6
1.2.4 Woopra 7
1.2.5 AWStats 8
1.2.6 JAWStats 9
1.3 Cấu trúc của luận văn 10
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI 12
2.1 Tổng quan về kinh doanh trực tuyến 12
2.1.1 Giới thiệu 12
2.1.2 Ưu nhược điểm của kinh doanh trực tuyến 13
2.2 Tổng quan về phân tích web 14
2.2.1 Khái niệm 14
2.2.2 Các phương pháp thu thập dữ liệu 14
2.3 Tổng quan về khai phá sử dụng web 18
2.3.1 Giới thiệu chung 18
2.3.2 Các công đoạn của khai phá sử dụng web 20
2.4 Tổng quan về trực quan hóa 25
2.4.1 Giới thiệu chung 25
2.4.2 Quá trình trực quan hóa thông tin 26
CHƯƠNG 3 HƯỚNG TIẾP CẬN VẤN ĐỀ 34
3.1 Chức năng thống kê 34
Trang 73.1.2 Mô hình trực quan và tương tác được áp dụng 34
3.2 Chức năng phân tích truy xuất 40
3.2.1 Mô tả chức năng 40
3.2.2 Mô hình trực quan và tương tác được sử dụng 41
CHƯƠNG 4 HIỆN THỰC ĐỀ TÀI 44
4.1 Lược đồ Use Case và prototype 44
4.1.1 Lược đồ Use Case 44
4.1.2 Prototype cho các chức năng 44
4.2 Kiến trúc ứng dụng 57
4.2.1 Hình ảnh tổng quan về kiến trúc ứng dụng 57
4.2.2 Vai trò của các thành phần 58
4.3 Các lược đồ tuần tự 61
4.4 Thiết kế Cơ Sở Dữ Liệu 75
4.4.1 Thiết kế ERD 75
4.4.2 Ánh xạ từ ERD sang thiết kế bảng 76
4.4.3 Chi tiết hiện thực các bảng 81
4.5 Hiện thực các chức năng 85
4.5.1 Giao diện chính của ứng dụng 85
4.5.2 Các module chính trong quá trình hiện thực 85
4.5.3 Chức năng thu thập dữ liệu 88
4.5.4 Chức năng tiền xử lý 89
4.5.5 Chức năng thống kê 93
4.5.6 Chức năng hỗ trợ làm báo cáo 104
4.5.7 Chức năng phân tích truy xuất website 105
CHƯƠNG 5 KẾT LUẬN CHUNG VÀ MỞ RỘNG 116
5.1 Kết luận chung 116
5.2 Mở rộng 116
DANH MỤC HÌNH ẢNH Hình 1-1 Google Analytics 3
Trang 8Hình 1-3 Piwik 6
Hình 1-4 Woopra 7
Hình 1-5 AWStats 8
Hình 1-6 JAWStats 10
Hình 2-1 Thu thập dữ liệu bằng web log 14
Hình 2-2 Thu thập dữ liệu bằng Web Beacons 15
Hình 2-3 Thu thập dữ liệu bằng JavaScript 16
Hình 2-4 Thu thập dữ liệu bằng Packet Sniffing 17
Hình 2-5 Tổng quan về khai phá sử dụng web 20
Hình 2-6 Quy trình khai phá sử dụng web 21
Hình 2-7 Minh họa về log file 22
Hình 2-8 Định ra các session từ log file 25
Hình 2-9 Quá trình biến đổi dữ liệu thành sự hiểu biết (Wisdom) 26
Hình 2-10 Quá trình trực quan hóa thông tin 26
Hình 2-11 Bảng dữ liệu GNP theo quốc gia 28
Hình 2-12 Biểu đồ cột 29
Hình 2-13 Đồ thị biểu diễn các đường bay trên thế giới 29
Hình 2-14 Các thành phần đồ họa căn bản 29
Hình 2-15 Bảng dữ liệu GNP theo từng quốc gia 30
Hình 2-16 Ví dụ về thuộc tính đồ họa 30
Hình 2-17 Sáu màu căn bản và ví dụ về cường độ màu 31
Hình 2-18 Tooltip trong một bản đồ 32
Hình 2-19 Co hình ảnh để thu gọn diện tích 32
Hình 2-20 Hình ảnh ba chiều giúp tăng diện tích hiển thị 33
Hình 3-1 Biểu đồ đường với dữ liệu chênh lệch nhau lớn 35
Hình 3-2 Biểu đồ cột hỗ trợ tương tác tốt 35
Hình 3-3 Thay đổi việc hiển thị dữ liệu theo ngày 36
Hình 3-4 Tương tác với các thành phần trên biểu đồ 36
Hình 3-5 Hiển thị phân bố truy cập theo tương tác của người dùng 36
Trang 9Hình 3-7 Biểu đồ tròn cho thấy được thị phần giữa các hệ thống 37
Hình 3-8 Thông tin dạng bảng cung cấp thêm thông tin về hệ thống 38
Hình 3-9 Xem thống kê các trình duyệt liên quan đến Win XP 38
Hình 3-10 Xem thông tin hệ thống có lượng truy cập > 30 39
Hình 3-12 Các tương tác của người dùng trên đường dẫn 40
Hình 3-13 Đồ thị dạng trung tâm 41
Hình 3-14 Chọn vào biểu tượng mở rộng để xem những nút tiếp theo 42
Hình 3-15 Đồ thị dạng phân cấp 43
Hình 4-1 Lược đồ Use-Case 44
Hình 4-2 Màn hình chính 45
Hình 4-3 Màn hình chức năng Visits theo ngày 47
Hình 4-6 Màn hình Entry Pages 51
Hình 4-7 Tìm nguồn và đích của một node 53
Hình 4-9 Chọn nút nguồn và đích 55
Hình 4-10 Tìm đường đi giữa 2 trang 55
Hình 4-11 Tương tác với một nút 56
Hình 4-12 Goal settings 56
Hình 4-13 Kiến trúc ứng dụng 58
Hình 4-14 Chức năng tiền xử lý 62
Hình 4-15 Thống kê truy cập theo ngày tháng 63
Hình 4-16 Thống kê truy cập theo năm, giờ 64
Hình 4-17 Thống kê trung bình truy cập theo ngày, giờ 65
Hình 4-18 Thống kê thông tin hệ thống 66
Hình 4-19 Thống kê thông tin hệ điều hành 67
Hình 4-20 Thống kê thông tin trình duyệt 68
Hình 4-21 Thống kê thông tin trang vào, trang thoát 69
Hình 4-22 Thống kê thông tin trang ngoài, trang chết 70
Hình 4-23 Thống kê thông tin truy cập có đi qua một trang nào đó 71
Hình 4-24 Chức năng load goal và cập nhật goal 72
Trang 10Hình 4-26 Mở rộng một nút và tìm đường đi phổ biến giữa hai nút bất kỳ 74
Hình 4-27 Lược đồ ERD 76
Hình 4-28 Mối quan hệ giữa các bảng 77
Hình 4-29 Các bảng sinh ra do hiệu suất 77
Hình 4-30 Thông tin bảng log_visit 81
Hình 4-31 Thông tin bảng log_link_visit_url 82
Hình 4-32 Thông tin bảng log_url 82
Hình 4-33 Thông tin bảng visit_info 82
Hình 4-34 Thông tin bảng visit_overview_info 82
Hình 4-35 Thông tin bảng user_setting_info 83
Hình 4-36 Thông tin bảng entry_page_info 83
Hình 4-37 Thông tin bảng exit_page_info 83
Hình 4-38 Thông tin bảng visit_with_page 83
Hình 4-39 Thông tin bảng link_info 84
Hình 4-40 Thông tin bảng avg_visit 84
Hình 4-41 Thông tin bảng goal 84
Hình 4-42 Thông tin bảng node_graph 84
Hình 4-43 Thông tin bảng edge_graph 85
Hình 4-44 Giao diện chính của ứng dụng 85
Hình 4-45 Thông tin trong log file 90
Hình 4-46 Mô phỏng quá trình tiền xử lý 90
Hình 4-47 Giao diện chính của goal 93
Hình 4-48 Thông tin chi tiết của goal được chọn 94
Hình 4-49 Thay đổi thông tin chi tiết một goal 94
Hình 4-50 Minh họa truy cập theo ngày bằng biểu đồ đường 95
Hình 4-51 Minh họa truy cập theo ngày bằng biểu đồ cột 95
Hình 4-52 Xuất hiện thanh kéo khi có quá nhiều thành phần 95
Hình 4-53 Chức năng drill down 96
Hình 4-54 Minh họa truy cập theo tháng 96
Trang 11Hình 4-56 Minh họa truy cập theo giờ trong ngày 97
Hình 4-57 Minh họa thống kê thông tin hệ thống 98
Hình 4-58 Minh họa thống kê thông tin họ trình duyệt 99
Hình 4-59 Minh họa thống kê thông tin trình duyệt 99
Hình 4-60 Minh họa thống kê thông tin hệ điều hành 100
Hình 4-61 Thống kê thông tin trình duyệt ứng với 1 hệ điều hành 100
Hình 4-62 Minh họa thống kê thông tin trang vào 101
Hình 4-63 Minh họa việc mở một trang 101
Hình 4-64 Chức năng sửa tên trang 101
Hình 4-65 Sửa tên trang 102
Hình 4-66 Kết quả sau khi sửa tên trang 102
Hình 4-67 Chức năng view traffic 102
Hình 4-68 Xem thông tin truy cập một trang 102
Hình 4-69 Thống kê các trang thoát 103
Hình 4-70 Thống kê các trang dẫn ra ngoài 103
Hình 4-71 Thống kê các trang bị chết 104
Hình 4-72 Chức năng kết xuất hình ảnh 104
Hình 4-73 Kết xuất hình ảnh 104
Hình 4-74 Chọn chức năng kết xuất excel 105
Hình 4-75 Kết xuất excel 105
Hình 4-76 Nguồn đến mức 1 106
Hình 4-77 Nguồn đến mức 2 106
Hình 4-78 Minh họa nguồn đến mức 1 107
Hình 4-79 Minh họa nguồn đến mức 2 107
Hình 4-80 Nguồn đi mức 1 108
Hình 4-81 Nguồn đi mức 2 108
Hình 4-82 Minh họa nguồn đi mức 1 109
Hình 4-83 Minh họa nguồn đi mức 2 109
Hình 4-84 Mở rộng nút S 110
Trang 12Hình 4-86 Chọn “Trang Chủ” làm nút nguồn 111
Hình 4-87 Mở rộng nút khuyến mãi bằng cách chọn biểu tượng dấu + 111
Hình 4-88 Kết quả sau khi mở rộng 112
Hình 4-89 Tất cả các nguồn đến từ nút nguồn 113
Hình 4-90 Giả sử nút 15 là nút đích 114
Hình 4-91 Đồ thị kết quả gồm các nút liên quan 114
Hình 4-92 Chọn nút nguồn nút đích từ 2 danh sách 115
Hình 4-93 Những con đường được hiển thị 115
Trang 131.1 Mục đích của đề tài và tầm quan trọng
Ngày nay với sự ra đời và phát triển mạnh mẽ của Internet trong nhiều lĩnh vựcđã tạo nên nhiều cơ hội và thách thức cho chúng ta Internet cùng với các giải phápcông nghệ thông tin ngày càng xâm nhập sâu vào cuộc sống như một thành phầnkhông thể thiếu được Nếu một ngày nào đó chúng ta bật máy tính lên mà không cóInternet, chắc hẳn chúng ta sẽ rất khó chịu và cảm thấy như thiếu đi một trợ thủ đắclực trong công việc hằng ngày cũng như trong giao tiếp, giải trí Việc tìm hiểu thôngtin, giao tiếp giờ đây được thực hiện một cách nhanh chóng thông qua các phương tiệnnhư trang web, thư điện tử, phần mềm chat… Vậy trong kinh doanh Internet có ảnhhưởng vai trò cụ thể như thế nào?
Nhờ Internet, nhiều hình thức kinh doanh mới xuất hiện thay thế dần những hìnhthức truyền thống Các công ty không những bán sản phẩm của mình thông qua cáckênh phân phối là các đại lý, các siêu thị, cửa hàng bán lẻ mà còn có thể thông quaInternet Nhờ đó con đường liên kết từ họ đến khách hàng ngày càng rút ngắn hơn.Hầu hết những công ty này đều có những website để trưng bày và bán sản phẩm vàkhách hàng chỉ cần truy cập vào website của công ty để tìm hiểu cũng như thực hiệngiao dịch mua bán, nhưng nếu như vậy công ty làm sao biết được tình hình kinh doanhcủa mình trên website như thế nào? Website của mình có hoạt động hiệu quả haykhông? Chiến lược kinh doanh, quảng bá sản phẩm có thu hút được sự quan tâm củakhách hàng? Tình hình mua bán hàng hóa như thế nào? Khách hàng làm gì trên trangweb? Họ đến trang web của mình với mục đích gì? Khách hàng có thỏa mãn vớinhững dịch vụ hiện có hay không? Khách hàng là ai, họ đến từ đâu? Đó là một vàitrong nhiều câu hỏi mà nhà đầu tư muốn quan tâm Như vậy làm thế nào để giúp họ trảlời những câu hỏi đó?
Phương pháp truyền thống nhất là tiến hành những cuộc khảo sát trực tiếp đếnkhách hàng để thu thập thông tin Cách thức này thường được thể hiện thông quanhững hoạt động sau: làm biểu mẫu, phỏng vấn hoặc gọi điện trực tiếp đến kháchhàng, gặp và hỏi ngẫu nhiên, thực hiện các cuộc bán hàng lưu động hay dùng thử sảnphẩm Cách thức này tuy mang lại hiệu quả tốt trong một vài điều kiện nhất định nhưkhách hàng khá tập trung, vùng cần khảo sát giới hạn, và thường chỉ giới hạn tại mộtvài điểm trong một hoặc một vài thành phố Nhưng đối với hình thức kinh doanh trựctuyến, phương pháp này cực kỳ kém hiệu quả hoặc có thể nói là không khả thi Đơngiản vì làm thế nào nhà sản xuất có thể biết được khách hàng đến từ đâu? Họ tập trungnhiều ở vùng nào để khảo sát? Chưa nói hết là khách hàng truy cập website của mìnhrất nhiều là ngẫu nhiên từ các công cụ tìm kiếm hoặc từ trang web khác nên vị trí địalý của họ cực kỳ rời rạc Còn nếu dựa vào các thông tin khách hàng cung cấp chongười quản trị trang web khi họ thực hiện các thao tác giao dịch? Điều này có giá trị,nhưng giá trị lại không cao Vì tỉ lệ người thực hiện giao dịch với tổng số người đã tớitrang web của mình là rất nhỏ (Theo thống kê của Google là thường không quá 5%),
Trang 14như vậy nếu người chủ trang web chỉ tập trung vào 5% này thì họ đã lãng phí rất lớnkhi bỏ qua “cảm nhận” của 95% còn lại, đặc biệt trong đó có rất nhiều là đã “chê” sảnphẩm của nhà sản xuất Như vậy nếu có cách nào đó tìm hiểu được thông tin về tất cả(hoặc phần lớn) những hoạt động của khách hàng trên website thì từ đó người quản trịcó thể hiểu được thêm rất nhiều về khách hàng cũng như thái độ của họ với sản phẩmvà trang web của mình.
Chúng ta biết rằng mỗi website thường đặt trên một server, những truy xuất củangười dùng đến website đều được ghi lại trên trong file log của web server Như vậythì muốn trả lời những câu hỏi trên, cách đơn giản nhất là mở các file này lên và xemxét, xem người dùng làm gì và vào những trang nào Nhưng vấn đề là liệu có thể làmđược không khi file log của web server thường có kích thước lớn và hỗn độn, chỉ phùhợp cho một vài đối tượng là chuyên gia trong lĩnh vực máy tính theo dõi một vài hoạtđộng của hệ thống website khi xảy ra sự cố mà không phù hợp với phần lớn người sởhữu website không có nhiều kiến thức về web Vậy phải làm thế nào? Cách duy nhất làphải tìm kiếm một công cụ nào đó có khả năng tự động phân tích các file này và biếnnhững gì trong đó thành dạng thức mà một người bình thường ít kiến thức về côngnghệ có thể hiểu được
Công cụ đó có khả thi hay không? Tất nhiên là có thể vì hiện tại có rất nhiềucông cụ cũng như công nghệ, giải thuật đáp ứng được yêu cầu phân tích dữ liệu vàtruyền tải thông tin tới người dùng Để đáp ứng một phần nhu cầu cho nhà sản xuất,kinh doanh, người quản trị website, một công cụ như vậy được xây dựng với mục đích
“Hỗ trợ kinh doanh trực tuyến bằng trực quan hóa các truy xuất website” Với công cụloại này những lợi ích mà nó mang lại cho những nhóm người trên như sau:
Đối với nhà sản xuất/kinh doanh :
Xu hướng/dạng lưu lượng truy cập trên website của mình là gì?
Những sáng kiến tiếp thị nào hiệu quả nhất
Khách hàng và phân đoạn khách hàng nào có giá trị nhất
Khách truy cập tới từ đâu và họ làm gì trên trang web của mình
Làm thế nào trang web của tôi có thể chuyển đổi từ nhiều khách truy cậpthành nhiều khách hàng
Từ khóa nào ảnh hưởng tới thành công và chuyển đổi nhất
Quảng cáo hoặc sáng tạo trực tuyến nào hiệu quả nhất?
Đối với người phát triển website và nội dung :
Có phải yếu tố thiết kế website đang loại bỏ khách không?
Tại sao nhiều người rời khỏi trang web mà không thực hiện việc tôi muốn?
Trang 15Công cụ này sử dụng những thuật toán phân tích dữ liệu và lấy dữ liệu phù hợpđể thu được các thông tin hữu ích cho những mục đích nhất định: như theo dõi lưulượng, nội dung truy cập, hướng truy cập… Sau đó biểu diễn bằng hình ảnh (biểu đồ),báo cáo cho người sử dụng hiểu được các thông tin đó Việc sử dụng các công cụ phântích website này giúp cho người phân tích website giảm bớt (hoặc gần như không quantâm) tới các công nghệ kĩ thuật của trang web, mà chỉ quan tâm tới các thông tin hữuích thu được từ công cụ hỗ trợ, từ đó tìm ra giải pháp để phát triển website của mình.Nhờ đó, những người sở hữu trang web cũng có thể tự mình phân tích các thông tinhữu ích về tương tác của người dùng với trang web, giúp giảm bớt rất nhiều chi phí vềnhân sự trong công việc phân tích, phát triển website.
1.2 Các công cụ sẵn có và ưu nhược điểm
Phân tích dữ liệu rồi biểu diễn, thống kê thành hình ảnh là một công việc khônghề mới và trong môi trường kinh doanh trực tuyến Internet, thì các công cụ phục vụphân tích này có khá nhiều, đa dạng từ cách lấy dữ liệu, phân tích, hiển thị tới các côngnghệ thực hiện Hiện nay trên thị trường có thể nói đến một vài công cụ phổ biến như:Google Analytics, Yahoo! Web Analytics, FeedBurner…
1.2.1 Google Analytics
+ Google Analytics là một dịch vụ giúp bạn theo dõi website của mình một cách
rất đầy đủ Điều này có ích với các webmaster vì nhờ những kết quả thu lượm đượcbạn có thể đưa ra những chiến lược khác nhau cho việc phát triển website của mình.Xét về tính năng, uy tín cũng như độ tin cậy, dịch vụ này không hề thua kém bất cứmột dịch vụ trả phí nào Bạn có thể xem số người truy cập mỗi ngày, số trang họ đãxem, số người quay lại trang web và rất nhiều thông tin khác Các thông tin đều đượcthể hiện một cách rõ ràng dưới dạng biểu đồ hoặc bảng biểu và có thể trích xuất nó rathành tập tin xml, txt để xem offline trên máy tính Với tính năng đầy đủ và độ ổn địnhcao, Google Analytics là một trong những dịch vụ ưu tiên hàng đầu để các webmasterlưu tâm
Hình 1-1 Google Analytics
+Các tính năng chính:
Trang 16 Visitor Oveview: Biểu đồ tổng quan về lượng truy cập.
Map Overlay World: Bản đồ truy cập toàn thế giới cho ta biết người sử dụngtruy cập theo địa chỉ IP các nước khác nhau
Traffic Source Overview: Tổng quan về nguồn truy cập đến (dạng biểu đồtròn)
Conection Speeds: Tốc độ truy cập của người dùng
+Ưu điểm:
Hỗ trợ thống kê các tiêu chí về thương mại điện tử
Đồng bộ với các dịch vụ khác của Google
Không thấy được tần suất truy cập giữa hai trang
Có thể bị lạm dụng với mục đích khác
Không cung cấp số liệu thống kê theo “thời gian thực”, sau khi cài đặt dịch
vụ này, bạn cần chờ một vài ngày để công cụ thu thập số liệu và lập bảngbáo cáo, sau này khi sử dụng các số liệu phân tích hiện tại đều chậm hơnmột ngày
1.2.2 Yahoo! Web Analytics(YWA)
Là một hệ thống phân tích website cấp độ doanh nghiệp có khả năng tùy chỉnhcao giúp đỡ cho các doanh nghiệp kinh doanh bán được nhiều sản phẩm và sự thỏamãn của khách hàng, giảm chi phí marketing và hiểu thêm về khách hàng trực tuyến.Bằng cách lưu trữ dữ liệu dưới dạng thô nên YWA không chỉ là một công cụ báocáo đơn giản nó còn là một công cụ phân tích dữ liệu mạnh mẽ và linh hoạt
Việc thu thập dữ liệu cũng dựa vào các code JavaScript
Trang 17Hình 1-2 Yahoo! Web Analytics
Vài đặc điểm nổi bật:
Tùy chỉnh Dashboard với các chỉ số đánh giá họat động (KPIs), khoảng thờigian (time period), mục tiêu (goals), và các biểu đồ để bạn có thể theo dõi tìnhhình họat động của website Dễ dàng tạo, chỉnh sửa, kéo thả các thành phầntrong Dashboard (Dashboard Widgets)
Mỗi người dùng có thể tạo nhiều Dashboard cá nhân cho một website phục vụcho những nhu cầu khác nhau Để tạo một Dashboard mới, đơn giản chỉ cầncopy cái cũ và edit nó cho phù hợp với mục đích mới của mình
Xem các thông tin về truy cập Thông tin về truy cập tới website sẽ được cậpnhật một vài phút sau khi nó xảy ra trên website của mình
Xem các thông tin về đường dẫn được click, các tương tác, thời gian lướt webcủa từng truy cập
Theo dõi khoảng 50 tương tác các loại và tất cả đường dẫn và trang được load
Tổng hợp các thông tin về độ tuổi, giới tính
Thống kê các danh mục ưu thích của khách hàng
So sánh các số liệu giữa các thời điểm
Theo dõi đường đi của khách hàng
Theo dõi tới 15 bước đi trong website được định trước (Ví dụ theo dõi tìnhhình truy cập từ trang chủ tới trang sản phẩm, trang thông tin chi tiết và cuốicùng là trang trả tiền trong một trang web bán hàng trực tuyến…)
Có thể theo dõi mọi loại phần tử gồm ajax, flash và video
Trang 18Hình 1-3 Piwik
Điểm mạnh của Piwik:
Phương pháp thu nhập và phân tích dữ liệu theo thời gian thực Khi ngườidùng muốn xem các thông tin báo cáo trong ngày hiện tại, Piwik sẽ phântích tất cả các truy xuất xảy ra trong ngày tính tới thời điểm báo cáo
Vì dữ liệu thu nhập sẽ lưu trong webserver nên người dùng có thể lưu lạicác dữ liệu này cho các mục đích phân tích và báo cáo sau này
Các thành phần giao diện có thể kéo thả, thêm bớt biểu đồ, thay đổi kiểubiểu đồ khá đa dạng
hợp với nhiều mục đích
Trang 19Nhược điểm:
Các loại báo cáo khá đầy đủ nhưng thông tin chi tiết bổ sung cho từngbiểu đồ khá đơn giản, chủ yếu vẫn chỉ có duy nhất một biểu đồ mà khôngcó các số liệu diễn giải (dẫn xuất) kèm theo Không hỗ trợ phân tích đàosâu
Chủ yếu là các số liệu đơn độc của một thông tin nào đó, không đưa ra sự
so sánh cũng như liên quan, người dùng phải dựa vào kiến thức của mìnhđể tìm ra điều đó
Không hỗ trợ thống kê thiết bị truy xuất là mobile
1.2.4 Woopra
Là ứng dụng gồm phần chạy trên server và một phần chạy trên client giúp thống
kê hơn 40 sự kiện và thông tin phân tích Ứng dụng này thu nhập dữ liệu bằngJavaScript
Là một ứng dụng phân tích theo thời gian thực, ngay sau khi sự kiện xảy ra bênserver thì ứng dụng có thể nhận được và hiển thị Các dữ liệu được phân tích gồm có:Các thông tin của user, tình hình truy cập, đường đi của khách hàng – điểm đến vàđiểm kết thúc Ngoài ra ứng dụng có chức năng tìm kiếm khá mạnh mẽ
Hình 1-4 Woopra
Ưu điểm:
Trang 20 Là ứng dụng phân tích thời gian thực.
Giao diện đẹp, nhiều sự kiện, thông tin được thống kê, hỗ trợ phân tíchchuyên sâu Đặc biệt phân tích sâu về thông tin người dùng (visitor) như:
Ip, vị trí địa lý, trình duyệt
Nhược điểm
Không hỗ trợ thiết bị mobile và chỉ có một ngôn ngữ hiển thị
Không cho thiết lập goals (Tức thiết lập các điều kiện lọc dữ liệu cho mộtmục tiêu thống kê)
1.2.5 AWStats
Là một ứng dụng miễn phí giúp phân tích các thông tin và tình hình truy cậpwebsite của khách hàng như số lần truy cập, thời gian truy cập, các trang truy cậpnhiều nhất, các trang thoát nhiều nhất, thông tin về trình duyệt, hệ điều hành, độ phângiải màn hình của người sử dụng, vị trí địa lý, các bộ máy tìm kiếm và từ khóa thường
sử dụng… Trong ứng dụng dù chỉ hỗ trợ export ra file pdf nhưng khá tốt
Nó phân tích dữ liệu dựa trên log file của server Nó có thể phân tích web log, ftplog hoặc mail server log
Hình 1-5 AWStats
Ưu điểm
Trang 21 Giao diện rất dễ nhìn nhờ vào việc hiển thị dữ liệu đơn giản và theo kiểubiểu đồ và bảng song hành nên người dùng theo dõi sự thay đổi cũng nhưtổng thể dữ liệu dễ dàng hơn.
Phân tích được nhiều loại web log: apache, IIS, web, proxy, mail log…
Có thể mở rộng các module bằng plug-in
Cơ sở dữ liệu có thể được lưu dưới dạng XML do đó có khả năng sử dụnglàm input cho các ứng dụng phân tích khác
Chạy trên tất cả các platform hỗ trợ Perl
Tốn tài nguyên của server khi AWStats chạy liên tục Vì mỗi lần chạy,AWStats cần phải lấy dữ liệu từ webserver, trong trường hợp server chứanhiều website và dữ liệu nhiều quá trình này sẽ ngốn nhiều tài nguyên củamáy chủ và điều này không tốt với bất cứ người quản trị nào
Dữ liệu hiển thị là tĩnh, người dùng không thể thay đổi cách hiển thị hoặctùy chọn đối tượng so sánh
1.2.6 JAWStats
Đây là ứng dụng phát triển từ AWStats nhằm giảm thiểu các nhược điểm trongAWStats Việc ứng dụng AWStats ngốn tài nguyên của máy chủ là không tốt khi dữliệu cần phân tích là nhiều, trong JAWstats người ta tìm cách đưa tất cả các quá trình
xử lý “ra khỏi” máy chủ càng nhiều càng tốt và để dành quá trình đó cho trình duyệtmáy khách Một điểm nữa là thay đổi layout hiển thị thân thiện hơn
Trang 22 Việc cập nhật dữ liệu phân tích có thể thực hiện qua giao diện của ứngdụng.
Nhược điểm:
Vì việc hiển thị dữ liệu theo cả hai phần là biểu đồ và bảng chiếm nhiềukhông gian nên muốn đào sâu dữ liệu hoặc thực hiện tác vụ khác phải thựchiện khá nhiều hành động click
Việc so sánh cũng phải do người dùng tự rút ra dựa vào các dữ liệu đựơchiển thị hết trên màn hình nên không thực sự thuận lợi khi người ta chỉmuốn so sánh một hoặc vài dữ liệu có liên quan
Không hỗ trợ export dữ liệu nên khó khăn khi muốn đưa biểu đồ, dữ liệuvào một báo cáo
Phải cài đặt AWStats trước khi chạy JAWStats vì nó chạy dựa trên file logcủa AWstats
1.3 Cấu trúc của luận văn
Quá trình tiếp cận chính vấn đề cũng như phân tích và thiết kế được bố trí trongluận văn này theo trình tự sau :
Giới thiệu đề tài
Trang 23+ Mục đích đề tài và tầm quan trọng
+ Các công cụ có sẵn và ưu nhược điểm
+ Cấu trúc luận văn
Cơ sở lý thuyết của đề tài
+ Kinh doanh trực tuyến
+ Phân tích web
+ Khai phá sử dụng web
+ Kiến thức trực quan hóa
Hướng tiếp cận
+ Các mô hình trực quan hóa cho các yêu cầu chức năng
Hiện thực đề tài
+ Lược đồ usecase và prototype
+ Kiến trúc ứng dụng
+ Lược đồ tuần tự
+ Thiết kế cơ sở dữ liệu
+ Hiện thực các chức năng
Kết luận chung và mở rộng
Trang 242.1 Tổng quan về kinh doanh trực tuyến
2.1.1 Giới thiệu
2.1.1.1 Khái niệm
Marketing là một quá trình được thực hiện bởi các công ty, xí nghiệp nhằm xácđịnh sản phẩm hay dịch vụ nào thu hút người tiêu dùng, xác định chiến lược tiêu thụsản phẩm, quảng bá, phát triển sản phẩm Marketing dùng để tìm hiểu khách hàng, giữvà làm vừa lòng khách hàng
Kinh doanh trực tuyến (hay i-Marketing, web-marketing, online-marketing,
Search Engine Marketing(SEM) hay e-Marketing): là hoạt động Marketing sản phẩmvà dịch vụ thông qua Internet Ví dụ: quảng cáo sản phẩm trên trang web, gửi thông tinquảng cáo qua email, đấu giá sản phẩm qua mạng, mua bán qua mạng…
Kinh doanh trực tuyến xuất hiện ngày càng nhiều và thay đổi cách thức hoạt
động của nhiều ngành như: âm nhạc, ngân hàng, thương mại… Trong ngành âm nhạcthì việc mua bán nhạc (Tải nhạc có phí) ngày càng thịnh hành Với ngành ngân hàngthì các giao dịch trực tuyến được thực hiện hầu hết trong các giao dịch được thực hiệntrên các thiết bị kết nối Internet như: máy tính, điện thoại di động…
2.1.1.2 Các hình thức phát triển của kinh doanh trực tuyến:
Cần phân biệt kinh doanh trực tuyến với các hình thức e–Commerce, e–business:
Kinh doanh trực tuyến: là cách thức dùng các phương tiện điện tử để giớithiệu, mời chào, cung cấp thông tin về sản phẩm hàng hóa hoặc dịch vụ củanhà sản xuất đến người tiêu dùng và thuyết phục họ chọn nó
E–Commerce: chỉ các hoạt động mua bán thông qua các phương tiện điện tử
E–Business: chỉ tất cả những hoạt động kiếm tiền từ mạng, từ việc bán hànghoá, dịch vụ cho đến tư vấn, đầu tư
Các lĩnh vực này đều liên quan mật thiết với nhau, hỗ trợ nhau phát triển
Các hình thức của kinh doanh trực tuyến:
Trang 252.1.2 Ưu nhược điểm của kinh doanh trực tuyến
+ Thời gian đáp ứng dịch vụ nhanh chóng
và mang tính tương tác cao Đối tượng
nhận thông điệp có thể phản hồi hay
giao tiếp trực tiếp thông tin với người
gửi
+ Marketing kết hợp tính sáng tạo và kỹ
thuật của Internet, bao gồm thiết kế,
phát triển, quảng cáo và bán hàng
+ Một lợi thế lớn của kinh doanh trực
tuyến là tính sẵn sàng của một lượng
lớn thông tin Khách hàng có thể truy
cập thông tin và thực hiện giao dịch ở
bất cứ đâu, bất cứ lúc nào Các thông
tin cho một sản phẩm cũng cực kỳ đa
dạng: chữ, hình ảnh, âm thanh, video…
+ Doanh nghiệp sử dụng kinh doanh trực
tuyến có thể tiết kiệm được chi phí bán
hàng (thuê mặt bằng, nhân viên) Kinh
doanh trực tuyến còn giúp doanh
nghiệp tiếp cận với một thị trường rộng
lớn và phát triển ra toàn cầu Ngoài ra
so sánh với các lĩnh vực khác như báo
chí, truyền hình… thì kinh doanh trực
tuyến có chi phí đầu tư rất thấp
+ Các hoạt động của kinh doanh trực
tuyến có thể được kiểm tra đánh giá,
phân tích với chi phí thấp nhất Ví dụ
người ta có thể sử dụng công cụ “web
analytic” để theo dõi thông tin truy cập,
nội dung khách hàng quan tâm từ đó
đánh giá nội dung cung cấp có đáp ứng
tốt yêu cầu của khách hàng hay không
+ Về vấn đề kỹ thuật, kinh doanh trựctuyến yêu cầu khách hàng phải sử dụng và hiểu hơn về công nghệ mới(duyệt web, quản lý website, bảo mật…), mà điều này không phải đối tượng khách hàng nào cũng biết
+ Tốc độ đường truyền cũng có thểgây khó khăn, đặc biệt ở nhữngnước đang phát triển và với cácthiết bị di động
+ Tâm lý khách hàng e ngại do khôngthể chạm, nếm, thử sản phẩm trướckhi mua
+ Các vấn đề về bảo mật website, giữ
an toàn giao dịch là điều rất quantrọng đặc biệt trong các giao dịchmua bán
+ Ngoài ra vấn đề hệ thống luật phápcho lĩnh vực kinh doanh trực tuyếncủa quốc gia sở tại cũng rất quantrọng (Đặc biệt ở Việt Nam, luậtpháp về lĩnh vực này hiện nay vẫnchưa đầy đủ.)
Trang 262.2 Tổng quan về phân tích web
2.2.1 Khái niệm
Phân tích web (Web Analytics) là quá trình lưu vết (tracking), đo lường(measure), báo cáo (report) và phân tích (analytic) một lượng lớn dữ liệu liên quan đếnviệc truy cập website của người dùng để từ đó đưa ra kế hoạch tối ưu hóa website vàchiến lược marketing mang lại hiệu quả nhất
2.2.2 Các phương pháp thu thập dữ liệu
2.2.2.1 Web logs:
Đây là nguồn thu thập dữ liệu thông thường cho việc truy cập web Lúc đầu nóchỉ được dùng để thu thập lỗi nhưng sau này đã được phát triển để thu thập nhiềuthông tin hơn từ thông tin kỹ thuật đến thông tin nghiệp vụ
Hình 2-7 Thu thập dữ liệu bằng web log
Quá trình thu thập dữ liệu diễn ra như sau:
1 Khách hàng gõ URL vào trình duyệt
2 Một yêu cầu sẽ được gửi đến web server
3 Web server nhận yêu cầu vào tạo ra một dòng lưu trữ trong file log cho yêu cầu đó (Tên trang, địa chỉ IP, thông tin trình duyệt, ngày, giờ)
4 Web server gửi trang web yêu cầu về cho khách hàng
a Lợi ích khi dùng web log:
Web log là nguồn thu thập dữ liệu đơn giản nhất Mọi web server đều cókhả năng tạo ra các file log
Web log có khả năng lưu trữ các truy xuất và hành vi của các máy tìm kiếmtrên website của mình Các search engine robot không thực thi JavaScripttags, vì vậy nếu muốn phân tích truy cập từ Google, Microsoft Network,Yahoo Search ta phải dùng web log
b Những vấn đề liên quan:
Trang 27 Web log được tạo chủ yếu để thu thập những thông tin kỹ thuật (thông tinlỗi, truy cập, loại trình duyệt ) Chúng không có tùy chọn để thu thập thôngtin nghiệp vụ hay bán hàng.
Nếu thông tin nghiệp vụ và bán hàng cần được thu thập thì phải có sự cộngtác của lực lượng IT và sự phụ thuộc vào thời gian biểu của họ
Web log được tạo để lưu trữ những truy suất đến server Khi phân tích logfile, cần phải loại bỏ những thông tin không cần thiết như hình ảnh, lỗitrang, css…
không thể lưu trữ toàn bộ thông tin truy cập (tỉ lệ khoảng 10%) Với pagecaching thông thường, một số trang web như trang chủ, trang sản phẩmđược lưu trữ tại các ISP hoặc proxy server Vì thế khi người dùng gửi yêucầu đến trang chủ thì ISP sẽ trả lời yêu cầu chứ không phải webserver Vìthế chúng ta không lưu trữ được thông tin này trên server
2.2.2.2 Web Beacons
Được phát triển vào thời điểm khi các bảng hiệu trên web là cách thức chính đểthu hút khách hàng, kích thích sự tò mò của khách hàng Một công ty sẽ đặt quảng cáotrên nhiều trang web, thường những quảng cáo này là giống nhau ở các trang web Sựkhác nhau ở đây là đã có bao nhiêu người “click” vào và bao nhiêu quảng cáo do cùngmột người xem Web beacons thường là những bức ảnh trong suốt kích thước 1x1pixelđược đặt trong như một thành phần HTML
Hình 2-8 Thu thập dữ liệu bằng Web Beacons
Quá trình diễn ra như sau:
1 Khách hàng gõ URL vào trình duyệt
2 Một yêu cầu được gửi đến web server
3 Server trả trang web yêu cầu về cùng với một yêu cầu tấm ảnh 1x1 pixel từ một server khác (Data Collector)
4 Khi trang web load lên, yêu cầu kèm theo đó sẽ được thực thi và trả dữ liệu vềpage cho Data Collector
5 Data Collector gửi tấm ảnh về cho trình duyệt cùng với đoạn mã có thể đọc cookies và những thông tin khác như pageview, địa chỉ IP
Trang 28Web beacons cũng được dùng trong email (thư mời, thư quảng cáo…) với cơ chếtương tự như trên Với sự ra đời của JavaScript tag, web beacons ít được sử dụng hơn.Tuy nhiên nếu muốn tracking các quảng cáo qua email thì web beacons là một lợi thế.
a Lợi ích khi dùng Web Beacons:
Web beacons dễ dàng được thực hiện bằng cách chèn một đoạn code nhỏ vào trong
1 bức ảnh để thực hiện request khi trang đó được load lên
Có thể thu được đúng dữ liệu mình mong muốn, nó không thu thập dữ liệu được yêu cầu từ các robot tìm kiếm
b Những vấn đề liên quan:
Nếu image request bị tắt đi do một số trình duyệt hay trình đọc mail được cấu hìnhthì ta không thể thu thập được
Không thể mở rộng và cấu hình như các thẻ JavaSrcipt về dữ liệu có thể thu thậpđược
Third party server sẽ hầu hết được thiết lập cookies cho riêng nó Nên vì vấn đềriêng tư, một số trình duyệt như IE hay các chương trình chống spyware sẽ chặnhay xóa cookies này nên dữ liệu thu thập có thể không chính xác
2.2.2.3 JavaScript Tag:
Đây là giải pháp mà hầu hết các nhà cung cấp đều chọn lựa hiện nay JavaScripttag thu thập dữ liệu nhiều hơn và chính xác hơn so với web beacons Với giải phápnày, dữ liệu được trả về từ các yêu cầu (Data serving) được tách rời khỏi dữ liệu thuthập (data capture), vì thế sẽ giảm bớt sụ phụ thuộc vào bộ phận IT Data capturekhông được lưu trữ ở web server mà sẽ chuyển tới server của nhà cung cấp để phântích
Hình 2-9 Thu thập dữ liệu bằng JavaScript
Sau đây là cách JavaScript làm việc:
1 Khách hàng gõ URL vào trình duyệt
2 Yêu cầu được gửi tới web server
Trang 293 Web server trả kết quả về kèm theo đoạn mã JavaScript được nhúng vàotrong đó.
4 Khi trang web được load lên, đoạn mã đó được thực thi, nó thu thập thôngtin pageview, session, cookies và gửi kết quả về server trung gian của nhàcung cấp
5 Trong một số trường hợp, server sẽ gửi thêm những đoạn mã khác về trìnhduyệt để thiết lập thêm cookies hoặc thu thập thêm dữ liệu
a Lợi ích khi dùng JavaScript:
Dễ dàng thực hiện hơn web log, chỉ chèn thêm một đoạn mã vào trang chủ
Nếu ta không có quyền truy xuất đến web server dể lấy file log thìJavaScript là sự lựa chọn tối ưu lúc này
Vấn đề page caching được loại bỏ
Có thể thu thập được nhiều thông tin nghiệp vụ
b Những vấn đề liên quan:
JavaScript bị tắt đi hay một số trình duyệt không hỗ trợ JavaScript
Trang web có thể load lên chậm
Nếu thông tin về cookies, session được lưu trữ bên server thì không thể bắtđược các thông tin này vì JavaScript chỉ hoạt động ở client
Có thể đụng độ với JavaScript có sẵn trên trang web đó
2.2.2.4 Packet Sniffing :
Là một trong những kỹ thuật phức tạp nhất trong các phương pháp thu thập dữliệu
Hình 2-10 Thu thập dữ liệu bằng Packet Sniffing
Sau đây là cách thức làm việc của giải pháp này:
1 Khách hàng gõ URL vào trình duyệt
2 Yêu cầu được định tuyến tới server nhưng trước khi đến server nó phải thôngmột phần mềm hay phần cứng trung gian để từ đó thu thập thông tin về kháchhàng và gửi dữ liệu về cho Packet Sniffer
Trang 303 Packet Sniffer gửi yêu cầu cho server.
4 Kết quả được trả về cho khách hàng nhưng nó cũng phải đi qua PacketSniffer, tại đây thông tin trả về được lưu trữ lại Tại công đoạn này có thể mộtđoạn mã nhỏ được chèn thêm vào kết quả để thu thập thêm dữ liệu về ngườidùng
5 Packet Sniffer trả kết quả về cho khách hàng
a Lợi ích khi dùng Packet Sniffer:
Tất cả dữ liệu đều phải đi qua đối tượng trung gian là Packet Sniffer nên
toàn bộ dữ liệu sẽ được lưu trữ lại
b Những vấn đề liên quan:
Chi phí cao nếu công ty có nhiều web server
Phải cài đặt thêm phần cứng và phần mềm trung gian
Cần phải biết yêu cầu nào là của mình vì có nhiều yêu cầu khác nhau từ
Internet đến server nên cần phải cấu hình cho Packet Sniffer
Tính riêng tư có thể bị vi phạm
2.3 Tổng quan về khai phá sử dụng web
2.3.1 Giới thiệu chung
Với sự tăng trưởng và phát triển không ngừng của thương mại điện tử, dịch vụWeb và hệ thống thông tin dựa trên nền tảng web, khối lượng của các clickstream vàdữ liệu người dùng được các tổ chức Web thu thập bởi trong hoạt động hàng ngày đạttỷ lệ cao Việc phân tích dữ liệu đó có thể giúp các tổ chức Web xác định giá trị thờigian sống của khách hàng, qua đó thiết kế chiến lược tiếp thị trên các sản phẩm và dịch
vụ, đánh giá hiệu quả của chiến dịch khuyến mãi, tối ưu hóa chức năng của các ứngdụng trên nền Web, cung cấp nội dung tốt hơn cho khách hàng, và tìm thấy một bố cụchợp lý hơn cho trang web của mình Dạng phân tích này liên quan đến phát hiện các
mô hình có ý nghĩa và các mối quan hệ từ một lượng lớn dữ liệu thường được lưu trữtrên web và các file log của ứng dụng cũng như trong các nguồn dữ liệu liên quankhác
Khai phá cách dùng web (web usage mining) đề cập đến việc phát hiện và phântích tự động các mẫu clickstream, dữ liệu liên quan xuất ra kết quả về sự tương táccủa người dùng với nguồn tài nguyên Web trên một hoặc nhiều trang web Mục tiêu làđể thu thập, mô hình và phân tích các hành vi của người dùng tương tác với một trangweb Các mẫu thu thập được trong quá trình này thường là tập các trang web, thànhphần hoặc tài nguyên mà một nhóm người dùng hay truy cập với cùng một mục đíchchung
Khai phá sử dụng web là việc xử lý các để lấy ra các thông tin hữu ích trong hồ
sơ truy cập web Thông thường các web server thường ghi lại và tích lũy các dữ liệu
Trang 31về tương tác của ngưới dùng mỗi khi nó nhận được một yêu cầu truy cập Việc phântích các hồ sơ truy cập web của các website khác nhau sẽ dự đoán các tương tác củangười dùng khi họ tương tác với website cũng như tìm hiểu cấu trúc của website, từ đócải thiện các thiết kế của các hệ thống liên quan Có hai xu hướng chính trong lĩnh vựcnày:
Phân tích các mẫu truy cập: phân tích các hồ sơ web để biết được các mẫu vàcác xu hướng truy cập Cách phân tích này có thể giúp cấu trúc lại các sitetrong các phân nhóm hiệu quả hơn hay xác định các vị trí quảng cáo hiệu quảnhất, cũng như gắn các quảng cáo sản phẩm nhất định cho những người dùngnhất định để đạt hiệu quả cao nhất
Phân tích các xu hướng cá nhân: mục đích là để chuyên biệt hóa các websitecho các lớp đối tượng người dùng Các thông tin được hiển thị, độ sâu củacấu trúc trang và định dạng của các tài nguyên, tất cả đều có thể chuyên biệthóa một cách tự động cho mỗi người dùng theo thời gian dựa trên các mẫutruy cập của họ
Tổng thể quá trình khai thác sử dụng web có thể được chia thành ba giai đoạnliên thuộc nhau: thu thập dữ liệu và tiền xử lý, phát hiện mẫu và phân tích mẫu Tronggiai đoạn tiền xử lý, dữ liệu clickstream được làm sạch và phân hoạch thành một tậphợp các giao dịch của người dùng Tập hợp này đại diện cho các hoạt động của mỗingười dùng trong những lần truy cập trang web Ngoài nguồn dữ liệu chính là các filelog, các nguồn khác như nội dung trang web hay cấu trúc, cũng có thể được sử dụngtrong quá trình tiền xử lý hoặc để bổ sung thêm dữ liệu về người dùng Trong giaiđoạn phát hiện mẫu, thống kê, cơ sở dữ liệu và các tác vụ tính toán được thực hiện đểtìm ra những mô hình trong đó, từ đó phản ánh những hành vi điển hình của người sửdụng cũng như các thống kê tóm lược về việc truy cập của họ Trong giai đoạn cuốicủa quá trình, các mẫu phát hiện và thống kê được tiếp tục xử lý, lọc và có thể được sửdụng làm đầu vào cho các ứng dụng như công cụ trực quan, phân tích web và các công
cụ tạo báo cáo Quá trình tổng thể được mô tả như sau:
Trang 32Hình 2-11 Tổng quan về khai phá sử dụng web 2.3.2 Các công đoạn của khai phá sử dụng web
2.3.2.1 Thu thập và tiền xử lý dữ liệu:
Một công việc quan trọng trong bất kỳ ứng dụng khai thác dữ liệu là việc tạo radữ liệu phù hợp để các giải thuật khai phá dữ liệu và thống kê có thể được áp dụng.Điều này đặc biệt quan trọng trong việc khai phá sử dụng web do các đặc điểm dữ liệuclickstream và mối quan hệ của nó với các dữ liệu khác có liên quan thu thập từ nhiềunguồn và qua nhiều kênh khác nhau Quá trình chuẩn bị dữ liệu thường là bước tốnnhiều thời gian, công sức tính toán nhất và thường đòi hỏi việc sử dụng các thuật toánđặc biệt và công nghệ thường ít được sử dụng trong các lĩnh vực khác Quá trình cóthể bao gồm tiền xử lý các dữ liệu ban đầu, tích hợp dữ liệu từ nhiều nguồn và chuyểnđổi dữ liệu thành dạng phù hợp Dữ liệu này sẽ là đầu vào cho các giải thuật khai phá.Tất cả các công việc trên được gọi chung là chuẩn bị dữ liệu
Phần lớn các nghiên cứu và thực tiễn trong chuẩn bị dữ liệu thường tập trung vàotiền xử lý và tích hợp các nguồn dữ liệu để phân tích khác nhau Việc chuẩn bị dữ liệutrình bày một số cách thức duy nhất đã dẫn đến một loạt các thuật toán và heuristic chocông việc tiền xử lý như tổng hợp và làm sạch dữ liệu, xác định người dùng và cácgiao dịch, xác định các trang (pageview identification) Việc áp dụng các kỹ thuật khaiphá dữ liệu có thành công hay không lại phụ thuộc phụ vào tính chính xác của dữ liệutrong quá trình tiền xử lý
Trang 33Hình 2-12 Quy trình khai phá sử dụng web Những nguồn và các loại dữ liệu:
Các nguồn dữ liệu chính được sử dụng trong khai thác sử dụng Web là tập tin logtrên máy chủ: log về truy xuất web server (webserver access log) và log củaapplication server (application server log) Các nguồn dữ liệu khác cũng rất cần thiếtcho cả chuẩn bị dữ liệu và phát hiện mẫu bao gồm các tập tin trang web và siêu dữliệu, cơ sở dữ liệu hoạt động, ứng dụng mẫu và kiến thức miền Trong một số trườnghợp, dữ liệu bổ sung có thể có từ việc thu thập dữ liệu bên phía khách hàng hoặc ISP(Internet Service Provider) Dữ liệu thu được qua các nguồn khác nhau có thể đượcphân loại thành bốn nhóm chính:
Dữ liệu về việc sử dụng web (Usage Data): Các dữ liệu thu thập tự động bởi cácmáy chủ web và các ứng dụng được dùng làm cơ sở để định ra hành vi củakhách hàng Nó là nguồn dữ liệu chính trong khai phá sử dụng Web Mỗi “hit”với máy chủ, tương ứng với một yêu cầu HTTP, tạo ra một dòng lưu trữ tronglog file của máy chủ Mỗi dòng (tùy thuộc vào định dạng) có thể chứa các thôngtin xác định thời gian, ngày, các địa chỉ IP của khách hàng, các tài nguyên yêucầu, các thông số có thể được sử dụng trong cách gọi một ứng dụng web, trạngthái của yêu cầu, giao thức HTTP được sử dụng, thông tin hệ thống người dùng(trình duyệt, hệ điều hành, phiên bản) Một ví dụ điển hình của một log fileđược mô tả trong hình dưới:
Trang 34Hình 2-13 Minh họa về log file
Tùy thuộc vào các mục tiêu của phân tích, dữ liệu này cần phải được chuyển hóavà tổng hợp ở các cấp độ trừu tượng khác nhau Trong khai phá sử dụng Web, mức cơbản nhất của dữ liệu trừu tượng là pagewiew Một pageview là một tập của các đốitượng Web hiển thị trên trình duyệt của người sử dụng do kết quả của một “click”chuột Về mặt ý niệm, pageview có thể được xem như là một tập của các đối tượngweb hoặc tài nguyên tương ứng cho một "sự kiện người dùng", ví dụ: đọc một bài báo,xem một trang sản phẩm hoặc thêm sản phẩm vào giỏ mua hàng
D ữ liệu nội dung (content data) : Các dữ liệu nội dung trong một trang web làtập các đối tượng và mối quan hệ được truyền đạt đến người dùng Phần lớn cácdữ liệu này bao gồm sự kết hợp của dữ liệu dạng văn bản và hình ảnh Dữ liệunội dung của một trang web cũng bao gồm ngữ nghĩa hoặc cấu trúc siêu dữ liệunhúng vào trong các trang web hoặc các trang cá nhân chẳng hạn như các từkhoá mô tả, thuộc tính tài liệu, thẻ ngữ nghĩa hoặc biến HTTP
Dữ liệu cấu trúc: dữ liệu cấu trúc đại diện cho quan điểm của nhà thiết kế trongviệc tổ chức nội dung của một website Việc tổ chức này được thể hiện thôngqua một cấu trúc liên kết giữa các trang, như được phản ánh qua các siêu liênkết Dữ liệu cấu trúc cũng bao gồm các cấu trúc của nội dung bên trong mộttrang
D ữ liệu người dùng (user data) : Các cơ sở dữ liệu hoạt động cho các trang webcó thể bao gồm thông tin người dùng Dữ liệu này có thể bao gồm thông tin cánhân về người dùng đăng ký, xếp hạng người sử dụng trên các tiêu chí khácnhau như sản phẩm, phim ảnh… mà họ đã mua hoặc lịch sử truy cập của họ.Một số dữ liệu này có thể không chính xác nhưng nó có thể phân biệt giữanhững người dùng khác nhau Ví dụ: thu thập những thông tin chứa trong các
Trang 35cookie phía máy khách, qua đó xác định những khách hàng nào đã quay trở lạitrang web sau lần đầu truy cập.
2.3.2.2 Các công đoạn chính của quá trình tiền xử lý dữ liệu
a Tổng hợp và làm sạch dữ liệu (Data fusion and cleaning):
Trong các trang Web quy mô lớn, rất bình thường khi các nội dung phục vụ chongười sử dụng đến từ nhiều máy chủ Web hoặc ứng dụng Trong một số trường hợp,nhiều máy chủ với nội dung dự phòng được sử dụng để giảm tải trên bất kỳ máy chủnào đó Hợp nhất dữ liệu đề cập đến việc sáp nhập các file log từ các máy chủ Webhoặc ứng dụng Điều này có thể yêu cầu sự đồng bộ hóa toàn cục trên các máy chủ.Khai phá sử dụng Web phân tích hành vi người dùng thông qua các tập tin log từnhiều trang web
Làm sạch dữ liệu bao gồm các công việc như loại bỏ các thành phần không cầnthiết với mục đích phân tích như tập tin style, đồ họa hoặc âm thanh Quá trình làmsạch cũng có thể bao gồm việc loại bỏ ít nhất là một số các trường dữ liệu (ví dụ: sốbyte được chuyển giao hoặc phiên bản của giao thức HTTP được sử dụng) mà có thểkhông cung cấp thông tin hữu ích trong việc khai thác phân tích hoặc dữ liệu Làmsạch dữ liệu cũng đòi hỏi việc loại bỏ thông tin thu thập không cần thiết Điều nàykhông phải là không phổ biến cho một tập tin log có chứa một tỷ lệ phần trăm (đôi khicao đến 50%) kết quả từ các công cụ tìm kiếm hoặc thu thập thông tin khác Ta có thểxác định và loại bỏ nó bằng cách duy trì một danh sách các trình thu thập được biếtđến
b Xác định các lượt xem (Pageview Identification)
Việc xác định các trang được xem phụ thuộc nhiều vào cấu trúc bên của trangweb cũng như về nội dung trang Về mặt ý niệm mỗi lần xem trang có thể được xemnhư là tập của các đối tượng web hoặc tài nguyên tương ứng cho một "sự kiện ngườidùng" cụ thể, ví dụ: nhấp chuột vào một liên kết, xem một trang sản phẩm, thêm sảnphẩm vào giỏ hàng Đối với web tĩnh, mỗi tập tin HTML là ánh xạ một-một với mộtlần xem trang Đối với các trang web động, một lần xem có thể đại diện cho một sự kếthợp của các thành phần tĩnh và nội dung được tạo ra bởi máy chủ ứng dụng dựa trênmột tập hợp các thông số
Ngoài ra ta có thể xem xét lần truy cập ở mức độ kết hợp cao hơn, nơi mà mỗilần xem trang đại diện cho một tập hợp các trang liên quan đến một chủ đề nào đó Trong trang web thương mại điện tử, xem trang có thể tương ứng với các tiêu chí khácnhau dựa trên sản phẩm, chẳng hạn như quan điểm về sản phẩm, đăng ký, thay đổi giỏmua hàng, mua hàng… Trong trường hợp này, xác định các lần xem trang có thể yêucầu thêm môt tiêu chí nào đó mà từ đó những người sử dụng khác nhau có thể đượcphân loại
c Sessionization:
Trang 36Sessionization là quá trình phân mảnh các hoạt động của từng người sử dụngthành các session, mỗi session đại diện cho một lần đến trang web Website mà khôngcó cơ chế xác thực bổ sung từ người sử dụng thì phải dựa vào kinh nghiệm để định rasession Mục tiêu của một heuristic sessionization là tái xây dựng từ các dữ liệuclickstream thành chuỗi các hành động bởi một người dùng trong một lần truy cập chotrang web.
Ký hiệu tập các session bằng R, đại diện cho các hoạt động thực sự của ngườidùng trên trang Web Một hàm heuristic sessionization h để ánh xạ R thành một tậphợp các session, ký hiệu là Ch Dựa trên ý tưởng về heuristic, h*, ta có Ch* = R Nóicách khác, dùng heuristic có thể xác định gần chính xác hành động của người dùngtrong một session Sessionization heuristic chia thành hai loại cơ bản: hướng thời gianhoặc hướng cấu trúc Giải pháp hướng thời gian dùng thời gian để xác định các sessionliên tiếp nhau, trong khi giải pháp cấu trúc theo định hướng sử dụng hoặc cấu trúctrang web tĩnh hoặc liên kết cơ cấu ngầm được lưu trữ trong trường “referer” của filelog
Sau đây là một ví dụ, xét:
h1: Tổng thời gian cho một session không được vượt quá một ngưỡng θ Vớit0 là thời điểm mà yêu cầu đầu tiên của người dùng được gửi đến server thuộcsession S, một yêu cầu tại thời điểm t của người đó đến server là thuộc về Skhi và chỉ khi t - t0 ≤ θ
h2: Tổng số thời gian trên một trang không được vượt quá một ngưỡng δ Vớit1 là thời điểm mà yêu cầu của người dùng được gửi đến server thuộc session
S một yêu cầu tại thời điểm t của người đó đến server là thuộc về S khi và chỉkhi t2 - t1 ≤ δ
h-ref: Một yêu cầu q được thêm vào session S nếu referrer cho q trước đó đãthuộc S Nếu không, q được xem là khởi đầu của một session mới Lưu ý rằngvới heuristic này, một yêu cầu q có khả năng có thể thuộc nhiều hơn mộtsession đang mở, bởi q có thể được truy cập trước đó trong nhiều session.Trong trường hợp này, thông tin bổ sung có thể được sử dụng để lựa chọn Ví
dụ, q có thể được thêm vào session gần đây nhất thỏa các điều kiện nêu trên
Trang 37Hình 2-14 Định ra các session từ log file
Một ví dụ về việc áp dụng sessionization heuristic được đưa ra trong Hình 2 -14.Trong hình trên, hàm heuristic h1, với θ = 30 phút đã được sử dụng để phân chia loghoạt động người dùng (từ ví dụ của hình trên) thành hai session riêng biệt.Nếu áp dụngh2 với một ngưỡng 10 phút, hồ sơ người dùng sẽ được xem như là ba session, cụ thể là
A B C E, A và F B D Trong khi đó, hình dưới mô tả một ví dụ củaviệc sử dụng h-ref heuristic Trong trường hợp này, một khi các yêu cầu cho F (vớit=1:26 ) tới, có hai session mở, cụ thể là A B C E và A Tuy nhiên, F đượcthêm vào đầu tiên bởi vì C là referrer của nó thuộc session 1 Yêu cầu cho B (t=1:30)có khả năng có thể thuộc về cả hai session mở vì referrer của nó là A đều thuộcsession 1 và 2 Trong trường hợp này, nó được thêm vào session 2, vì nó là session gầnđây nhất là mở ra
2.4 Tổng quan về trực quan hóa
2.4.1 Giới thiệu chung
Trong cuộc sống hàng ngày, khi muốn truyền đạt thông tin, đôi lúc thay vì sửdụng chữ viết, giọng nói, chúng ta sẽ sử dụng hình ảnh Hình ảnh đó có thể chỉ là mộtbản vẽ phác thảo trên giấy, một hình được vẽ trên bảng hay các hình ảnh sinh độnghơn được trình diễn bằng các công cụ máy tính…
Mục đích của quá trình truyền đạt thông tin chính là nhằm về phía người đọc,người nghe, người nhìn hiểu được vấn đề được nêu Một quá trình để một người hiểuđược dữ liệu đang được truyền đi đã được Nathan Shedrof trong cuốn InformationDesign đưa ra như sau:
Trang 38Hình 2-15 Quá trình biến đổi dữ liệu thành sự hiểu biết (Wisdom)
Để có thể giúp con người hiểu biết dữ liệu đó (Wisdom) cần phải trải qua các quátrình biến đổi dữ liệu thành thông tin, sau đó truyền tải nó đi rồi cuối cùng mới trởthành kiến thức cho người tiếp nhận
Trong quá trình trên, data là dữ liệu đầu vào Một mình dữ liệu không thể giúptruyền tải được thông tin, để làm được điều đó, dữ liệu cần được chuyển đổi, xử lý,cấu trúc lại thành một định dạng phù hợp hơn Kết quả của quá trình xử lý dữ liệu sẽthành thông tin (Information).Đây là thứ sẽ được truyền đạt tới người nghe Quá trìnhtrực quan hóa nằm giữa Data và Information Nó cung cấp các phương thức và công cụđể tổ chức, trình diễn dữ liệu thành thông tin cuối cùng (thông tin này sẽ được truyềntải tới người tiếp nhận)
2.4.2 Quá trình trực quan hóa thông tin
Cùng với sự phát triển của máy tính, hiển thị hình ảnh bằng các công cụ đồ họacũng ngày càng phù hợp cho việc biểu diễn thông tin cho con người Để biểu diễnđược một dữ liệu trên máy tính bằng các hình ảnh thì dữ liệu đó cần được phải xử lýqua nhiều bước để đi tới kết quả cuối cùng là các hình ảnh đại diện:
Hình 2-16 Quá trình trực quan hóa thông tin
Trong phần này, chúng ta chỉ tìm hiểu về quá trình trực quan hóa thông tin truyxuất của khách hàng và website
2.4.2.1 Thu thập dữ liệu
Có nhiều cách để thu thập thông tin về sự tương tác giữa khách hàng và trangweb của chúng ta, như sử dụng web log files, Web Beacons, JavaScript tags, vàPackage Sniffers Mỗi phương pháp có ưu nhược điểm khác nhau, hiện tại với sự pháttriển của công nghệ thì chỉ còn lại chủ yếu 2 phương pháp thu thập thông tin là weblog files và JavaScript tags Trong một vài trường hợp chúng ta có thể sử dụng kết hợpcả hai phương pháp cùng lúc để đảm bảo đủ thông tin cần thiết
Trang 392.4.2.2 Tiền xử lý
Trước khi thực hiện việc hiển thị thông tin bằng hình ảnh (visual presentation)chúng ta cần phải xử lý dữ liệu phức tạp thành cấu trúc đơn giản và có quy tắc (datatransformations)
Để bắt đầu quá trình này, chúng ta cần phải thu thập các dữ liệu thô (raw data).Những dữ liệu thô này mô tả thế giới quanh ta, chúng ta có thể thu được từ nhữngcông cụ như máy đo, phần mềm Đối với dữ liệu của một trang web, mục đích của ta làphân tích những hành động của người dùng trên trang web, như vậy dữ liệu thô của ta
sẽ là những thông tin lưu trong file log của webserver hoặc những thông tin thu được
từ JavaScript tags
Các dữ liệu thô này phần lớn không có cấu trúc rõ ràng Muốn xử lý những dữliệu này bằng phần mềm chúng ta phải chuyển những dữ liệu này thành dạng có cấutrúc xác định Sau đó những dữ liệu có cấu trúc này mới được sử dụng làm dữ liệu đầuvào cho các ứng dụng hiển thị
Ví dụ: dữ liệu thô về mức thủy triều trong thời gian hai tuần: (H: Highest, L:Lowest)
: 0 9
a m
1 : 2 4
a m
: 4 6
a m
L -1.2
2 : 0 0
a m
: 5 7
a m
2 : 1 0
p m
: 3 0
p m
L -1.0
2 : 4 4
a m
: 4 2
a m
2 : 5 5
p m
: 1 2
p m
L -0.6
: 2 7
a m
: 2 7
a m
: 3 9
p m
: 5 5
p m
L -0.2
Trang 405 F 2
: 0 9
a m
: 1 3
a m
: 2 4
p m
: 3 7
p m
L 0.3
: 5 2
a m
: 0 1
a m
: 1 1
p m
: 2 1
p m
L 0.8
: 3 8
a m
: 5 1
a m
: 0 2
p m
0 : 0 8
p m
L 1.2
: 2 6
a m
0 : 4 6
a m
: 5 6
p m
0 : 5 9
p m
L 1.5
: 1 9
a m
1 : 4 4
a m
: 5 5
p m
1 : 5 4
p m
L 1.7
: 1 4
a m
2 : 4 3
p m
: 5 5
p m
H 7.6
2 : 5 0
a m
: 0 9
a m
: 3 9
p m
: 5 1
H 7.7