我正在制作一个火花计划,我们将从数据库中读取1亿条记录。
我们正在从JDBC读取数据并创建DF。我想缓存DF,因为它将用于多次迭代和计算。
我的问题是如果我使用DF cachetable(),数据将仅保存在内存中。由于数据库读取很昂贵,我不想在发生故障时再次阅读
在RDD持久化功能中,我们可以选择将RDD保存到磁盘吗?我们可以在Dataframe cachetable中做到这一点吗?我也不想失去缓存的优化
答案 0 :(得分:0)
它将使用MEMORY_AND_DISK
:
def cache():Dataset.this.type
使用默认存储级别(MEMORY_AND_DISK)保留此数据集。