Я работаю в среде Spark и пытаюсь манипулировать некоторыми данными, которые появляются как tbl_spark. Проблема в том, что я не могу применить к нему какие-либо обычные функции манипулирования данными.
Я использовал df <- spark_read_table(sc,"tb_krill_sensordatatable_phoenix")
для его импорта, и это кажется успешным, однако, когда я пытаюсь повернуть его с помощью tidyr::spread()
, он говорит, что метод не применим для tbl_spark.
Сейчас я пытаюсь сделать: df_tbl <- as_tibble(df)
. Однако он работает уже несколько часов, и ничего не случилось.
Я не знаю, должен ли я использовать для импорта другую функцию, кроме spark_read_table (), или мне нужно преобразовать в другой обычный формат данных в R.
df_phoenix <- spark_read_table(sc,"tb_krill_sensordatatable_phoenix")
class(df_phoenix)
# [1] "tbl_spark" "tbl_sql" "tbl_lazy" "tbl"
base_spread <- df_phoenix %>%
spread(key = sensorname, value = sensorvalue)
#Error in UseMethod("spread_") :
# no applicable method for 'spread_' applied to an object of class "c('tbl_spark', 'tbl_sql', 'tbl_lazy', 'tbl')"
aux <- as_tibble(df_phoenix)
#this one takes forever and nothing happens