赞
踩
//缓存全表
sqlContext.sql("CACHE TABLE activity")
//缓存过滤结果
sqlContext.sql("CACHE TABLE activity_cached as select * from activity where ...")
//取消缓存
sqlContext.sql("UNCACHE TABLE activity")
CACHE TABLE是即时生效(eager)的,如果你想等到一个action操作再缓存数据可以使用CACHE LAZY TABLE,这样操作会直到一个action操作才被触发,例如count(*)
df.cache
df.unpersist
3.SQLContext的api
SparkSession.sqlContext.cacheTable("XXX")
SparkSession.sqlContext.unCacheTable("XXX")
实际调用的是sparkSession.catalog.(un)cacheTable
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。