火花調優

免費試著磚

引發性能調優是什麼?

火花性能調優的過程是指記錄內存調整設置,核心,和實例使用的係統。這個過程保證火花有完美的表現,同時也防止阻塞引發的資源。

火花性能調優

什麼是數據序列化?

為了,減少內存使用您可能需要存儲序列化形式的火花抽樣。數據序列化也決定了一個良好的網絡性能。你將能夠獲得好的結果引發的性能:

  • 終止這些工作運行長。
  • 確保工作運行在一個精確的執行引擎。
  • 在一個有效地使用所有資源。
  • 提高係統的性能

火花支持兩種序列化庫,如下:

  • Java序列化
  • Kryo序列化

內存調優是什麼?

雖然優化內存使用,突出的有三個方麵:

  • 整個數據集必須裝入內存,考慮你的對象使用的內存是必須的。
  • 通過增加高營業額的對象,垃圾收集的開銷成為必要。
  • 你必須考慮成本的訪問這些對象。

數據結構調優是什麼?

減少內存消耗的一個選擇是遠離java特性可能開銷。這裏有幾個方法:

  • 如果小於32 GB的RAM大小,JVM國旗應該設置為- xx: + UseCompressedOops。這個操作將構建一個四字節的指針,而不是8。
  • 嵌套結構可以躲避使用幾個小對象指針。
  • 而不是使用字符串鍵可以使用數字id和枚舉對象

垃圾收集調優是什麼?

為了避免相關的大型“生產”之前存儲的抽樣程序,java將解散舊對象為了創造新的空間。然而,通過使用更少的對象數據結構特性大大降低成本。其中一個例子就是就業int數組而不是一個鏈表。或者,您可以使用對象的序列化形式,所以你會為每個抽樣分區隻有一個單一的對象。

內存管理是什麼?

一個高效的內存使用良好的性能是至關重要的。火花使用內存主要用於存儲和執行。存儲內存用於緩存數據,稍後會被重用。另一方麵,執行內存用於計算打亂排序,連接,和聚合。內存爭用Apache火花帶來了三個挑戰:

  • 如何執行和存儲之間的仲裁的記憶?
  • 如何記憶在仲裁任務同時運行?
  • 如何跨運營商仲裁內存運行在相同的任務?

而不是提前避免靜態保留的內存,你可以處理內存爭用強迫成員出現泄漏。

額外的資源

回到術語表
Baidu
map