1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Nền tảng Big Data với PySpark

Connected

Bài tập

In ra tần suất xuất hiện của từ

Sau khi gộp các giá trị (số lần xuất hiện) có cùng khóa (từ), trong bài này bạn sẽ trả về 10 tần suất từ đầu tiên. Bạn có thể lấy toàn bộ phần tử cùng lúc bằng collect(), nhưng đó là thực hành không tốt và không được khuyến nghị. RDD có thể rất lớn: bạn có thể hết bộ nhớ và làm treo máy tính.

Nếu muốn lấy top 10 từ thì sao? Để làm được, trước tiên bạn cần hoán đổi khóa (từ) và giá trị (số lần) để khóa là số đếm và giá trị là từ. Hiện tại, result_RDD có khóa ở phần tử 0 và giá trị ở phần tử 1. Sau khi bạn hoán đổi khóa và giá trị trong tuple, bạn sẽ sắp xếp paired RDD dựa trên khóa (số đếm). Cách này giúp sắp xếp RDD theo khóa dễ hơn thay vì dùng thao tác sortByKey trong PySpark. Cuối cùng, bạn sẽ trả về 10 từ đứng đầu theo tần suất từ RDD đã sắp xếp.

Bạn đã có sẵn SparkContext sc và resultRDD trong không gian làm việc.

Hướng dẫn

100 XP
  • In 10 từ đầu tiên và tần suất của chúng từ RDD resultRDD.
  • Hoán đổi khóa và giá trị trong resultRDD.
  • Sắp xếp các khóa theo thứ tự giảm dần.
  • In 10 từ xuất hiện nhiều nhất và tần suất của chúng từ RDD đã sắp xếp.