시작하기무료로 시작하기

Spark 데이터 타입 살펴보기

1장에서 이미 src_tbls()를 사용해 sparklyr가 확인할 수 있는 Spark 상의 DataFrame 목록을 살펴봤고, R 쪽 tibble의 열을 탐색하는 데 glimpse()도 사용해 보셨습니다.

sparklyr에는 R 쪽 tibble의 열 정보를 탐색하는 함수 sdf_schema()가 있습니다. 호출은 간단하지만, 반환값을 다루는 것은 다소 번거로울 수 있습니다.

sdf_schema(a_tibble)

반환값은 리스트이며, 각 요소는 두 개의 요소(각 열의 이름과 데이터 타입)를 담은 리스트입니다. 이 연습 문제에서는 데이터 타입을 더 쉽게 확인할 수 있도록 변환하는 코드를 제공합니다.

아래는 R 데이터 타입이 Spark 데이터 타입으로 매핑되는 방식의 비교입니다. 그 외 데이터 타입은 현재 sparklyr에서 지원하지 않습니다.

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

이 연습은 강의의 일부입니다

R에서 sparklyr로 시작하는 Spark

강의 보기

연습 안내

spark_conn이라는 Spark 연결이 준비되어 있습니다. Spark에 저장된 트랙 메타데이터에 연결된 tibble은 track_metadata_tbl로 미리 정의되어 있습니다.

  • 트랙 메타데이터의 스키마를 가져오기 위해 sdf_schema()를 호출하세요.
  • schema에 제공된 변환 코드를 실행해, 더 읽기 쉬운 tibble 형식으로 확인하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# 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()
코드 편집 및 실행