多個考勤檔案,簽到日期彙總,出勤次數統計
reducebykey()是對key的value進行merge操作,在乙個(k,v)的rdd上呼叫,返回乙個(k,v)的rdd,使用指定的reduce函式,將相同key的值聚合到一起,與groupbykey類似,reduce任務的個數可以通過第二個可選的引數來設定,最重要的是它能夠在本地先進行merge操作,並且merge操作可以通過函式自定義;
而combinebykey的主要用法如下:
createcombiner: v => c ,這個函式把當前的值作為引數,此時我們可以對其做些附加操作(型別轉換)並把它返回 (這一步類似於初始化操作)
mergevalue: (c, v) => c,該函式把元素v合併到之前的元素c(createcombiner)上 (這個操作在每個分區內進行)
mergecombiners: (c, c) => c,該函式把2個元素c合併 (這個操作在不同分區間進行)。
6 RDD綜合練習 更豐富的操作
集合運算練習 內連線與外連線 join leftouterjoin rightouterjoin fullouterjoin 多個考勤檔案,簽到日期彙總,出勤次數統計 三 綜合練習 學生課程分數 總共有多少學生?map distinct count 開設了多少門課程?每個學生選修了多少門課?map ...
6 RDD綜合練習 更豐富的操作
集合運算練習 內連線與外連線 join leftouterjoin rightouterjoin fullouterjoin 多個考勤檔案,簽到日期彙總,出勤次數統計 三 綜合練習 學生課程分數 持久化 scm.cache 總共有多少學生?map distinct count 開設了多少門課程?生成...
spark複習筆記 6 RDD持久化
在spark中最重要的功能之一是跨操作在記憶體中持久化資料集。當你持久化乙個rdd的時候,每個節點都存放了乙個它在記憶體中計算的乙個分割槽,並在該資料集的其他操作中進行重用,持久化乙個rdd的時候,節點上的每個分割槽都會儲存到記憶體中,這使得將來的action更加的快。快取技術是迭代演算法和互動式查...