建設(shè)部投訴網(wǎng)站提高搜索引擎排名
1. RDD緩存機制是什么?
把RDD的數(shù)據(jù)緩存起來,其他job可以從緩存中獲取RDD數(shù)據(jù)而無需重復(fù)加工。
2. 如何對RDD進行緩存?
有兩種方式,分別調(diào)用RDD的兩個方法:persist 或 cache。
注意:調(diào)用這兩個方法后并不會立刻緩存,而是有action算子觸發(fā)時才會緩存。
3. persist 和 cache有什么區(qū)別?
二者的區(qū)別在于緩存級別上:
persist有多種緩存方式,如緩存到內(nèi)存,緩存到磁盤等。
cache只緩存到內(nèi)存,且實際是調(diào)用了persist方法。
兩種方法的源碼及緩存RDD的緩存級別如下:
4. 何時需要緩存RDD?
有兩種情況:
- RDD被后續(xù)多個job用到;
- RDD的計算過程復(fù)雜。
5. 如何清除RDD緩存?
有兩種方式:
- 應(yīng)用程序結(jié)束后,緩存自動清除;
- 調(diào)用unpersist方法,源碼如下:
–The End–