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.
✅ Phép giảm là gì?
reducefoldaggregate✅ 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:
map, filter trả về một danh sách mới.reduce, fold trả về một giá trị duy nhất.
val numbersRDD = sc.parallelize(List(1, 2, 3, 4, 5))
val sum = numbersRDD.reduce(_ + _)
println(sum) // Kết quả: 15
✅ Giải thích: