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

Nâng cao hiệu quả tìm kiếm trên các hệ thống bán xe hơi bằng kỹ thuật faceted search

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.7 MB, 56 trang )

..

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-----------------------------------------PHẠM LÊ VŨ

NÂNG CAO HIỆU QUẢ TÌM KIẾM TRÊN CÁC HỆ THỐNG BÁN XE
HƠI BẰNG KỸ THUẬT FACETED SEARCH

Chuyên ngành : Kỹ thuật phần mềm

LUẬN VĂN THẠC SĨ KHOA HỌC
CHUYÊN NGÀNH KỸ THUẬT PHẦN MỀM

NGƢỜI HƢỚNG DẪN KHOA HỌC
PGS.TS. Cao Tuấn Dũng

Hà Nội – Năm 2018


LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi. Các nội dung và kết
quả trình bày trong luận văn là hồn tồn trung thực và chƣa có tác giả nào cơng bố
trong bất kỳ một cơng trình nào khác.
Tác giả luận văn

Phạm Lê Vũ

1



CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ
Họ và tên tác giả luận văn : PHẠM LÊ VŨ
Đề tài luận văn: Nâng cao hiệu quả tìm kiếm thơng tin trên các hệ thống
bán xe hơi bằng kỹ thuật Faceted Search
Chuyên ngành: Kỹ thuật phần mềm
Mã số SV: CA160473
Tác giả, Ngƣời hƣớng dẫn khoa học và Hội đồng chấm luận văn xác nhận
tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày 28/4/2018
với các nội dung sau:
-

Bỏ các nội dung bị trùng

-

Thêm phần kết luận

-

Chỉnh lại bố cục luận văn

-

Thêm phần nối giữa các chƣơng để tăng tính liền mạch

-

Nêu rõ thêm về đóng góp của bản thân


-

Giải thích rõ hơn về khái niệm Faceted Search
Ngày 24 tháng 5 năm 2018

Giáo viên hƣớng dẫn

Tác giả luận văn

CHỦ TỊCH HỘI ĐỒNG

2


MỤC LỤC
DANH MỤC CÁC HÌNH VẼ ...................................................................................................................... 5
DANH MỤC CÁC BẢNG ........................................................................................................................... 6
MỞ ĐẦU ...................................................................................................................................................... 3
Chƣơng 1: GIỚI THIỆU ĐỀ TÀI ................................................................................................................. 5
1.1. Tổng quan về hệ thống bán xe hơi ..................................................................................................... 5
1.1.1. Mơ hình và chức năng của hệ thống bán xe hơi.......................................................................... 5
1.1.2. Hoạt động của hệ thống bán xe hơi ............................................................................................. 6
1.1.3. Dữ liệu sản phẩm của hệ thống bán xe hơi ................................................................................. 8
1.2. Hiện trạng của chức năng tìm kiếm trên hệ thống bán xe hơi............................................................ 9
1.2.1. Mơ hình tổng quan của chức năng tìm kiếm ............................................................................... 9
1.2.2. Nguyên tắc hoạt động của chức năng tìm kiếm ........................................................................ 10
1.2.3. Hạn chế của chức năng tìm kiếm hiện tại ................................................................................. 11
1.3. Mục tiêu và định hƣớng giải pháp ................................................................................................... 12
Chƣơng 2: TỔNG QUAN VỀ CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ .................................................. 14

2.1. Một số giải pháp nổi bật để giải quyết vấn đề của các hệ thống bán xe hơi trong và ngoài nƣớc ... 14
2.1.1. Phƣơng pháp tự động gợi ý đƣợc hỗ trợ sẵn ............................................................................. 14
2.1.2. Phƣơng pháp thu gọn chức năng tìm kiếm................................................................................ 15
2.1.3. Phƣơng pháp gợi ý cho các tìm kiếm theo lựa chọn ................................................................. 16
2.2. Tổng quan về kỹ thuật Faceted Search ............................................................................................ 17
2.2.1. Các hành vi tìm kiếm ................................................................................................................ 17
2.2.2. Các mơ hình truy vấn thơng tin ................................................................................................. 20
2.2.3. Khái niệm về Faceted Search .................................................................................................... 22
2.2.4. Tiềm năng phát triển trong tƣơng lai của Faceted Search ......................................................... 24
2.3. Tổng quan về cơng cụ tìm kiếm Elastic Search ............................................................................... 26
2.3.1 Giới thiệu về Elastic Search ....................................................................................................... 26
2.3.2 Kiến trúc cơ bản của hệ thống ES .............................................................................................. 27
2.3.2.2 Index (Indices) ........................................................................................................................ 29
2.3.2.3 Shard ....................................................................................................................................... 29
2.3.2.3 Health ...................................................................................................................................... 30
2.3.2.4 Type ........................................................................................................................................ 30

3


2.3.2.5 Document ................................................................................................................................ 30
2.3.3 Nguyên lý hoạt động của hệ thống ES ....................................................................................... 31
2.3.4 So sánh ES với các công cụ tìm kiếm khác............................................................................... 34
Chƣơng 3: NÂNG CAO HIỆU QUẢ CHỨC NĂNG TÌM KIẾM TRÊN HỆ THỐNG BÁN XE HƠI ..... 36
3.1 Mơ hình chức năng tìm kiếm trên hệ thống bán xe hơi .................................................................... 36
3.2 Nguyên lý hoạt động của chức năng tìm kiếm trên hệ thống bán xe hơi .......................................... 37
Chƣơng 4: PHÂN TÍCH KẾT QUẢ ĐẠT ĐƢỢC ..................................................................................... 44
4.1. Kết quả triển khai kỹ thuật Faceted Search vào chức năng tìm kiếm của hệ thống bán xe hơi ....... 44
4.1.1. So sánh giao diện và kết quả sau khi triển khai kỹ thuật mới với hệ thống cũ ......................... 44
4.1.2. So sánh các câu truy vấn mới của chức năng tìm kiếm trên hệ thống bán xe hơi ..................... 47

KẾT LUẬN................................................................................................................................................. 50
TÀI LIỆU THAM KHẢO .......................................................................................................................... 51

4


DANH MỤC CÁC HÌNH VẼ
Hình 1: Trang chủ Website banxehoi.com .......................................................................... 6
Hình 2 : Trang chi tiết tin Website banxehoi.com ............................................................... 7
Hình 3 : Trang danh sách tin Website banxehoi.com ......................................................... 8
Hình 4 : Bài viết đánh giá và so sánh xe Website banxehoi.com ........................................ 9
Hình 5 : Mơ hình tổng quan .............................................................................................. 10
Hình 6 : Chức năng tìm kiếm trên trang chủ Website chobrod.com ................................. 11
Hình 7 : Phương pháp tự động gợi ý trên Website banxehoi.com .................................... 15
Hình 8 : Chức năng tìm kiếm khi được mở rộng của Website banxehoi.com ................... 16
Hình 9 : Chức năng tìm kiếm của Website automexico.com ............................................. 17
Hình 10 : Các hành vi tìm kiếm cơ bản ............................................................................. 18
Hình 11 : Tìm kiếm khám phá ........................................................................................... 20
Hình 12 : Faceted Search trên amazon ............................................................................. 22
Hình 13 : Faceted Search trên lazada ............................................................................... 23
Hình 14 : Danh sách tìm kiếm Website chobrod.com ....................................................... 24
Hình 15 : Ví dụ về Semantic Web ...................................................................................... 25
Hình 16: Cấu hình primary shard .................................................................................... 29
Hình 17: Inverted Index .................................................................................................... 33
Hình 18: Inverted Index sau khi truy vấn ......................................................................... 33
Hình 19: Mơ hình áp dụng kỹ thuật Faceted Search ........................................................ 36
Hình 20 : Kết quả trả về trên ES ....................................................................................... 38
Hình 21 : Danh sách kết quả gợi ý tìm kiếm ..................................................................... 38
Hình 22: Người dùng bấm nút tìm kiếm ............................................................................ 39
Hình 23 : Câu truy vấn dữ liệu trên ES ............................................................................. 40

Hình 24 : Bộ chuyển đổi dữ liệu ........................................................................................ 41
Hình 25 : Bộ tinh chỉnh kết quả......................................................................................... 42
Hình 26 : Danh sách kết quả sau khi tìm kiếm .................................................................. 43
Hình 27 : Kết quả tìm kiếm thơng thường ......................................................................... 44
Hình 28 : Kết quả tìm kiếm theo từ khóa gợi ý.................................................................. 45
5


Hình 29 : Kết quả tìm kiếm theo một phần của gợi ý ........................................................ 45
Hình 30 : Kết quả tìm kiếm khơng theo gợi ý .................................................................... 46
Hình 31 : Kết quả tìm kiếm khơng theo gợi ý và đổi vị trí từ khóa ................................... 46
Hình 32 : Kết quả sau khi tinh chỉnh ................................................................................. 47
Hình 33 : Câu truy vấn cơ sở dữ liệu hệ thống hiện tại .................................................... 47
Hình 34 : Câu truy vấn ES................................................................................................. 48
Hình 35 : Cấu trúc cơ sở dữ liệu ....................................................................................... 49
DANH MỤC CÁC BẢNG
Bảng 1: Danh sách các Website hệ thống bán xe hơi đang sở hữu .................................... 5

6


MỞ ĐẦU
Trong mọi thời đại, thông tin luôn là thứ tài nguyên quý giá và khó kiếm nhất. Từ
thời xa xƣa, các cách thức để truyền thông tin cũng nhƣ tìm kiếm thơng tin ln là những
ƣu tiên hàng đầu. Xã hội càng phát triển thì thơng tin càng q giá và dần dần việc tìm
kiếm thơng tin một cách nhanh chóng và chính xác trở thành một trong các nhu cầu thiết
yếu của cuộc sống. Ngày nay, trong thời đại công nghệ thông tin phát triển mạnh mẽ, các
nhà khoa học đã thảo luận và nhất trí đƣa ra một tên gọi cho thời đại này là Kỷ nguyên
thông tin để nêu lên tầm quan trọng của thông tin cũng nhƣ việc tìm kiếm thơng tin. Để
phục vụ nhu cầu vô cùng thiết yếu trên, các nhà khoa học đã nghiên cứu để đƣa ra các

thuật toán, phƣơng pháp, kỹ thuật để tìm kiếm thơng tin một cách hiệu quả và có độ
chính xác cao nhất có thể. Tuy nhiên, áp dụng các thuật toán, phƣơng pháp, kỹ thuật đó
vào hệ thống của từng doanh nghiệp sao cho tối ƣu hiệu năng ln là bài tốn khó với các
kỹ sƣ cùng các chuyên gia. Vấn đề bất cập này xảy ra trên tính năng tìm kiếm của nhiều
hệ thống và hệ thống bán xe hơi cũng không phải ngoại lệ. Để giải quyết bài tốn khó
đƣợc đề ra, trên hệ thống bán xe hơi đã có nhiều biện pháp đƣợc đề xuất. Tiêu biểu trong
các giải pháp đƣợc nhiều tổ chức áp dụng là sử dụng kỹ thuật Faceted Search, thay đổi
cách thức truy vấn cơ sở dữ liệu và sử dụng các tính năng gợi ý cho việc tìm kiếm theo từ
khóa để nâng cao hiệu quả tìm kiếm cho hệ thống bán xe hơi. Đối với việc thay đổi cách
thức truy vấn cơ sở dữ liệu, tốc độ tìm kiếm sẽ đƣợc nâng cao rõ rệt nhƣng phƣơng pháp
này không giải quyết đƣợc triệt để các vấn đề mà tính năng tìm kiếm hiện tại đang gặp
phải. Phƣơng pháp gợi ý tìm kiếm thực chất là một hình thức áp dụng kỹ thuật Faceted
Search với một vài khía cạnh chính. Với hiện trạng và nhu cầu thiết yếu nhƣ trên, đề tài
đƣợc chọn để giải quyết hai vấn đề: 1/ Nghiên cứu kỹ thuật Faceted Search để tìm kiếm
thơng tin một cách hiệu quả và có độ chính xác cao nhất có thể; 2/ Thiết kế mơ hình và
triển khai kỹ thuật Faceted Search nhằm nâng cao hiệu quả tìm kiếm trên hệ thống bán xe
hơi.
Đối tượng, phạm vị nghiên cứu của đề tài:
Trong phạm vi của đề tài, tác giả khơng tham vọng có thể áp dụng kỹ thuật
Faceted Search vào mọi tiêu chí của một chiếc ô tô mà chỉ tập trung vào các tiêu chí
3


chính và thơng qua các tiêu chí chính thì ngƣời dùng có thể định hình đƣợc một hoặc một
nhóm xe hơi hồn chỉnh. Do đó mục tiêu và đóng góp chính của đề tài sẽ tập trung vào
hai nội dung chính sau:
-

Nghiên cứu kỹ thuật Faceted Search để áp dụng vào tính năng tìm kiếm trên hệ
thống bán xe hơi


-

Thiết kế mơ hình và triển khai kỹ thuật Faceted Search vào hệ thống bán xe hơi
Kết quả khoa học và tính thực tiễn của đề tài:
Đề tài có tính khả thi cao, có thể áp dụng trong thực tiễn ở bất cứ doanh nghiệp

nào. Với việc áp dụng kỹ thuật Faceted Search vào tính năng tìm kiếm thì hiệu quả tìm
kiếm sẽ đƣợc nâng cao, điều này khiến ngƣời dùng tiếp cận đƣợc đúng nguồn thông tin,
mang lại hiệu quả cho việc kinh doanh, nâng cao chất lƣợng dịch vụ cho ngƣời dùng và
gia tăng đƣợc lƣợng ngƣời dùng – một tiêu chí rất quan trọng ảnh hƣởng trực tiếp điến lợi
nhuận cũng nhƣ thƣơng hiệu của doanh nghiệp.
Bố cục của luận văn:
Luận văn đƣợc chia thành 4 chƣơng chính nhƣ sau:
-

Chƣơng 1 trình bày tổng quan về hệ thống bán xe hơi và hiện trạng tính năng tìm
kiếm trên hệ thống bán xe hơi. Từ đó đề ra mục tiêu và định hƣớng giải pháp để
nâng cao hiệu quả tìm kiếm trên hệ thống.

-

Chƣơng 2 trình bày tổng quan về tình hình chức năng tìm kiếm trên các hệ thống
bán xe hơi cũng nhƣ một số giải pháp nổi bật đã đƣợc đƣa ra để giải quyết các
hiện trạng của tính năng tìm kiếm hiện tại, từ đó chỉ ra sự phù hợp của việc áp
dụng kỹ thuật Faceted Search vào tính năng tìm kiếm trên hệ thống bán xe hơi.

-

Chƣơng 3 trình bày về thiết kế mơ hình áp dụng và triển khai kỹ thuật Faceted

Search vào tính năng tìm kiếm trên hệ thống bán xe hơi

-

Chƣơng 4 thực hiện các phân tích, đánh giá các kết quả đạt đƣợc sau khi triển khai
kỹ thuật mới, so sánh về chức năng, hiệu năng, hiệu quả so với hệ thống hiện tại.

4


Chƣơng 1: GIỚI THIỆU ĐỀ TÀI
1.1. Tổng quan về hệ thống bán xe hơi
1.1.1. Mơ hình và chức năng của hệ thống bán xe hơi
Hệ thống bán xe hơi là một hệ thống thƣơng mại điện tử đƣợc xây dựng với mục
đích để làm trung gian cho các giao dịch giữa các ngƣời dùng với nhau, hệ thống có thể
bao gồm một hoặc nhiều Website có cùng cách thức xây dựng. Có nhiều cách thức thu
phí trung gian của hệ thống bán xe hơi nhƣng nổi bật nhất là hai phƣơng pháp: 1/ Hệ
thống thu phí dựa theo phần trăm giá trị của sản phẩm; 2/ Hệ thống thu phí dựa theo thời
gian sản phẩm đƣợc hiển thị trên hệ thống. Hệ thống bán xe hơi mà luận văn trình bày ở
đậy là hệ thống thu phí dựa theo thời gian sản phẩm đƣợc hiển thị trên hệ thống. Doanh
nghiệp sở hữu hệ thống này sẽ quảng cáo các Website bán xe hơi thơng qua các hình thức
khác nhau (Internet, băng rơn quảng cáo, quảng cáo qua truyền hình, làm nhà tài trợ cho
các sự kiện lớn ...) nhằm nâng cao số lƣợng ngƣời dùng biết đến các Website bán xe hơi
mà doanh nghiệp sở hữu, từ đó tạo nên một thị trƣờng giao dịch xe hơi trên các Website
này và thu phí dịch vụ cho mỗi lần đăng tin mua hoặc bán xe của ngƣời sử dụng. Hệ
thống đƣợc trình bày trong luận văn này bao gồm rất nhiều Website bán xe hơi trong và
ngoài nƣớc nhƣ bảng dƣới đây
STT

Tên Website


Vị tri

1

Banxehoi.com

Việt Nam

2

Chobrod.com

Thái Lan

3

Cintamobil.com

Indonesia

4

Naijauto.com

Nigeria

5

Philkotse.com


Philippines

6

Automexico.com

Mexico

Bảng 1: Danh sách các Website hệ thống bán xe hơi đang sở hữu

5


1.1.2. Hoạt động của hệ thống bán xe hơi
Ngƣời dùng hệ thống Website bán xe hơi sẽ nhận đƣợc thông tin các loại xe mà
ngƣời dùng khác bán hoặc mua và các thông tin này đƣợc hiển thị thông qua trang chủ
của Website (ví dụ với Website banxehoi.com) . Nếu ngƣời dùng muốn xem chi tiết hơn
về một sản phẩm trên Website, họ có thể nhấp chuột vào sản phẩm để truy cập vào trang
chi tiết của sản phẩm đó để nhận thêm các thông tin chi tiết hơn về thơng số kỹ thuật
cũng nhƣ tình trạng của sản phẩm thông qua các bức ảnh đƣợc ngƣời đăng tin chụp và tải
lên hệ thống . Nếu ngƣời dùng muốn xem nhiều sản phẩm hơn trên Website thì ngƣời
dùng có thể truy cập trực tiếp hoặc sử dụng chức năng tìm kiếm để truy cập vào trang
danh sách sản phẩm. Tại trang này, số lƣợng sản phẩm là rất lớn có thể lên đến hàng
chục, hàng trăm nghìn tin phụ thuộc theo tiêu chí tìm kiếm mà ngƣời dùng đã đƣa ra.
Việc lựa chọn đƣợc các sản phẩm ƣng ý trong hàng trăm nghìn sản phẩm đƣợc hệ thống
đƣa ra là một việc khơng hề dễ dàng, do đó ngƣời dùng sẽ sử dụng tính năng tìm kiếm mà
Website hỗ trợ để lọc ra các tin tức mà họ muốn.

Hình 1: Trang chủ Website banxehoi.com


6


Trên trang chi tiết tin của Website, ngƣời dùng sẽ nhận đƣợc nhiều thông tin chi
tiết hơn về sản phẩm nhƣ bao gồm tình trạng, xuất xứ, năm sản xuất, đời xe, kiểu dáng,
hộp số… cũng nhƣ xem đƣợc nhiều ảnh hơn về chiếc xe mà ngƣời dùng khác đã đƣa lên.

Hình 2 : Trang chi tiết tin Website banxehoi.com
Nếu ngƣời dùng muốn nhận đƣợc nhiều tin hơn về các loại xe đã đƣợc đăng trên
Website thì có thể truy cập vào trang danh sách tin. Tại đây có hàng chục, hàng trăm
nghìn tin về rất nhiều loại xe mà những ngƣời dùng khác đã đăng lên hệ thống. Để lọc
các tin tức đƣợc quan tâm, ngƣời dùng có thể sử dụng tính năng tìm kiếm trên trang danh
sách tin hoặc trên trang chủ. Lúc này trang danh sách tin sẽ chỉ hiển thị các kết quả đƣợc
lọc theo các tiêu chí tìm kiếm mà ngƣời dùng đã chọn, từ đây ngƣời dùng có thể tìm đƣợc
sản phẩm mà họ muốn.

7


Hình 3 : Trang danh sách tin Website banxehoi.com
1.1.3. Dữ liệu sản phẩm của hệ thống bán xe hơi
Ngoài các sản phẩm về xe hơi đã đƣợc giới thiệu nhƣ trên thì các Website thuộc
hệ thống bán xe hơi cịn có những bài tin tức, bài giá xe, bài đánh giá hay bài so sánh các
hãng xe khác nhau để giúp ngƣời dùng có thêm thơng tin lựa chọn sản phẩm mà mình
mong muốn nhất. Mặc dù những bài viết trên không mang lại lợi nhuận trực tiếp cho
Website nhƣng đây là một trong các tính năng vơ cùng quan trọng giúp tăng sự hiểu biết
cho ngƣời dùng và là một trong các yếu tố chính tăng lƣợng ngƣời dùng cho hệ thống bán
xe hơi. Ngƣời dùng có thể truy cập các bài viết này thông qua thanh danh mục hoặc
thông qua các nút (so sánh xe, đánh giá xe) trong trang chi tiết của một sản phẩm


8


Hình 4 : Bài viết đánh giá và so sánh xe Website banxehoi.com
Các tính năng trên cũng cung cấp chức năng tìm kiếm để ngƣời dùng có thể dễ
dàng lọc ra các bài viết mà họ quan tâm, tuy nhiên số lƣợng các bài viết hiện tại chƣa quá
lớn nên việc cải tiến chức năng tìm kiếm ở các chức năng này chƣa phải vấn đề cấp thiết.
Do đó, với hiện trạng nhƣ vậy, luận văn sẽ tập trung vào cải tiến chức năng tìm kiếm sản
phẩm trƣớc, cịn với chức năng tìm kiếm dữ liệu trên các bài viết trên sẽ đƣợc triển khai
trong tƣơng lai.
1.2. Hiện trạng của chức năng tìm kiếm trên hệ thống bán xe hơi
1.2.1. Mơ hình tổng quan của chức năng tìm kiếm
Các Website trên hệ thống bán xe hơi mà luận văn đề cập đến có tính năng tìm
kiếm tƣơng tự nhau (một số Website có phần tìm kiếm có đơi chút khác biệt nhằm phục
vụ nhu cầu riêng biệt của địa phƣơng) nên tác giả sẽ chọn nâng cao hiệu quả chức năng
tìm kiếm của Website chobrod.com làm sản phẩm chính cho luận văn. Chobrod.com là
một Website thuộc hệ thống bán xe hơi cung cấp các tin mua bán xe hơi ở thị trƣờng Thái
Lan. Ngoài ra đây là Website đầu tiên thuộc hệ thống đặt bƣớc tiên phong ra thị trƣờng
nƣớc ngồi và nhanh chóng trở thành một trong Website thuộc vị trí đầu về bán xe hơi ở
Thái Lan. Hiện tại chobrod.com tiếp tục tiên phong nâng cấp lên phiên bản thu phí trong
khi các Website thuộc hệ thống ban đầu sẽ miễn phí đăng tin để ngƣời dùng quen với các
chức năng rồi dần sẽ chuyển sang thu phí nên việc xử lý vấn đề bức thiết là nâng cao hiệu
quả tìm kiếm là ƣu tiên hàng đầu của hệ thống.
Mơ hình tổng quan chức năng tìm kiếm của hệ thống đƣợc thể hiện nhƣ hình dƣới
đây

9



Hình 5 : Mơ hình tổng quan
Máy chủ là nơi nhận thơng tin tìm kiếm từ ngƣời dùng, chuyển đổi thông tin này
thành các câu truy vấn cơ sở dữ liệu rồi truyền đến cơ sở dữ liệu. Sau khi nhận kết quả trả
về từ cơ sở dữ liệu thì sẽ chuyển đổi ngƣợc lại sang danh sách tin hiển thị cho ngƣời
dùng.
Cơ sở dữ liệu là nơi chứa danh sách tin đƣợc tạo ra bằng các tin đăng của ngƣời
dùng thông qua chức năng đăng tin. Khi máy chủ truyền một yêu cầu truy vấn dữ liệu tới
cơ sở dữ liệu thì cơ sở dữ liệu sẽ thực hiện truy vấn này và trả về một danh sách kết quả
cho máy chủ dựa theo câu truy vấn đƣợc nhận.
1.2.2. Nguyên tắc hoạt động của chức năng tìm kiếm
Khi khách hàng thực hiện tìm kiếm, máy chủ sẽ nhận đƣợc một yêu cầu tìm kiếm
truyền lên. Lúc này, các tiêu chí tìm kiếm mà ngƣời dùng chọn lựa sẽ do một “công
nhân” (worker) thực thi để chuyển thành câu lệnh truy vấn cơ sở dữ liệu. Với mỗi
Website, thông tin đƣợc hiển thị trên trang danh sách tìm kiếm là khác nhau. Do đó các
“cơng nhân” trên mỗi máy chủ của mỗi Website thuộc hệ thống bán xe hơi sẽ thực thi các
cơng việc khác nhau. Ví dụ nếu một Website tập trung mạnh vào trang chi tiết sản phẩm
thì việc xây dựng cấu trúc dữ liệu hay việc xây dựng Website đó sẽ xoay quanh trang chi
tiết. Vì vậy thông tin hiển thị ở các trang danh sách sẽ ít hơn để đảm bảo tốc độ cũng nhƣ
độ chính xác mà ngƣời dùng nhận đƣợc nên các “công nhân” sẽ tạo ra câu truy vấn lấy ra
10


các thông tin cần thiết nhất cho trang danh sách. Mặt khác, nếu Website tập trung mạnh
vào trang danh sách tin hay trang danh sách kết quả tìm kiếm thì trang này sẽ hiển thị
đƣợc nhiều thông tin hơn cũng nhƣ sẽ có những tính năng đặc biệt nhƣ xem trƣớc một
phần nội dung ở trang chi tiết, hiển thị sao đánh giá của hệ thống cũng nhƣ của ngƣời
dùng về sản phẩm … Lúc này các “công nhân” sẽ phải thực hiện những câu truy vấn
phức tạp hơn để phục vụ u cầu tìm kiếm của ngƣời dùng. Ngồi ra khi nhận đƣợc kết
quả trả về từ cơ sở dữ liệu, máy chủ sẽ phải chuyển dữ liệu từ dạng mà cơ sở dữ liệu trả
về sang các thông tin mà trang danh sách tìm kiếm sẽ hiển thị rồi tổng hợp lại đƣa ra

thành kết quả cho ngƣời dùng.

Hình 6 : Chức năng tìm kiếm trên trang chủ Website chobrod.com
1.2.3. Hạn chế của chức năng tìm kiếm hiện tại
Chức năng tìm kiếm hiện tại của hệ thống đang tồn tại một số bất cập nhƣ sau: 1/
Chức năng tìm kiếm chƣa cho phép ngƣời dùng tìm kiếm theo từ khóa nhập vào; 2/ Chức
năng tìm kiếm u cầu ngƣời dùng sử dụng số lƣợng thao tác lớn (8 lần nhấp chuột vào
các tiêu chí tìm kiếm để mở ra các tiêu chí và ít nhất 8 lần nhấp chuột vào các giá trị để
lựa chọn) làm giảm độ thân thiện của Website với ngƣời dùng; 3/ Hệ thống đang sử dụng
hệ cơ sở dữ liệu quan hệ nên tốc độ truy vấn chậm và khó khăn trong việc tìm kiếm theo
từ khóa mà ngƣời dùng nhập vào. Đối với việc bổ sung chức năng tìm kiếm theo từ khóa,
hệ thống sẽ tồn tại một số bất cập nhƣ sau
-

Tốc độ truy vấn dữ liệu của hệ thống giảm.

-

Nếu từ khóa ngƣời dùng nhập vào q ngắn thì dữ liệu trả về là quá lớn (không
mang nhiều ý nghĩa lọc dữ liệu cho ngƣời dùng).

-

Nếu từ khóa ngƣời dùng nhập vào dài thì hiện tại có hai hƣớng đề ra nhƣ sau
o Hệ thống sẽ tìm kiếm tồn bộ cụm từ mà ngƣời dùng nhập vào.

11


o Hệ thống sẽ tách cụm từ mà ngƣời dùng nhập vào thành các cụm từ nhỏ

hơn và đƣa ra tất cả các kết quả chứa các cụm từ nhỏ.
Với phƣơng pháp thứ nhất (Hệ thống sẽ tìm kiếm tồn bộ cụm từ mà ngƣời dùng
nhập vào) thì kết quả trả về sẽ rất ít (thậm chí khơng có dữ liệu), ngồi ra phƣơng pháp
này cịn bỏ sót rất nhiều tin tƣơng tự do thừa hoặc thiếu từ khóa, hệ thống chƣa xử lý để
trả ra các kết quả sử dụng các từ đồng nghĩa hoặc do ngƣời dùng viết sai từ khóa tìm
kiếm... Phƣơng pháp này phát huy tối đa hiệu quả khi ngƣời dùng cần tìm kiếm chính xác
một tin mà ngƣời dùng đã biết đến (tin do chính ngƣời dùng đăng hoặc tin ngƣời dùng
đang quan tâm) mà trƣờng hợp này không chiếm đa số trong các hành vi tìm kiếm của
ngƣời dùng. Với phƣơng pháp thứ hai (Hệ thống sẽ tách cụm từ mà ngƣời dùng nhập vào
thành các cụm từ nhỏ hơn và đƣa ra tất cả các kết quả chứa các cụm từ nhỏ) thì hệ thống
khơng gặp các vấn đề nhƣ phƣơng pháp đầu tiên mắc phải nhƣng lại phát sinh các vấn đề
bất cập nhƣ sau:
-

Do hệ thống phân tích một từ khóa dài thành các từ khóa nhỏ hơn nên có thể coi
việc tìm kiếm hiện tại là tổng hợp kết quả của nhiều cuộc tìm kiếm với từ khóa
ngắn gộp lại. Vì vậy số lƣợng kết quả trả về là rất lớn (không mang nhiều ý nghĩa
lọc dữ liệu cho ngƣời dùng).

-

Hệ thống phân tích từ khóa có thể khơng xử lý hết đƣợc các trƣờng hợp có thể xảy
ra nên một số từ khóa có thể bị mất (hệ thống sẽ loại bỏ một số từ chung chung
không mang tính chất quyết định để giảm số lƣợng kết quả trả về. Ví dụ trong
trƣờng hợp ngƣời dùng tìm kiếm với từ khóa “Bán xe Audi A1 tại Hà Nội” thì các
từ nhƣ “xe” và “tại” sẽ đƣợc loại bỏ đi.) gây ra hiện tƣợng kết quả trả về không
đúng nhƣ ý muốn của ngƣời dùng.

1.3. Mục tiêu và định hƣớng giải pháp
Từ các phân tích trên, hệ thống cần một chức năng tìm kiếm theo từ khóa của

ngƣời dùng mà có tính năng gợi ý (giúp ngƣời dùng khơng nhập sai các từ khóa quan
trọng với hệ thống và trợ giúp các ngƣời dùng mới làm quen với hệ thống hơn) đáp ứng
đƣợc các tiêu chí sau:

12


-

Gợi ý tìm kiếm khơng đƣợc q cứng nhắc và ép buộc ngƣời dùng (gợi ý theo
nhiều tiêu chí và cho phép ngƣời dùng đƣợc quyền chọn hoặc không chọn theo gợi
ý mà hệ thống đề ra)

-

Chuyển các lựa chọn của ngƣời dùng theo gợi ý của hệ thống thành các điều kiện
truy vấn theo các tiêu chí mà hệ thống đã có nhằm nâng cao tốc độ tìm kiếm (lý do
việc chuyển đổi này có thể nâng cao tốc độ tìm kiếm sẽ đƣợc trình bày rõ ràng hơn
trong chƣơng 2)

-

Tự động gán các giá trị mà ngƣời dùng chọn theo gợi ý vào tính năng tìm kiếm
hiện tại để ngƣời dùng không cần thao tác lại cũng nhƣ hiểu rõ hơn về cơ chế hoạt
động của chức năng tìm kiếm trên hệ thống trong trƣờng hợp ngƣời dùng muốn
tiếp tục lọc dữ liệu hiện tại bằng tính năng tìm kiếm.
Ngồi tính năng gợi ý tìm kiếm nhƣ trên thì việc tăng tốc độ truy vấn cơ sở dữ liệu

là một trong các vấn đề cấp thiết. Do tốc độ truy vấn cơ sở dữ liệu quan hệ khi tìm kiếm
theo từ khóa là chậm nên hệ thống cần một cơng cụ tìm kiếm mới xử lý đƣợc các bất cập

mà hệ cơ sở dữ liệu quan hệ chƣa thể giải quyết.

13


Chƣơng 2: TỔNG QUAN VỀ CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ
2.1. Một số giải pháp nổi bật để giải quyết vấn đề của các hệ thống bán xe hơi trong
và ngoài nƣớc
Với mục tiêu và giải pháp nhƣ trên, tác giả đã tìm hiểu và nghiên cứu các phƣơng
pháp đƣợc sử dụng ở các hệ thống bán xe hơi trong và ngoài nƣớc và nhận thấy các
phƣơng pháp đƣợc áp dụng phổ biến nhƣ sau
2.1.1. Phƣơng pháp tự động gợi ý đƣợc hỗ trợ sẵn
Các Website sử dụng phƣơng pháp này hiển thị cho ngƣời dùng một ô nhập dữ
liệu để ngƣời dùng có thể nhập từ khóa tìm kiếm . Tuy nhiên khác với các ơ tìm kiếm từ
khóa thơng thƣờng thì ơ tìm kiếm này đƣợc tích hợp bởi gói autocomplete.js do một
trong các thƣ viện lớn là jqueryui.com (jquery là thƣ viện của ngôn ngữ lập trình
JavaScript giúp việc lập trình web dễ dàng và tiện dụng hơn, ui là viết tắt của từ user
interface – giao diện ngƣời dùng) sẽ gợi ý cho ngƣời dùng một vài tiêu chí tìm kiếm liên
quan đến nhau và ngƣời dùng sẽ chọn theo gợi ý hoặc không. Nếu ngƣời dùng khơng
chọn theo gợi ý thì hệ thống sẽ khơng thực hiện hành động nào ngồi việc ẩn phần gợi ý
đi. Còn nếu ngƣời dùng chọn theo gợi ý thì Website sẽ chuyển hƣớng truy cập đến một
trang danh sách tìm kiếm chứa các tiêu chí mà phần gợi ý đề ra. Hệ thống bán xe hơi mà
luận văn đề cập cũng đã áp dụng phƣơng pháp này vào một số Website và điển hình là
tính năng gợi ý tìm kiếm trên Website banxehoi.com . Phƣơng pháp này có ƣu điểm là
tránh đƣợc các bất cập khi tìm kiếm bằng từ khóa thơng thƣờng nhƣ nhập sai từ khóa, từ
khóa q dài hoặc q ngắn mà khơng nêu đƣợc trọng tâm vấn đề tìm kiếm. Ngồi ra
phƣơng pháp này sẽ trợ giúp tối đa cho những ngƣời mới sử dụng hệ thống hoặc chƣa có
mục đích rõ ràng trong việc tìm kiếm, hệ thống xử lý chức năng tìm kiếm nhanh gọn.

14



Hình 7 : Phƣơng pháp tự động gợi ý trên Website banxehoi.com
Tuy nhiên phƣơng pháp này cũng để lại nhiều bất cập nhƣ sau:
-

Tự động gợi ý gây gƣợng ép cho ngƣời dùng vì khi ngƣời dùng khơng chọn theo
gợi ý của hệ thống thì chức năng gợi ý này sẽ khơng thực hiện hành động nào,
thay vào đó chỉ ẩn danh sách gợi ý nên nếu ngƣời dùng muốn tiếp tục sử dụng tính
năng này thì khơng có cách nào khác ngoài việc chọn theo gợi ý mà hệ thống đã
đề ra.

-

Tự động gợi ý chỉ gợi ý đƣợc một vài tiêu chí liên quan tới nhau. Lấy ví dụ chức
năng gợi ý tìm kiếm trên Website banxehoi.com chỉ gợi ý tìm kiếm theo hãng xe,
loại xe, phiên bản và tỉnh thành chứ chƣa có gợi ý tìm kiếm cho các tiêu chí nhƣ
giá cả, năm sản xuất, kiểu dáng xe, tình trạng cũ mới ... Điều này khiến việc trợ
giúp cho ngƣời dùng của hệ thống chƣa đƣợc triệt để. Ngoài ra khi nhấp chuột vào
phần kết quả gợi ý thì hệ thống sẽ lập tức chuyển tới trang danh sách kết quả, điều
này không thân thiện với ngƣời dùng vì nếu ngƣời dùng muốn tìm kiếm và gợi ý
theo nhiều tiêu chí thì hệ thống chƣa đáp ứng đƣợc.

2.1.2. Phƣơng pháp thu gọn chức năng tìm kiếm
Đây là một phƣơng pháp đƣợc đa số các Website bán xe hơi sử dụng. Hệ thống sẽ
chỉ hiển thị các tiêu chí tìm kiếm cơ bản nhƣ tỉnh thành, hãng xe, loại xe và phiên bản và

15



ẩn tất cả các tiêu chí tìm kiếm cịn lại đi. Nếu ngƣời dùng muốn tìm kiếm theo các tiêu
chí cịn lại sẽ nhấp chuột vào nút tìm kiếm nâng cao hoặc mở rộng tiêu chí tìm kiếm để
hệ thống hiển thị ra các tiêu chí tìm kiếm cịn lại. Ví dụ nhƣ phần tìm kiếm của Website
banxehoi.com , hệ thống sẽ hiển thị ra các tiêu chí nhƣ hãng xe, dịng xe (loại xe), giá,
tình trạng (cũ/mới), tỉnh thành và năm sản xuất và ẩn đi rất nhiều tiêu chí nhƣ hình 8

Hình 8 : Chức năng tìm kiếm khi đƣợc mở rộng của Website banxehoi.com
Phƣơng pháp này thực chất khơng cải thiện gì về hệ thống nhƣng lại giúp những
ngƣời dùng mới sử dụng hệ thống có thể biết đƣợc các tiêu chí quan trọng cần tìm kiếm
để dần dần làm quen với chức năng tìm kiếm của hệ thống. Tuy nhiên cách thức hoạt
động của phƣơng pháp này khơng khác gì với phƣơng pháp hiện tại nên vẫn tồn tại nhƣợc
điểm là số thao tác của ngƣời dùng là quá nhiều để lựa chọn đƣợc các tiêu chí tìm kiếm.
2.1.3. Phƣơng pháp gợi ý cho các tìm kiếm theo lựa chọn
Phƣơng pháp này sử dụng bộ thƣ viện jquerychoosen.js (đƣợc phát triển từ các
nhà nâng cấp thƣ viện cho jquery). Cũng giống nhƣ phƣơng pháp tìm kiếm theo lựa chọn
hiện tại, phƣơng pháp này cũng hiển thị các lựa chọn tiêu chí cho ngƣời dùng, tuy nhiên
thay vì việc sau khi click chuột vào các tiêu chí, ngƣời dùng sẽ không cần lăn chuột đến
giá trị cần tìm mà hệ thống sẽ có một ơ tìm kiếm theo từ khóa và gợi ý các kết quả tồn tại
trong hệ thống. Ví dụ với chức năng tìm kiếm của Website automexico.com , khi tìm
kiếm theo tỉnh thành, ngƣời dùng có thể nhập một phần của tên tỉnh thành muốn tìm kiếm
và hệ thống sẽ gợi ý cho ngƣời dùng các kết quả chứa từ khóa đã đƣợc nhập.

16


Hình 9 : Chức năng tìm kiếm của Website automexico.com
Phƣơng pháp này tuy vẫn gặp phải các vấn đề mà hệ thống hiện tại đang cần xử lý
(chƣa giảm đƣợc số thao tác của ngƣời dùng) nhƣng lại hỗ trợ rất lớn trong việc lựa chọn
kết quả mong muốn khi tập dữ liệu các tiêu chí là khá lớn. Ví dụ ở Ấn Độ, việc tìm kiếm
theo tỉnh thành sẽ là rất khó khăn nếu khơng chức năng gợi ý vì tập dữ liệu thành phố ở

Ấn Độ là khoảng 3000 kết quả, một con số quá lớn để tìm kiếm kết quả theo cách lăn
chuột và chọn nhƣ bình thƣờng.
2.2. Tổng quan về kỹ thuật Faceted Search
2.2.1. Các hành vi tìm kiếm
Theo [Andreas], có ba hành vi tìm kiếm cơ bản là: 1/ Tìm kiếm tra cứu (Lookup
Search); 2/ Tìm kiếm học tập (Learning Search); 3/ Tìm kiếm điều tra (Investigation
Search). Tìm kiếm tra cứu là hành vi tìm kiếm đƣợc sử dụng nhiều nhất. Ngƣời dùng
ln có nhu cầu tìm kiếm thơng tin và họ điền các từ khóa vào các ơ tìm kiếm với mong

17


muốn có đƣợc kết quả nhƣ ý. Với hành động nhƣ trên, kết quả trả về sẽ rơi vào một trong
bốn loại sau:
-

Văn bản chứa nguồn liên quan đến vấn đề tìm kiếm.

-

Văn bản có nội dung liên quan.

-

Thơng tin ngƣời dùng cần dƣới dạng câu truy vấn.

-

Thông tin ngƣời dùng mong muốn.
Trái ngƣợc với tìm kiếm tra cứu, tìm kiếm học tập là một sự tƣơng tác giữa nhiều


ngƣời hay nhiều hệ thống máy tính cùng tìm kiếm về một vấn đề. Sau đó họ trao đổi các
kiến thức mà họ đã nhận đƣợc và tổng hợp các kiến thức đó lại thành kết quả đạt đƣợc.
Tƣơng tự với tìm kiếm học tập, tìm kiếm điều tra là một sự tƣơng tác giữa nhiều ngƣời
hay nhiều hệ thống máy tính cùng tìm kiếm về một vấn đề. Điểm khác nhau ở đây là mục
đích của phƣơng pháp này là thu hồi các dữ liệu trong quá khứ để suy đốn các sự việc,
hành động trong tƣơng lai. Do đó phƣơng pháp này yêu cầu số lƣợng thông tin hơn là độ
chính xác của thơng tin. Vì vậy, ba hành vi tìm kiếm này đƣợc sử dụng trong từng trƣờng
hợp để phục vụ các mục đích khác nhau của ngƣời dùng để đạt đƣợc kết quả mong muốn.

Hình 10 : Các hành vi tìm kiếm cơ bản
Tuy nhiên khi lƣợng thơng tin ngày càng nhiều thì mục đích tìm kiếm của ngƣời
dùng ngày càng tăng lên. Do đó, ngồi ba hành vi tìm kiếm cơ bản nhƣ trên thì cịn có
một số hành vi tìm kiếm mới đƣợc kết hợp từ các hành vi tìm kiếm cơ bản và một trong
số đó là tìm kiếm khám phá (Exploratory Search). Tìm kiếm khám phá là sự kết hợp giữa
18


tìm kiếm học tập và tìm kiếm điều tra , tìm kiếm khám phá có thể đƣợc phân biệt với các
loại tìm kiếm khác thơng qua các hành động sau:
-

Tìm kiếm khám phá là một hành động đƣợc lặp đi lặp lại nhiều lần để hồn thành.
Do đó cần một hệ thống hỗ trợ lƣu lại các truy vấn của ngƣời dùng theo thời gian.

-

Mục tiêu của các cuộc tìm kiếm khám phá vƣợt ra ngồi các tra cứu thơng tin đơn
giản. Cụ thể hơn, cơng việc tìm kiếm có xu hƣớng là các vấn đề về học tập và
điều tra. Trong hầu hết các trƣờng hợp, mục tiêu tổng thể là giúp ngƣời dùng đƣa

ra quyết định hoặc làm tăng sự hiểu biết của họ liên quan đến một chủ đề mà họ
quan tâm.

-

Tƣơng tác giữa con ngƣời và máy tính trong tìm kiếm khám phá là nhiều nhất,
bao gồm cả hai hình thức truy vấn là duyệt (browsing) và tìm kiếm theo truy vấn
(query searching) (hai hình thức này sẽ đƣợc giải thích rõ hơn ở mục tiếp theo).
Trong đó duyệt ở đây đƣợc sử dụng để giải quyết các vấn đề khơng chắc chắn của
ngƣời dùng.

-

Vì việc sử dụng thông tin và hiểu biết thông tin liên quan chặt chẽ với nhau trong
tìm kiếm khám phá nên các cơng cuộc tìm kiếm này có thể là tƣơng tác giữa
nhiều bên khác nhau. Các bên sẽ làm việc cùng nhau và đƣa ra các mục tiêu xác
định cho một nhu cầu cụ thể hoặc tham gia giải quyết các vấn đề phức tạp hơn.

-

Để thực hiện tìm kiếm khám phá, hệ thống tìm kiếm phải giải quyết các yếu tố cơ
bản của tìm kiếm khám phá. Do đó, ta cần một phƣơng pháp để đánh giá hệ thống
có phù hợp để thực hiện tìm kiếm khám phá hay không.

19


Hình 11 : Tìm kiếm khám phá
Ví dụ: Ngƣời dùng cần mua một chiếc xe ô tô nhƣng chƣa rõ nên mua xe loại nào
do ngƣời dùng chƣa có nhiều kiến thức về ô tô. Lúc này xu hƣớng của ngƣời dùng sẽ

đƣợc chia thành các trƣờng hợp sau:
-

Tìm kiếm về các thơng tin chi tiết của các dịng xe, đời xe.

-

Tìm kiếm xu hƣớng mua xe hiện tại.

-

Xin trợ giúp từ cộng đồng.
Cả ba trƣờng hợp trên đều sử dụng duyệt để nâng cao tầm hiểu biết của bản thân

về vấn đề cần tìm kiếm. Sau khi đã lựa chọn đƣợc một vài phƣơng án đƣợc coi là tối ƣu
với bản thân, lúc này sử dụng tìm kiếm theo truy vấn là một biện pháp đúng đắn để đạt
đƣợc kết quả nhanh và chính xác nhất. Tuy nhiên để hiểu rõ hơn về các hệ thống hiện tại
bằng cách nào trả về thông tin cho ngƣời dùng nhƣ thế nào và làm sao để cải thiện đƣợc
tốc độ nhận và độ chính xác của thơng tin thì chúng ta cần phải hiểu về các mơ hình truy
vấn thơng tin cơ bản cũng nhƣ các cách thức mà hệ thống nhận thơng tin từ ngƣời dùng.
2.2.2. Các mơ hình truy vấn thơng tin
[Andreas] khẳng định có hai mơ hình truy vấn thơng tin cơ bản là duyệt
(browsing) và tìm kiếm theo truy vấn (query searching). Duyệt là một hình thức nhìn,
lƣớt qua và qt thơng tin trong một mơi trƣờng thơng tin cịn tìm kiếm theo truy vấn là
20


×