Tải bản đầy đủ (.ppt) (18 trang)

Bài báo cáo Tìm TopN các từ được sử dụng nhiều nhất trong các file log

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 (365.9 KB, 18 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

BIG DATA
TOP-N CÁC TỪ ĐƯỢC SỬ DỤNG
NHIỀU NHẤT TRONG CÁC FILE LOG
Học viên thực hiện:
Lê Quang Nhường M2517011
Hứa Phước An
M2517007

Giáo viên hướng dẫn:
TS. Phan Thượng Cang


NỘI DUNG
1

Mô tả bài toán

2

Giải thuật tìm TOP-N

3
4

Demo chương trình
Kết quả & Hạn chế

5



Tài liệu tham khảo

6

Hướng dẫn thực hành

7

8
2


Mô tả bài toán
• Input: Các file log
• Output: Top-n các từ được sử dụng nhiều
nhất trong các file log


nhuong an nhuong
phuong ngan phuong
ngan

nhuong 2
an 1
phuong 2
ngan 2
nhuong[2,1]
an[1,3]
phuong[2,1]

ngan[2,1]

nhuong an an phuong
an ngan

nhuong 1
an 3
phuong 1
ngan 1

nhuong 2
an 1
phuong 2
ngan 2
nhuong 1
an 3
phuong 1
ngan 1

an 4
nhuong 3
phuong 3
ngan 3


Hàm Map
hàm map(k1:id of row in the file,
v1: a line of text in the file){
đọc và chuẩn hóa dữ liệu;
tách ra từng từ;

if (từ đã xuất hiện) {
cộng giá trị cho nó thêm 1;
lưu lại giá trị trong hashmap;
}
else{ gán giá trị cho nó bằng 1;
lưu lại giá trị trong hashmap;}
}


Hàm Cleanup-Map

Hàm cleanup(data hashmap from function Map){
for(1->end hashmap){

emit(k2: word[i],v2: value);
}

}


Hàm Reduce
Hàm reduce( k2:the word,
v2:list value of word k2 in hashmap,
TopN: limit value display) {
tổng hợp giá trị theo từng khóa;
lưu giá trị vào 1 hashmap;//kiểu hashmap trong java
lấy giá trị n;// số kết quả cần lấy đầu tiên
if (hashmap.size() >= n+1 ){
sắp xếp hashmap;
giữ lại n phần tử đầu tiên của hashmap;

}
}


Hàm Cleanup-Reduce & Hàm Sort
Hàm cleanup(data hashmap from function Reduce){
lấy giá trị n;// số kết quả cần lấy đầu tiên
for(1->n in hashmap){
emit(k3:Word , v3:total value of word);
}
}
hàm sort(data hashmap){
sắp xếp hashmap;
trả về 1 hashmap có thứ tự;
}


Code


Code


Code


Code


Code



Demo chương trình
Dữ liệu demo:
+ Số lượng: 2000 files
+ Số từ : ~1,200,000
+ Định dạng : Plain text (txt)
Thiết bị:
+ 1 máy giả lập (Ubuntu 16) đã cài đặt và cấu hình
Hadoop


Kết quả đạt được

- Bước đầu tiếp cận hướng phân tích và thiết kế chường trình
theo mô hình MapReduce.
- Đã cài đặt được chương trình tìm Top N từ trong các file
log theo mô hình MapReduce trên Hadoop.


Hạn chế

- Thời gian tìm hiểu và code chương trình khá dài
- Chỉ áp dụng trên máy tính đơn , hạn chế rất nhiều về
phần cứng và dữ liệu chạy thử
- Chưa có điều kiện chạy thử trên mô hình mạng phân tán
thật.


Tài liệu tham khảo


- />- />- a/p/java-collections-sap-xep-collectionsnaQZRgvdlvx


Xin cảm ơn!



×