国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

?spark sql性能調優

IT那活兒 / 1338人閱讀
?spark sql性能調優

點擊上方“IT那活兒”,關注后了解更多內容,不管IT什么活兒,干就完了!!!


引   言


Spark SQL雖然有內置優化器Catalyst,但是我們自己也可以做一些其他優化,本文主要列出出一些常用的優化項。


01


緩存數據


我們都知道一些計算中間的數據集可以進行緩存,緩存到內存中明顯要比磁盤中速度要快,Spark SQL可以通過調用spark.catalog.cacheTable(“tableName”)或者df.cache()來使用內存緩存表,然后spark會只掃描需要的列并自動壓縮來減少內存和GC使用,可以調用spark.catalog.uncacheTable(“tableName”)從內存中刪除該表。

1.1 緩存中的配置如下:

  • spark.sql.inMemoryColumnarStorage.compressedd(默認值為true),設置為true時spark sql會默認的為數據選擇壓縮方式。

  • Spark.sql.inMemoryColumnarStorage.batchSize(默認值為10000),意思是可以為列緩存設置最大批大小,設置的大可以提高內存利用率和壓縮,但是也有可能導致內存溢出。

1.2 緩存中的配置可以通過創建sparkSession時候進行配置,使用方法如下:


02


SQL查詢配置選項







03


數據傾斜


SQL查詢任務時數據傾斜會嚴重影響查詢速度,數據傾斜就是某個分區數據嚴重大于其他分區數據,整個任務執行速度是以執行最慢的分區決定,從一開始我們就應該避免數據傾斜的情況產生,如果真的產生了,可以通過將發生數據傾斜的任務拆分成多個任務。

前提是先進行如下配置:

這樣spark會動態的將傾斜任務進行拆分。

如果一個分區數據大于spark.sql.adaptive.skewJoin.skewedPartitionThresholdInBytes(默認為256M)且大于spark.sql.adaptive.skewJoin.skewedPartitionFactor(因子默認是5)×中位值分區大小,那么就認為該分區產生了數據傾斜。


04


總  結


在實際使用中,如果遇到需要多次使用的數據集,為了提高效率,我們可以將這些中間數據集緩存到內存中。

如果數據量比較大的時候我們可以根據實際情況進行相應的一些優化項的設置,數據傾斜非常影響數據的查詢速度,最好的辦法就是避免數據傾斜的產生,這就需要我們指定合理的分區策略,如果真產生了數據傾斜我們可以通過上面的方法進行適當的優化。




end




本文作者:潘宗昊

本文來源:IT那活兒(上海新炬王翦團隊)

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129644.html

相關文章

  • Spark面試題(七)——Spark程序開發調優

    摘要:過程中,各個節點上的相同都會先寫入本地磁盤文件中,然后其他節點需要通過網絡傳輸拉取各個節點上的磁盤文件中的相同。因此在過程中,可能會發生大量的磁盤文件讀寫的操作,以及數據的網絡傳輸操作。Spark系列面試題 Spark面試題(一) Spark面試題(二) Spark面試題(三) Spark面試題(四) Spark面試題(五)——數據傾斜調優 Spark面試題(...

    taowen 評論0 收藏0
  • 數據庫

    摘要:編輯大咖說閱讀字數用時分鐘內容摘要對于真正企業級應用,需要分布式數據庫具備什么樣的能力相比等分布式數據庫,他們條最佳性能優化性能優化索引與優化關于索引與優化的基礎知識匯總。 mysql 數據庫開發常見問題及優化 這篇文章從庫表設計,慢 SQL 問題和誤操作、程序 bug 時怎么辦這三個問題展開。 一個小時學會 MySQL 數據庫 看到了一篇適合新手的 MySQL 入門教程,希望對想學 ...

    mengbo 評論0 收藏0
  • 數據庫

    摘要:編輯大咖說閱讀字數用時分鐘內容摘要對于真正企業級應用,需要分布式數據庫具備什么樣的能力相比等分布式數據庫,他們條最佳性能優化性能優化索引與優化關于索引與優化的基礎知識匯總。 mysql 數據庫開發常見問題及優化 這篇文章從庫表設計,慢 SQL 問題和誤操作、程序 bug 時怎么辦這三個問題展開。 一個小時學會 MySQL 數據庫 看到了一篇適合新手的 MySQL 入門教程,希望對想學 ...

    shuibo 評論0 收藏0

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<