我一定对http://localhost:4040/storage/上显示的spark存储选项卡有些误解。 我的笔记本电脑分配了大约12G的火花,总共只有32G,但是“存储”选项卡显示内存中已缓存了400G以上的数据,并且没有溢出到磁盘上。我正在使用
缓存表sqlContext.sparkSession.catalog.cacheTable(key, StorageLevel.MEMORY_AND_DISK_SER)
这是错误还是误解?我认为这一定是一个错误,因为当我单击最大的缓存表(150G)并查看详细信息时,它说堆内存使用量为155.1GB(剩余-512861675879.0 B)。
事情在星期五使用时按我的预期工作。我可以看到它在内存中的存储量不超过2.1G,其余的则在需要时存储在磁盘上。但是当我在星期一早上进行摄影时,存储标签如下图所示。我还在下面包括我的环境信息。我正在使用Spark 2.3.0。