Trong bài học này, chúng ta tìm hiểu về phép giảm (Reduction Operations) trong Spark, cách chúng được thực hiện trên cụm máy tính (cluster) và sự khác biệt với các phép biến đổi (Transformations) như map, flatMap, filter.


1. Tổng quan về Reduction Operations

Phép giảm là gì?

Khác biệt giữa Transformations & Reduction Operations

Loại phép toán Đặc điểm Ví dụ
Transformations Trả về một RDD mới map, flatMap, filter
Reduction Operations Kết hợp dữ liệu thành một giá trị duy nhất reduce, fold, aggregate

💡 Ví dụ nhanh:


val numbers = List(1, 2, 3, 4, 5)
val sum = numbers.reduce(_ + _)  // Kết quả: 15 (1+2+3+4+5)

📌 Điểm khác biệt lớn nhất:


2. Cách thức hoạt động của Reduce trong Spark

a) Tính tổng bằng Reduce


val numbersRDD = sc.parallelize(List(1, 2, 3, 4, 5))
val sum = numbersRDD.reduce(_ + _)
println(sum)  // Kết quả: 15

Giải thích: