Explorando tipos de dados do Spark
Você já viu (lá no Capítulo 1) src_tbls() para listar os DataFrames no Spark que o sparklyr consegue enxergar. Você também conheceu glimpse() para explorar as colunas de um tibble no R.
O sparklyr tem uma função chamada sdf_schema() para explorar as colunas de um tibble no R. É fácil de chamar; lidar com o valor de retorno é que pode ser um pouco trabalhoso.
sdf_schema(a_tibble)
O valor de retorno é uma lista, e cada elemento é uma lista com dois elementos, contendo o nome e o tipo de dados de cada coluna. O exercício mostra uma transformação para visualizar os tipos de dados de forma mais amigável.
Aqui está uma comparação de como os tipos de dados do R se mapeiam para os tipos de dados do Spark. Outros tipos de dados não são atualmente compatíveis com o sparklyr.
| R type | Spark type |
|---|---|
| logical | BooleanType |
| numeric | DoubleType |
| integer | IntegerType |
| character | StringType |
| list | ArrayType |
Este exercício faz parte do curso
Introdução ao Spark com sparklyr em R
Instruções do exercício
Uma conexão com o Spark foi criada para você como spark_conn. Um tibble ligado aos metadados de faixas armazenados no Spark foi pré-definido como track_metadata_tbl.
- Chame
sdf_schema()para obter o schema dos metadados das faixas. - Execute o código de transformação em
schemapara vê-lo em um formato de tibble mais legível.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()