Bắt đầu ngayBắt đầu miễn phí

Sao chép dữ liệu vào Spark

Trước khi có thể làm việc thực sự với Spark, bạn cần đưa dữ liệu của mình vào đó. sparklyr có một số hàm như spark_read_csv() để đọc tệp CSV vào Spark. Tổng quát hơn, việc có thể sao chép dữ liệu từ R sang Spark là rất hữu ích. Điều này được thực hiện với hàm copy_to() của dplyr. Lưu ý: sao chép dữ liệu vốn dĩ là một quá trình chậm. Thực tế, nhiều chiến lược tối ưu hiệu năng khi làm việc với các bộ dữ liệu lớn xoay quanh việc tìm cách tránh phải sao chép dữ liệu từ nơi này sang nơi khác.

copy_to() nhận hai đối số: một kết nối Spark (dest), và một data frame (df) sẽ được sao chép sang Spark.

Khi đã sao chép dữ liệu vào Spark, bạn có thể muốn kiểm tra lại xem mọi thứ có hoạt động không. Bạn có thể xem danh sách tất cả các data frame được lưu trong Spark bằng src_tbls(), hàm này chỉ cần một đối số là kết nối Spark (x).

Xuyên suốt khóa học, bạn sẽ khám phá metadata của các bản nhạc từ Million Song Dataset. Mặc dù Spark có thể mở rộng tốt vượt xa một triệu hàng dữ liệu, để mọi thứ đơn giản và phản hồi nhanh, bạn sẽ dùng một tập con gồm một nghìn bản nhạc. Làm rõ thuật ngữ: một track tương ứng với một hàng trong bộ dữ liệu. Với bộ dữ liệu một nghìn track của bạn, điều này tương đương với một bài hát (dù bộ dữ liệu một triệu hàng đầy đủ có một số bài hát trùng lặp).

Bài tập này là một phần của khóa học

Nhập môn Spark với sparklyr trong R

Xem khóa học

Hướng dẫn bài tập

track_metadata, chứa tên bài hát, tên nghệ sĩ và các metadata khác cho 1.000 track, đã được định nghĩa sẵn trong không gian làm việc của bạn.

  • Dùng str() để khám phá bộ dữ liệu track_metadata.
  • Kết nối tới cụm Spark cục bộ của bạn, lưu kết nối vào spark_conn.
  • Sao chép track_metadata lên cụm Spark bằng copy_to().
  • Xem những data frame nào hiện có trên Spark bằng src_tbls().
  • Ngắt kết nối khỏi Spark.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Load dplyr
___

# Explore track_metadata structure
___

# Connect to your Spark cluster
spark_conn <- spark_connect("___")

# Copy track_metadata to Spark
track_metadata_tbl <- ___(___, ___, overwrite = TRUE)

# List the data frames available in Spark
___(___)

# Disconnect from Spark
spark_disconnect(___)
Chỉnh sửa và Chạy Mã