1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo đồ án tốt nghiệp xây dựng ứng dụng dựa trên mạng ngang hàng

30 699 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Ứng Dụng Dựa Trên Mạng Ngang Hàng
Tác giả Nguyễn Thị Hoa
Người hướng dẫn TS. Phạm Hồng Thái
Trường học Trường Đại học Dân Lập Hải Phòng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo cáo đồ án tốt nghiệp
Thành phố Hải Phòng
Định dạng
Số trang 30
Dung lượng 0,97 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Kỹ thuật tạo chỉ mục cho tài liệu và tìm kiếm dựa trên chỉ mục.. Khái quát ý tưởng Ứng dụng thực hiện được 3 chức năng lớn sau:  Cho phép người dùng tại các điểm nút khi tham gia vào

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG

NGÀNH CÔNG NGHỆ THÔNG TIN

======

ISO 9001:2000 BÁO CÁO ĐỒ ÁN TỐT NGHIỆP

Tên đề tài: Xây dựng ứng dụng dựa trên mạng ngang hàng

Giáo viên hướng dẫn: TS Phạm Hồng Thái

CN Lương Việt Nguyên

Sinh viên thực hiện : Nguyễn Thị Hoa

Trang 2

NỘI DUNG CHÍNH

I Mục đích của đề tài

II Kỹ thuật tạo chỉ mục cho tài liệu và tìm

kiếm dựa trên chỉ mục

III Giải pháp xây dựng ứng dụng

IV Cài đặt chương trình

V Kết luận và hướng phát triển

1

Trang 4

II KỸ THUẬT TẠO CHỈ MỤC CHO TÀI LIỆU

VÀ TÌM KIẾM DỰA TRÊN CHỈ MỤC

1 Tổ chức chỉ mục tìm kiếm

 Tìm kiếm một cách hiệu quả trên file văn bản

 Xâu truy vấn bao gồm một tập hợp các từ hoặc

cụm từ

 Nhiệm vụ của thao tác tìm kiếm là trả về danh sách

các file mà nội dung của chúng có chứa các từ,

cụm từ trong xâu truy vấn

3

Trang 5

 Phương pháp thực hiện quét một lần trên các file

văn bản và lưu lại danh sách các thành tố có trong file, các thông tin đi kèm với mỗi thành tố

 Các thông tin này sẽ được tổ chức theo một cấu

trúc dữ liệu riêng và được gọi là chỉ mục

2 Tạo chỉ mục

 Có ba phương pháp chủ yếu để tạo chỉ mục dựa

trên việc sử dụng các cấu trúc: file đảo ngược, mảng hậu tố và file chữ ký

 File đảo ngược là một cấu trúc dùng để tạo chỉ mục

bằng phương pháp hướng từ

4

Trang 6

 Cấu trúc file đảo ngược bao gồm hai thành phần

cơ bản: bảng từ vựng và bảng vị trí

Hình 1: Tạo chỉ mục theo cấu trúc file đảo ngược

5

Trang 7

 Để giảm kích thước lưu trữ bảng vị trí ta dùng kỹ thuật đánh địa chỉ khối

Hình 2: Tạo chỉ mục theo cấu trúc file đảo ngược

sử dụng kỹ thuật đánh địa chỉ khối

Trang 8

3 Tìm kiếm dựa trên chỉ mục

Thuật toán tìm kiếm chia làm 3 bước:

 Tìm kiếm trên bảng từ vựng

 Thu thập danh sách thông tin vị trí của từ, cụm

từ tìm được sau bước 1 thông qua bảng vị trí

 Xử lý các thông tin thu thập được và tạo ra danh

sách kết quả tìm kiếm

7

Trang 9

4 Xếp hạng kết quả tìm kiếm

 Tiêu chí để sắp xếp kết quả tìm kiếm chính là độ

liên quan giữa các kết quả với truy vấn tìm kiếm

do người dùng đưa ra

 Bài toán xác định độ liên quan giữa một truy vấn

q với các tài liệu trong một thư viện C cho trước

 Thuật toán xác định độ liên quan: Thuật toán

TF-IDF(Term Frequency – Inverse Document

Frequency)

Trang 10

 Xét bài toán đơn giản: truy vấn q gồm một tập hợp các từ khóa ki Văn bản D bất kỳ thuộc thư viện C thì ta có:

R(q) = Σ R(ki) (1)

* R(q) là độ liên quan của q với D

* R(ki) là độ liên quan của từ khóa ki với D

 Xét trong phạm vi văn bản D: Tần suất xuất hiện của một từ khóa trong văn bản tỉ lệ thuận với độ liên quan của nó với văn bản đó

 Đại lượng tần suất xuất hiện này của từ khóa ki

được gọi là tf(i)

9

Trang 11

 Xét trên pham vi toàn bộ thư viện C: từ khóa k xuất

hiện trong càng nhiều văn bản thuộc C thì độ liên quan của nó đến D phải càng nhỏ hay R(k) tỉ lệ nghịch với

số văn bản trong C có chứa từ khóa k

 Tham số idf(i) được tính như sau:

idf(i) = log(N/ni) (2)

* N là số văn bản có trong C

* ni là số văn bản trong C có chứa ki

* idf(i) sẽ tăng khi ni giảm nghĩa là có ít văn bản

trong C chứa ki

Trang 12

 Từ (1) và (2)  R(ki) = tf(i) * idf(i) (3)

 Từ (1) và (3)  công thức ước lượng độ liên quan của truy vấn q với một văn bản D thuộc C như

sau:

R(q) = Σ (tf(i) * idf(i)) (4)

 Sắp xếp các văn bản thuộc C theo thứ tự giảm dần của đại lượng R(q)

 Nếu đặt một ngưỡng dưới đối với giá trị R(q) thì

ta sẽ lọc ra được một danh sách các tài liệu kết quả

có độ liên quan với q giảm dần

11

Trang 13

III GIẢI PHÁP XÂY DỰNG ỨNG DỤNG

1 Khái quát ý tưởng

Ứng dụng thực hiện được 3 chức năng lớn sau:

 Cho phép người dùng tại các điểm nút khi tham

gia vào mạng có thể tiến hành chia sẻ và dừng

chia sẻ các tài liệu nằm trên máy của mình

 Cho phép người dùng có thể đưa ra những truy

vấn để tìm kiếm theo nội dung các tài liệu hiện đang được chia sẻ trên phạm vi toàn mạng

 Cho phép người dùng tải về các tài liệu được

chia sẻ nằm trên một điểm nút khác

Trang 14

Hình 3: Luồng thông điệp giữa các thành phần trong mạng

13

Trang 15

 Trong khuôn khổ một ứng dụng chia sẻ file ngang hàng, có ba sự kiện xảy ra ở phía các điểm nút đòi hỏi phải tiến hành cập nhật hệ thống chỉ mục là:

* Chia sẻ một tài liệu

* Dừng chia sẻ một tài liệu

* Đăng xuất khỏi hệ thống

 Người dùng trên một điểm nút tiến hành cập nhật lại file tài liệu mà nội dung của nó đã có sự thay

đổi tính từ lần chia sẻ đầu tiên hoặc từ lần cập nhật cuối cùng

 Máy chủ tìm kiếm sẽ tiến hành cập nhật chỉ mục

Trang 16

Hình 4: Hoạt động của cơ chế cập nhật chỉ mục

và tìm kiếm dựa trên chỉ mục.

15

Trang 17

 Các trường thông tin liên quan đến việc tìm kiếm

nội dung của tài liệu:

* name

* content

Trang 18

3 Đánh giá giải pháp

* Giúp phân chia công việc cập nhật chỉ mục cho cả

hai phía – các điểm nút và máy chủ tìm kiếm – nhằm bảo đảm khai thác tốt hơn tài nguyên của mạng

* Theo dõi sự tồn tại của các tài liệu chia sẻ trên mạng

 Nhược điểm: Nguy cơ quá tải với máy chủ tìm kiếm

Trang 19

IV CÀI ĐẶT CHƯƠNG TRÌNH

1 Mô tả về thư viện mã nguồn mở Lucene

a Khái quát về Lucene

Hình 5: Nhiệm vụ, chức năng của thư viện Lucene [8].

Trang 20

 Nhiệm vụ của Lucene:

* Tạo chỉ mục cho các tài liệu để xây dựng nên hệ

thống chỉ mục

* Tiếp nhận các xâu truy vấn của người dùng, thực hiện

tìm kiếm dựa trên hệ thống chỉ mục đã có và trả về

Trang 21

c Xây dựng và khai thác chỉ mục trong Lucene

a Khối chức năng cơ bản

 Bộ phận triển khai phía máy chủ tìm kiếm bao

Trang 22

b Khối giao diện người dùng

 Cửa sổ giao diện chính của chương trình (Lớp

MainWindow)

Hình 6: Cửa sổ giao diện chính của chương trình 21

Trang 23

Hình 7: Hộp thoại chọn tài liệu chia sẻ

Trang 24

Cửa sổ tìm kiếm (Lớp SearchWindow)

Hình 8: Cửa sổ giao diện tìm kiếm

23

Trang 25

b Khối giao tiếp ngang hàng

Trang 26

V KẾT LUẬN VÀ CÁC HƯỚNG PHÁT TRIỂN

Kết luận

 Trình bày tổng quan về mạng chia sẻ file ngang hàng

Một số phương pháp, kỹ thuật tạo chỉ mục và tìm kiếm dựa trên chỉ mục cũng đã được giới thiệu nhằm mục tiêu

áp dụng chúng để xây dựng một ứng dụng chia sẻ file

ngang hàng có khả năng tìm kiếm theo nội dung

 Giải pháp để xây dựng một ứng dụng như vậy đã được đề xuất dựa trên cơ chế cộng tác trong việc quản lý, cập nhật

hệ thống chỉ mục giữa máy chủ tìm kiếm và các điểm

nút

Trang 27

Các hướng phát triển:

 Đưa vào các kiến thức trong lĩnh vực xử lý ngôn ngữ tự nhiên và sử dụng các phương pháp xếp hạng kết quả tìm kiếm tiên tiến nhất nhằm làm tăng chất lượng tìm kiếm, bám sát hơn nữa yêu cầu của người dùng

 Tiến hành cài đặt bổ sung một số thư viện để hỗ trợ cho chương trình thử nghiệm ban đầu có thể phân tích thêm nhiều định dạng văn bản (doc, pdf, …), từ đó mở rộng

khả năng tìm kiếm trên nhiều loại văn bản khác nhau

 Cải tiến theo hướng tổ chức trong mạng không chỉ có

một mà nhiều máy chủ tìm kiếm được kết nối với nhau

và trao đổi thông tin chỉ mục cũng như hỗ trợ nhau trong việc đáp ứng các truy vấn Giúp tăng khả năng mở rộng

Trang 28

TÀI LIỆU THAM KHẢO

[1] Napster Home Page http://www.napster.com/

[2] Gnutella Development Home Page http://gnutella.wego.com/

[3] Freenet Home Page http://freenet.sourceforge.com/

[4] ICQ Home Page http://www.icq.com/

[5] SETI@ Home Page http://setiathome.ssl.berkely.edu/

[6] Lucene Home Page http://lucene.apache.org/

[7] Beverly Yang and Hector Garcia-Molina, “Comparing Hybrid Peer-to-

Peer Systems” Stanford University, USA

[8] Erik Hatcher and Otis Gospodnetic, “Lucene in Action”, Manning

Publications Co, 2005

[9] F.Cuenca-Acuna and T.Nguyen, “Text-based content search and

retrieval in ad hoc p2p communities”, Technical Report DCS-TR-483,

Rutgers University, 2002

27

Trang 29

[10] J Heaps Information Retrieval – Computational and Theoretical

Aspects Academic Press, 1978

[11] Juan Ramos, “Using TF-IDF to Determine Word Relevance in Document

Queries ”, Department of Computer Science – Rutgers University, 2003

[12] Kian Pokorny, “Peer to Peer Networking and Filesharing”, CSI 490 Senior

Semina, 2004

[13] Ramesh Subramanian and Brian D Goodman, “Peer to Peer Computing: The

Evolution of a Disruptive Technology”, Idea Group, 2005

[14] R.A Baeza-Yates and B.A Ribeiro-Neto, “Modern Information

Retrieval.” ACM Press Series / Addision Wesley, New York, 1999

[15] Songmei Han, Bijit Hore, Ilya Issenin, Sean McCarthy and Shannon Tauro,

“HollyShare: Peer-to-Peer File Sharing Application”, Final Report,

2001

[16] Stephanos Androutsellis-Theotokis and Diomidis Spinellis, A Survey of

Peer-to-Peer Content Distribution Technologies, ACM Computing

Surveys, December 2004

[17] V.Kalogeraki, D.Gunopulos and D Zeinalipour-Yazti, “A local search

mechanism for peer-to-peer network”, In Proc Of the 11th International

Conference on Information Knowledge Managament, 2002

Trang 30

Em xin chân thành cảm ơn!

29

Ngày đăng: 27/06/2014, 09:28

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Gnutella Development Home Page. http://gnutella.wego.com/ Sách, tạp chí
Tiêu đề: Gnutella Development Home Page
[11] Juan Ramos, “Using TF-IDF to Determine Word Relevance in Document Queries ”, Department of Computer Science – Rutgers University, 2003 Sách, tạp chí
Tiêu đề: Using TF-IDF to Determine Word Relevance in Document "Queries
[12] Kian Pokorny, “Peer to Peer Networking and Filesharing”, CSI 490 Senior Semina, 2004 Sách, tạp chí
Tiêu đề: Peer to Peer Networking and Filesharing
[13] Ramesh Subramanian and Brian D. Goodman, “Peer to Peer Computing: The Evolution of a Disruptive Technology”, Idea Group, 2005 Sách, tạp chí
Tiêu đề: Peer to Peer Computing: The Evolution of a Disruptive Technology
Tác giả: Ramesh Subramanian, Brian D. Goodman
Nhà XB: Idea Group
Năm: 2005
[14] R.A. Baeza-Yates and B.A. Ribeiro-Neto, “Modern Information Retrieval.” ACM Press Series / Addision Wesley, New York, 1999 Sách, tạp chí
Tiêu đề: “Modern Information "Retrieval.”
“HollyShare: Peer-to-Peer File Sharing Application”, Final Report, 2001 Sách, tạp chí
Tiêu đề: HollyShare: Peer-to-Peer File Sharing Application”
Năm: 2001
[16] Stephanos Androutsellis-Theotokis and Diomidis Spinellis, A Survey of Peer-to-Peer Content Distribution Technologies, ACM Computing Surveys, December 2004 Sách, tạp chí
Tiêu đề: ACM Computing "Surveys
[17] V.Kalogeraki, D.Gunopulos and D. Zeinalipour-Yazti, “A local search mechanism for peer-to-peer network”, In Proc. Of the 11th International Conference on Information Knowledge Managament, 2002.28 Sách, tạp chí
Tiêu đề: A local search "mechanism for peer-to-peer network
[10] J. Heaps. Information Retrieval – Computational and Theoretical Aspects. Academic Press, 1978 Khác
[15] Songmei Han, Bijit Hore, Ilya Issenin, Sean McCarthy and Shannon Tauro Khác

HÌNH ẢNH LIÊN QUAN

Hình 1: Tạo chỉ mục theo cấu trúc file đảo ngược. - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 1 Tạo chỉ mục theo cấu trúc file đảo ngược (Trang 6)
Hình 2: Tạo chỉ mục theo cấu trúc file đảo ngược - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 2 Tạo chỉ mục theo cấu trúc file đảo ngược (Trang 7)
Hình 3: Luồng thông điệp giữa các thành phần trong mạng - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 3 Luồng thông điệp giữa các thành phần trong mạng (Trang 14)
Hình 4: Hoạt động của cơ chế cập nhật chỉ mục - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 4 Hoạt động của cơ chế cập nhật chỉ mục (Trang 16)
Hình 5: Nhiệm vụ, chức năng của thư viện Lucene [8]. - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 5 Nhiệm vụ, chức năng của thư viện Lucene [8] (Trang 19)
Hình 6: Cửa sổ giao diện chính của chương trình    21 - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 6 Cửa sổ giao diện chính của chương trình 21 (Trang 22)
Hình 7: Hộp thoại chọn tài liệu chia sẻ. - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 7 Hộp thoại chọn tài liệu chia sẻ (Trang 23)
Hình 8: Cửa sổ giao diện tìm kiếm - báo cáo đồ án tốt nghiệp  xây dựng ứng dụng dựa trên mạng ngang hàng
Hình 8 Cửa sổ giao diện tìm kiếm (Trang 24)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w