Thu thập dữ liệu

Một phần của tài liệu Thuật toán đánh chỉ mục ngược với mapreduce và ứng dụng trong việc đánh giá ý kiến của học sinh hòa bình trên mạng xã hội (Trang 70 - 73)

CHƯƠNG 3 THỬ NGHIỆM THUẬT TOÁN ĐÁNH GIÁ Ý KIẾN TRÊN MẠNG XÃ HỘI

3.4. Solr trên Hadoop và tìm kiếm thử nghiệm

3.4.3. Thu thập dữ liệu

Quá trình thu thập dữ liệu được thực hiện trên nền tảng MapReduce của Hadoop, tất cả các bước trong quá trình thu thập dữ liệu đều được thực hiện song song trên tất cả các máy của cụm máy Hadoop. Từng máy sẽ làm các nhiệm vụ thu thập dữ liệu với các URL được phân công sau đó kết quả của quá trình thu thập dữ liệu được trộn lại với nhau bằng hàm rút gọn kết quả (reducer). Các thư mục cuối cùng của quá trình thu thập được lưu lại trên hệ thống lưu trữ phân tán HDFS.

Trước hết, việc thu thập dữ liệu trên Facebook được thực hiện qua Facebook Graph API. Ta có thể truy cập vào Facebook Graph API qua đường link sau:

https://developers.facebook.com/tools/explorer Giao diện hiện lên như hình dưới:

Hình 0.9: Giao diện làm việc của Facebook Graph API

Đăng ký một App trên bộ công cụ phát triển Facebook, ta được cấp 1 Access Token (Là mã cho phép gửi đòi hỏi tới Server. Nếu bạn đang login vào một tài khoản facebook nào đó, giá trị này sẽ được mặc định hiển thị cho tài khoản đó.), sử dụng nó để có thể truy cập vào các trang Fanpage hoặc các trang cá nhân.

Hình 0.10: Access Token của một trình Facebook Graph API

Sau đó ta thực hiện việc lấy thông tin từ các trang Facebook cần dò tìm khảo sát. Với công cụ Facebook Graph API, các lựa chọn tìm kiếm được thể hiện rõ ràng trong hình dưới:

Hình 0.11: Thu thập dữ liệu từ trang mạng của trường THPT Hoàng Văn Thụ

Tất cả các dữ liệu sau khi được Crawler lấy từ Fabook Graph API sẽ được đưa về Hadoop dưới định dạng JSON.

Khởi động Hadoop và Solr:

$ cd $HADOOP_HOME

$ bin/start-all.sh

$ cd $SOLR_HOME/example

$ java –jar start.jar

Sauk hi hoàn tất việc đưa thư mục chứa URL cần thu thập dữ liệu lên HDFS ta

bắt đầu thực hiện công việc thu thập dữ liệu bằng các câu lệnh sau:

$ cd /usr/local/nutch/runtime/deploy

$ hadoop –jar apache-nutch-1.6.job

org.apache.nutch.crawl.Crawl thuthap1 –dir data –solr http://localhost:8983/solr -depth 1

Câu lệnh này sẽ thực hiện thu thập dữ liệu từ trang web và đưa kết quả đên Solr để tạo chỉ mục ngược cho dữ liệu. Sau câu lệnh này cụm máy hadoop bắt đầu thu thập dữ liệu từ địa chỉ có trong nội dung tệp tin seed.txt. Ta có thể theo dõi quá trình thu thập dữ liệu các, công việc đang được tiến hành bằng mapReduce bằng cách truy cập địa chỉ http://localhost:50030/jobtracker.jsp:

Hình 0.12:Giao diên theo dõi quá trình làm việc của MapReduce Để đọc thông tin trong Crawldb của Nutch ta thực hiện câu lệnh sau:

$ cd $NUTCH_HOME

$ bin/nutch readdb data/crawldb –stats

Quá trình thu thập dữ liệu của trang nhóm học sinh THPT 19-5 Hòa Bình ta có kết quả như sau:

Bảng 0.1: Kết quả thu thập dữ liệu ở 2 chế độ Chiều

sâu

Chế độ một máy đơn (Standalone)

Chế độ phân tán ảo (pseudo distributed)

Số URL đã được thu thập

1 137 giây 576 giây 1

2 748 giây 2016 giây 226

3 10264 giây Hơn 10 giờ 4513

Dựa vào bảng ta có thể thấy, với chiều sâu lớn hơn thì thời gian thu thập dữ liệu cũng tăng lên. Điều này là hoàn toàn dễ hiểu khi qua mỗi vòng lặp số URL mà Nutch phải thu thập cũng tăng lên ( từ 1 đến 4513). So sánh giữa 2 chế độ một máy đơn và chế độ phân tán ảo ta thấy có sự khác biệt rất rõ ràng. Chế độ phân tán ảo cho kết quả thời gian thu thập dữ liệu lớn hơn rất nhiều so với chế độ một máy đơn. Có thể giải thích điều này như sau: với một môi trường phân tán ảo thực tế tài nguyên của máy bị chi phối vào việc duy trì một môi trường ảo hóa do vậy tài nguyên RAM, tài nguyên chip xử lý không những không được tận dụng mà còn bị chi phối đi. Tuy nhiên việc thử nghiệm môi trường phân tán ảo cho ta kết quả về sự nhân bản của các khối dữ liệu là đúng, điều này chứng minh khả năng chịu lỗi và khôi phục dữ liệu khi có trục trặc của Hadoop.

Một phần của tài liệu Thuật toán đánh chỉ mục ngược với mapreduce và ứng dụng trong việc đánh giá ý kiến của học sinh hòa bình trên mạng xã hội (Trang 70 - 73)

Tải bản đầy đủ (PDF)

(77 trang)