Spark的資料儲存(十九)

2021-09-22 09:01:51 字數 448 閱讀 6501

spark本身是基於記憶體計算的架構,資料的儲存也主要分為記憶體和磁碟兩個路徑。spark本身則根據儲存位置、是否可序列化和副本數目這幾個要素將資料儲存分為多種儲存級別。此外還可選擇使用tachyon來管理記憶體資料。

為了適應迭代計算,spark將經常被重要的資料快取到記憶體中以提公升資料讀取速度,當記憶體容量有限時,則將資料存入磁碟中或根據最近最少使用頁面置換演算法將記憶體中使用頻率較低的檔案空間收回,從而讓新的資料進來。

tachyon的出現主要是為了解決3個問題而設計。一是多應用資料共享問題,二是jvm快取資料丟失問題,三是gc開銷問題。tachyon將過去的spark中的計算和記憶體管理兩個部分分離,專門使用tachyon在jvm堆外管理spark計算所需要的資料,極大地減輕了spark管理上的負擔和jvm記憶體負擔。這種設計思路能很好地解決以上3個問題並提公升了程式執行的穩定性和速度。

Spark的資料儲存(十九)

spark本身是基於記憶體計算的架構,資料的儲存也主要分為記憶體和磁碟兩個路徑。spark本身則根據儲存位置 是否可序列化和副本數目這幾個要素將資料儲存分為多種儲存級別。此外還可選擇使用tachyon來管理記憶體資料。為了適應迭代計算,spark將經常被重要的資料快取到記憶體中以提公升資料讀取速度,...

Spark七十九 Spark RDD API一

package spark.examples.rddapi import org.apache.spark.測試rdd的aggregate方法 object aggregatetest package spark.examples.rddapi import org.apache.spark.rdd...

Spark的儲存管理

功能上看spark的儲存管理模型可以分為兩部分 rdd快取和shuffle資料的持久化.rdd快取,指的是rdd呼叫cache persist 或checkpoint,呼叫這個三個方法會將rdd對應的資料塊結果儲存到記憶體或者磁碟中,可以將寬依賴的結果儲存下來.shuffle資料持久化 說明 def...