SparklyR 从 Spark 上下文中删除 Table
SparklyR removing a Table from Spark Context
想要从 Spark 上下文 ('sc') 中删除单个数据 table。我知道单个缓存的 table 可以取消缓存,但这与从 sc 中删除对象不同——据我所知。
library(sparklyr)
library(dplyr)
library(titanic)
library(Lahman)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting")
titanic_tbl <- copy_to(sc, titanic_train, "titanic", overwrite = TRUE)
src_tbls(sc)
# [1] "batting" "titanic"
tbl_cache(sc, "batting") # Speeds up computations -- loaded into memory
src_tbls(sc)
# [1] "batting" "titanic"
tbl_uncache(sc, "batting")
src_tbls(sc)
# [1] "batting" "titanic"
要断开整个 sc,我会使用 spark_disconnect(sc)
,但在本例中,它会破坏存储在 sc 中的 "titanic" 和 "batting" table。
相反,我想用 spark_disconnect(sc, tableToRemove = "batting")
之类的内容删除例如 "batting",但这似乎不可能。
dplyr::db_drop_table(sc, "batting")
我试过这个功能,它似乎有效。
级别稍低的替代方案是
tbl_name <- "batting"
DBI::dbGetQuery(sc, paste("DROP TABLE", tbl_name))
想要从 Spark 上下文 ('sc') 中删除单个数据 table。我知道单个缓存的 table 可以取消缓存,但这与从 sc 中删除对象不同——据我所知。
library(sparklyr)
library(dplyr)
library(titanic)
library(Lahman)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting")
titanic_tbl <- copy_to(sc, titanic_train, "titanic", overwrite = TRUE)
src_tbls(sc)
# [1] "batting" "titanic"
tbl_cache(sc, "batting") # Speeds up computations -- loaded into memory
src_tbls(sc)
# [1] "batting" "titanic"
tbl_uncache(sc, "batting")
src_tbls(sc)
# [1] "batting" "titanic"
要断开整个 sc,我会使用 spark_disconnect(sc)
,但在本例中,它会破坏存储在 sc 中的 "titanic" 和 "batting" table。
相反,我想用 spark_disconnect(sc, tableToRemove = "batting")
之类的内容删除例如 "batting",但这似乎不可能。
dplyr::db_drop_table(sc, "batting")
我试过这个功能,它似乎有效。
级别稍低的替代方案是
tbl_name <- "batting"
DBI::dbGetQuery(sc, paste("DROP TABLE", tbl_name))