transformation操作:得到乙個新的rdd,比如從資料來源生成乙個新的rdd,從rdd生成乙個新的rdd
1.flatmap:對集合中每個元素進行操作然後再扁平化。
2.map:對集合中每個元素進行操作。
3.reducebykey(_+_): 傳入乙個函式,將key相同的一類進行聚合計算 如相加
4. mapvalues(_+10): 傳入乙個函式,類似於map方法,不過這裡只是對元組中的value進行計算
5.filter(): 傳入乙個函式, 使用者過濾處理資料
6.sortby():傳入對哪個字段進行排序 對資料進行排序
7.partitionby(): 傳入乙個自定義的分割槽類,可進行資料的分割槽
9.reverse: 將排序好的資料進行反轉
10.tolist 將iterator轉換為list 然後就可以使用list的sortby()函式進行排序
11.groupby(): 對指定字段進行分組
12.lookup(k):作用於k-v型別的rdd上,返回指定k的所有v值
13.collectasmap():作用於k-v型別的rdd上,作用與collect不同的是collectasmap函式不包含重複的key,對於重複的key。後面的元素覆蓋前面的元素
14.groupbykey(numpartitions):按key進行分組,返回[k,iterable[v]],numpartitions設定分割槽數,提高作業並行度
15.sortbykey(accending,numpartitions):返回以key排序的(k,v)鍵值對組成的rdd,accending為true時表示公升序,為false時表示降序,numpartitions設定分割槽數,提高作業並行度
16.cogroup(otherdataset,numpartitions):對兩個rdd(如:(k,v)和(k,w))相同key的元素先分別做聚合,最後返回(k,iterator,iterator)形式的rdd,numpartitions設定分割槽數,提高作業並行度
17.join(otherdataset,numpartitions):[本質是通過cogroup運算元先進行協同劃分,再通過flatmapvalues 將合併的資料打散。]對兩個rdd先進行cogroup操作形成新的rdd,再對每個key下的元素進行笛卡爾積,numpartitions設定分割槽數,提高作業並行度
18.rightoutjoin(otherdataset, numpartitions):右外連線,包含右rdd的所有資料,如果左邊沒有與之匹配的用none表示,numpartitions設定分割槽數,提高作業並行度
19.leftoutjoin(otherdataset,numpartitions):左外連線,包含左rdd的所有資料,如果右邊沒有與之匹配的用none表示,numpartitions設定分割槽數,提高作業並行度
20.union(ortherdataset):將兩個rdd中的資料集進行合併,最終返回兩個rdd的並集,若rdd中存在相同的元素也不會去重
action操作:action是得到乙個值,或者乙個結果(直接將rdd cache到記憶體中)
21.collect():以資料的形式返回資料集中的所有元素給driver程式,為防止driver程式記憶體溢位,一般要控制返回的資料集大小
22.take(n):以陣列的形式返回資料集上的前n個元素
26.countbykey():作用於k-v型別的rdd上,統計每個key的個數,返回(k,k的個數)
23.top(n):按預設或者指定的排序規則返回前n個元素,預設按降序輸出
收錄部分常用正規表示式
在開發的過程中,常常需要對錄入的內容進行驗證,因此正規表示式是必不可少的,這裡收錄了一些,可以省些功夫 d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 ...
RDD操作建立RDD,轉換操作
學習完廈門大學資料庫spark課程總結 rdd是面對物件的檔案集合,類似於dataframe的一行資料,建立rdd有很多種模式 lines sc.textfile file usr local spark 檔案目錄位址 注意sc是sparkcontext縮寫可能需要import一下,這是從本地檔案建...
RDD程式設計
1.rdd程式設計概述 整個spark的核心 2.pari rdd 3.共享變數 重要 4.資料讀寫 5.wordcount程式解析 1.rdd程式設計概述 1.rdd建立,01.spark採用textfile 方法從檔案系統中載入資料建立rdd 該方法把檔案的uri作為引數,這個uri可以是 00...