原创 確定hive的map和reduce的task的數量
Hive的底層查詢原理,也是講sql語句轉化爲map-reduce進行查詢和計算的,所以設置正確的map和reduce的task的數量對查詢效率有很重要的影響。 1. 設置mapper的task數量 在分佈
原创 Spark源碼分析-takeSample源碼分析
1.參數說明 withReplacement:是否是有放回的抽樣,就是普通的抽樣,我們都是抽過的數據就不能在抽樣了,有放回抽樣就是可以繼續抽以前抽取過的。 num:數據抽樣的個數 2.執行源碼流程 執行流程主要是調
原创 Spark源碼-sample計算流程分析
1.參數說明 Sample構造函數有三個參數,每個參數的含義如下: withReplacement:元素可以多次抽樣(有放回的抽樣) fraction:期望樣本的大小作爲RDD大小的一部分, 當withReplac
原创 Spark計算流程分析(map-reduce)過程
本文只是結合源碼對spark的map和reduce過程做簡單的總結,不是特別深入。主要是《深入理解Spark__核心思想與源碼分析》一書中的內容和自己的一些理解。 1.Shuffle 不管是hadoop的MapReduce
原创 Spark源碼分析-topN源碼
介紹 TopN算子是取RDD的前N個元素。取TopN元素,我們就一定要對其進行嚴格排序嗎?非也,也正是如此,加大了此算子的效率。 源碼理解 def top(num: Int): JList[T] = { val comp =
原创 Spark源碼分析-SortByKey源碼
簡單介紹 SortByKey對<key, value>數據進行按照key進行排序,怎麼個排法,我麼先看一下spark源碼中的一些註釋: 兩段註釋的基本意思差不多:通過RDD的key進行排序,每一個分區包括在一個範圍內
原创 Spark數據傾斜的原因以及解決方案
轉自:https://www.cnblogs.com/xiaodf/p/6055803.html 數據傾斜調優 調優概述 有的時候,我們可能會遇到大數據計算中一個最棘手的問題——數據傾斜,此時Spark作業的性能會比期望差很多。數據傾
原创 JVM類加載過程
1. JVM類加載過程 1.概述 從類的生命週期而言,一個類包括如下階段: 加載、驗證、準備、初始化和卸載這5個階段的順序是確定的,類的加載過程必須按照這種順序進行,而解析階段則不一定,它在某些情
原创 JVM內存結構及原理
https://blog.csdn.net/rongtaoup/article/details/89142396 https://www.jianshu.com/p/381b50f8853d https://blog.csdn.net/l
原创 機器學習中數據預處理方法
在知乎上也看到了這個,不知道哪個是原創,這裏粘上鍊接 https://zhuanlan.zhihu.com/p/51131210 前言 數據預處理的重要性? 熟悉數據挖掘和機器學習的小夥伴們都知道,數據處理相關的工作時間佔據了整個項目的7
原创 Spark中RDD,DataFrame,DataSet簡單介紹
Spark中三個主要的數據對象RDD, DataFrame和DataSet都是分佈式彈性數據集,爲我們處理大量數據提供了很方便的工具及其接口。下面我們對其簡單介紹,並且介紹一下其中的聯繫。 注:一下介紹的過
原创 K-均值聚類(K-means)算法
聚類算法,是一種無監督的學習方法,他將相似的對象歸到統一簇中,簇內的對象越相似,聚類效果也就越好,我們用簇識別表示給出聚類結果的含義。他有點像全自動分類,假定有一些數據,現在將相似數據歸到一起,簇識別會告訴我們這些簇到底都
原创 支持向量機(三)序列最小最優化算法(SMO)
在支持向量機(一)和支持向量機(二)兩篇文章中,我們分別介紹了線性可分的支持向量機和線性向量機,從中可知,我們最終的目的是要計算得出支持向量對應的拉格朗日乘子α,但是我們並沒有說怎麼算。這篇文章主要介紹了序列化最小優化算法
原创 提升樹算法,梯度提升(GBDT)
提升模型是提升樹算法的前提。提升模型的基本思想就是多個簡單的模型線性組合成一個最終的模型,提升樹算法的實現當然也是這個思路。看過好多的介紹,基本上在提升樹算法中,每個簡單的模型都是一顆樹高爲1的二叉樹模型,因爲每次都是選擇一
原创 count(*),count(1),count(列名)的介紹以及區別
原文鏈接:https://blog.csdn.net/hollis_chuang/article/details/102657937 小小的count也有大文章,針對不同的應用場景和效率,也有不