Giải nén các tính năng với PySpark

Trong chương này, chúng ta sẽ tìm hiểu về ứng dụng của các tính năng trích xuất với PySpark trong Khoa học Dữ liệu Agile.

Tổng quan về Spark

Apache Spark có thể được định nghĩa là một khung xử lý thời gian thực nhanh. Nó thực hiện tính toán để phân tích dữ liệu trong thời gian thực. Apache Spark được giới thiệu là hệ thống xử lý luồng trong thời gian thực và cũng có thể xử lý hàng loạt. Apache Spark hỗ trợ các truy vấn tương tác và các thuật toán lặp lại.

Spark được viết bằng “ngôn ngữ lập trình Scala”.

PySpark có thể coi là sự kết hợp giữa Python với Spark. PySpark cung cấp trình bao PySpark, liên kết API Python với lõi Spark và khởi tạo ngữ cảnh Spark. Hầu hết các nhà khoa học dữ liệu sử dụng PySpark cho các tính năng theo dõi như đã thảo luận trong chương trước.

Trong ví dụ này, chúng ta sẽ tập trung vào các phép biến đổi để xây dựng một tập dữ liệu được gọi là số đếm và lưu nó vào một tệp cụ thể.

text_file = sc.textFile("hdfs://...")
counts = text_file.flatMap(lambda line: line.split(" ")) \
   .map(lambda word: (word, 1)) \
   .reduceByKey(lambda a, b: a + b)
counts.saveAsTextFile("hdfs://...")

Sử dụng PySpark, người dùng có thể làm việc với RDD trong ngôn ngữ lập trình python. Thư viện có sẵn, bao gồm các kiến ​​thức cơ bản về các thành phần và tài liệu theo Hướng dữ liệu, giúp thực hiện việc này.