ven*_*kat 20 hadoop hive apache-spark shark-sql
当我运行我的鲨鱼查询时,内存被囤积在主内存中这是我的最高命令结果.
Mem:74237344k总计,70080492k使用,4156852k免费,399544k缓冲交换:总计4194288k,使用480k,免费4193808k,缓存65965904k
即使我杀死/停止鲨鱼,火花,hadoop进程,这也不会改变.现在,清除缓存的唯一方法是重启机器.
以前有人遇到过这个问题吗?是火花/鲨鱼的一些配置问题还是已知问题?
Hen*_*cio 23
要删除所有缓存数据,您可以执行以下操作:
sqlContext.clearCache()
资料来源:https://spark.apache.org/docs/2.0.1/api/java/org/apache/spark/sql/SQLContext.html
这很奇怪。问的问题与答案无关。发布的缓存OP归操作系统所有,与spark无关。这是操作系统的优化,我们不应该担心那个特定的缓存。
Spark 缓存通常在内存中,但这将在 RSS 部分,而不是操作系统的缓存部分。
我遵循了这个,对我来说效果很好::
for ((k,v) <- sc.getPersistentRDDs) {
v.unpersist()
}
Run Code Online (Sandbox Code Playgroud)
sc.getPersistentRDDs 是一个 Map,用于存储缓存数据的详细信息。
Scala> sc.getPersistentRDDs
res48: scala.collection.Map[Int,org.apache.spark.rdd.RDD[_]] = Map()
| 归档时间: |
|
| 查看次数: |
31210 次 |
| 最近记录: |