Map Reduce

Chia sẻ: Mvnc Bgfhf | Ngày: | Loại File: PDF | Số trang:19

0
27
lượt xem
6
download

Map Reduce

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Map Reduce: Là một mô hình lập trình được đề xuất trong các ngôn ngữ lập trình hàm như Lisp, ML. Một trong những tính năng nổi bật của các ngôn ngữ lập trình hàm là các higher-order function. Higher-order function là dạng function mà chấp nhận một function khác như là tham số của nó.

Chủ đề:
Lưu

Nội dung Text: Map Reduce

  1. MAP REDUCE GVHD: TS. Hồ Bảo Quốc Nhóm học viên thực hiện: • Dương Hữu Thành – 1212035 • Phạm Ngọc Vân Anh – 1212001 • Nguyễn Thanh Tòng – 1212039
  2. Nội dung • Giới thiệu Map Reduce • Ví dụ cụ thể • Kiến trúc và cách thức hoạt động • Khả năng chịu lỗi (Fault Tolerance)
  3. Giới thiệu về Map Reduce
  4. Map Reduce • Là một mô hình lập trình được đề xuất trong các ngôn ngữ lập trình hàm như Lisp, ML. • Một trong những tính năng nổi bật của các ngôn ngữ lập trình hàm là các higher-order function. • Higher-order function là dạng function mà chấp nhận một function khác như là tham số của nó.
  5. Map Reduce (cont.) • 2 higher-oder function được dùng nhiều trong Lisp là map and fold. • Map và fold thường được dùng kết hợp với nhau
  6. Map Reduce (cont.) map và fold trong Lisp • (map square ‘(1 2 3 4)) ▫ (1 4 9 16) • (reduce + ‘(1 4 9 16)) ▫ 30
  7. Map Reduce (cont.) Map và reduce do Goole đề xuất • map(key, val) ▫ Tạo ra new-key / new-val pairs • reduce(key, vals) ▫ Tạo ra kết quả cuối cùng ▫ Với key/vals là giá trị tạo ra bởi map function.
  8. Map Reduce (cont.)
  9. VÍ DỤ CỤ THỂ
  10. Đếm số lần xuất hiện của mỗi từ trong tập các documents
  11. Đếm số lần xuất hiện của mỗi từ trong tập các documents (cont.)
  12. KIẾN TRÚC VÀ CÁCH THỨC HOẠT ĐỘNG
  13. Kết hợp giữ Map/Reduce và GFS • Cách worker lấy dữ liệu để xử lý? ▫ Dữ liệu cần truy xuất lớn. ▫ Không đủ memory để load tất cả dữ liệu • Giải pháp: ▫ Don’t move data to workers… Move workers to the data! ▫ Worker sẽ được khởi động trên các chunk server đã có sẵn dữ liệu.
  14. FAULT TOLERANCE
  15. Worker Failure • Master định kỳ ping worker để phát hiện failure. • Nếu một task nào đó thất bại, master chọn một worker khác để thực hiện lại task.
  16. Master Failure • Tất cả các map/reduce task sẽ thất bại • Giải pháp: ▫ Đặt các checkpoint để có thể khởi động lại tại các checkpoint đó.
  17. Tài liệu tham khảo • Data-Intensive Text Processing with MapReduce - Jimmy Lin The iSchool University of Maryland. • MapReduce: Simplified Data Processing on Large Clusters - Jeffrey Dean and Sanjay Ghemawat Google Inc
  18. Q&A
Đồng bộ tài khoản