Spark SQL can cache tables using an in-memory columnar format by calling
cache_table(). Spark SQL will scan only required columns and will
automatically tune compression to minimize memory usage and GC pressure.
You can call uncache_table() to remove the table from memory. Similarly you
can call clear_cache() to remove all cached tables from the in-memory
cache. Finally, use is_cached() to test whether or not a table is cached.
Value
cache_table(): If successful,TRUE, otherwiseFALSE.
clear_cache():NULL, invisibly.
is_cached(): Alogical(1)vector indicatingTRUEif the table is cached andFALSEotherwise.
uncache_table():NULL, invisibly.
See also
create_table(), get_table(), list_tables(), refresh_table(),
table_exists(), uncache_table()
Examples
if (FALSE) {
sc <- sparklyr::spark_connect(master = "local")
mtcars_spark <- sparklyr::copy_to(dest = sc, df = mtcars)
# By default the table is not cached
is_cached(sc = sc, table = "mtcars")
# We can manually cache the table
cache_table(sc = sc, table = "mtcars")
# And now the table is cached
is_cached(sc = sc, table = "mtcars")
# We can uncache the table
uncache_table(sc = sc, table = "mtcars")
is_cached(sc = sc, table = "mtcars")
}