原创 spark的task分佈不均勻,某些executor沒有領取任務

今天執行的一個spark job的,共計有30000個任務,分配了100個executor,但是大部分任務都分佈在了某些executor上。有些excutor只執行了1個任務。 經查資料與spark數據本地化有關。 先說解決方案:提交任務

原创 spark如何合理的分配資源(executor-memory,num-executors,executor-cores)

以下爲經驗之談,結合個人對spark框架的理解,如有錯誤,歡迎指正。 以yarn爲例: 一。executor-memory,在集羣資源允許的情況下,當然越多越好,個人建議上限爲單個containers最大值的75%。 二。num-exec

原创 spark讀取parquet文件,分配的任務個數

假設path爲一個parquet文件目錄,該目錄下有64個part。大小共100G,數據均勻分佈,採用gz或snappy等不可分割的壓縮算法。 那麼執行以下代碼。會起多少個task呢? val df = spark.read.parqu

原创 Spark寫入parquet,設置Repetition。解決org.apache.parquet.io.InvalidRecordException

自定義case class,採用以下方式生成parquet文件,其Repetition爲optional case class Log(id:String) ds[Log].write.parquet(path) 業務上,後面使用pa

原创 spark2.3.3消費kafka中的數據,與hive中的表做關聯並寫入elasticsearch6.5.3(spark structed streaming)

背景: 本地物理機機房新建了一個大數據集羣(cdh,spark2.3.3+hive3.0) 舊集羣環境:spark2.1.0+hive2.4.2 新舊集羣爲內網訪問。 未參與集羣的搭建,不知道配置文件目錄,各種依賴的jar版本,端口等

原创 python 發送帶有附件的郵件

恩恩。。奇怪,剛纔是用了另外一個賬號發嗎。。不管了反正都是新的。 來新公司實習,需要一個發郵件的小工具來給自己用。 之前沒接觸過python,百度結合領導給的參考代碼總算寫出來了。。 之前沒寫過博客,這次也就當做個筆記吧。。 im