原创 spark怎麼分配資源

spark分配資源概述 爲啥要研究spark資源分配 spark中最基本和最有效率的優化方式就是給spark程序分配更多的資源,所以這次講如何更合適的給你的spark程序分配資源 spark分配資源主要調整哪一些資源 /home/zho

原创 spark--使用MapPartitions

什麼是MapPartitions? 簡單的理解就是以分區爲單位的map函數,假如該分區有10000條數據,如果調用map函數的話,每次調用傳入一條數據,也就是需要調用10000次。但是如果調用MapPartitions函數的話,只需要調用

原创 presto指標監控

概述 因爲presto自帶的web-ui界面侷限性比較多,所以最近準備通過分析presto的相關指標來搭建一個presto的監控平臺。主要用於presto基本信息的監控,性能信息的查詢,異常預警。所以該篇及接下來的這幾篇文章主要針對pre

原创 大數據開發公衆號

專注於大數據相關框架的總結和原理分析

原创 presto使用及介紹

什麼是presto presto是一個開源的分佈式的查詢引擎,基於內存,它本身不接入數據,可以連接多種數據源,例如 Hive ,Mysql,Kafka,MongeDB等,一條Presto查詢可以將多個數據源進行合併查詢。 preto適合O

原创 Canal HA模式講解及部署

Canal高可用模式介紹 Canal HA一共分爲兩部分,分別爲Canal Server HA 和 Canal Client HA Canal Server HA 說明 需要特別說明的是,Canal 集羣的高可用 不是基於Server級別

原创 spark sql中如何解決並行度低的問題?

在spark設置並行度一般通過兩種方式來設置: 1.spark.default.parrallelism 2.textFile()傳入第二個參數,指定partition數量 使用spark sql的時候會出現什麼問題? 但是如果使用來sp

原创 HDFS數據塊損壞是如何處理的?

HDFS數據塊損壞是如何處理的? 數據塊損壞恢復流程 在namenode中對於進行數據塊副本的管理都是在FSnameSystem中,其中有一個成員變量 corruptReplicats ,其中就存儲着損壞數據與DataNode的映射,當某

原创 面試|spark模塊 spark的工作流程?

  spark的工作流程是什麼​ 回答思路 所有spark程序都離不開程序初始化和執行任務這兩部分,所以該問題可以從這兩部分開始回答。 一、程序初始化的流程 用戶通過sparksubmit提交程序以後,driver程序開始運行(driv

原创 spark優化之重構rdd架構及rdd持久化

什麼是RDD持久化? spark最重要的一個功能,就是把一個數據集緩存在內存,磁盤或者分佈式文件系統中。如果持久化了這一個數據集,那麼對此數據集進行操作的其他操作可以直接複用該數據集,不用重新計算,這會使該操作執行的迅速。 爲啥要進行RD

原创 一文讀懂spark數據傾斜

spark中出現數據傾斜的原因? 前面分析過shuffle 的原理,主要就是按照key來進行values的數據的輸出,拉取和聚合的。同一個key的value,肯定會分配到同一個reduce task進行處理的。爲什麼會出現數據傾斜呢,舉個

原创 Spark JDBCRDD詳解

參數解釋 在使用jdbc rdd的時候,我們一塊需要傳遞7個參數    val data = new JdbcRDD(       sc,       getConnection,       "select * from table 

原创 spark shuffle的相關總結

什麼是shuffle? 發生 shuffle 操作主要是以下幾個算子:groupByKey、reduceByKey、countByKey、join,等等。 什麼時候需要shuffle writer? 前一個stage的ShuffleMap

原创 Spark性能優化---數據本地化

什麼是數據本地化 如果數據以及要計算它的代碼是在一起的,那麼性能當然會非常高。但是,如果數據和計算它的代碼是分開的,那麼其中之一必須到另外一方的機器上。通常來說,移動代碼到其他節點,會比移動數據到代碼所在的節點上去,速度要快得多,因爲代碼

原创 Spark如何判斷內存消耗

內存都消耗在了哪個地方 1、在創建的每個java對象中,都會有一個對象頭,會佔用16個字節,主要是包括了一些的一些對象的元信息,比如指向它的類的指針。如果一個對象本身很小,比如就包括了一個int類型的field,那麼它的對象頭實際上比對象