使用json格式记录读取序列文件。
我面临的问题是,当spark到达第2步时,它似乎会触发操作,从而读取输入数据并创建数据帧。
但是当我从缓存触发动作实现DF到达第3步时,它再次读取输入数据,因此浪费时间读取输入数据两次。
我不想缓存输入数据。
如何避免两次读取输入数据?
答案 0 :(得分:0)
另一种方法是在sqlcontext.read.json()
之后保存读取的数据帧并读回,然后为后续进程执行缓存。
您可以执行dataframe checkpointing
或将其保存到HDFS以实现此目的。
这将消除输入序列文件的多次读取