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

Khám phá kiểu dữ liệu trong Spark

Bạn đã thấy (ở Chương 1) src_tbls() để liệt kê các DataFrame trên Spark mà sparklyr có thể nhìn thấy. Bạn cũng đã dùng glimpse() để khám phá các cột của một tibble ở phía R.

sparklyr có một hàm tên là sdf_schema() để khám phá các cột của một tibble ở phía R. Gọi hàm thì rất dễ; nhưng xử lý giá trị trả về thì hơi bất tiện.

sdf_schema(a_tibble)

Giá trị trả về là một list, trong đó mỗi phần tử lại là một list gồm hai phần tử, chứa tên và kiểu dữ liệu của từng cột. Bài tập cung cấp một phép biến đổi dữ liệu để bạn xem các kiểu dữ liệu dễ hơn.

Dưới đây là đối chiếu cách các kiểu dữ liệu trong R ánh xạ sang các kiểu dữ liệu trong Spark. Các kiểu khác hiện chưa được sparklyr hỗ trợ.

R type Spark type
logical BooleanType
numeric DoubleType
integer IntegerType
character StringType
list ArrayType

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

Kết nối Spark đã được tạo sẵn là spark_conn. Một tibble gắn với metadata của track được lưu trong Spark đã được định nghĩa trước là track_metadata_tbl.

  • Gọi sdf_schema() để lấy schema của metadata các track.
  • Chạy đoạn mã biến đổi trên schema để xem nó dưới dạng tibble dễ đọc hơn.

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.

# track_metadata_tbl has been pre-defined
track_metadata_tbl

# Get the schema
(schema <- ___(___))

# Transform the schema
schema %>%
  lapply(function(x) do.call(data_frame, x)) %>%
  bind_rows()
Chỉnh sửa và Chạy Mã