PySpark入門二 認識RDD

2021-10-23 22:20:34 字數 739 閱讀 8357

彈性分布式資料集,簡稱為rdd,是不可變jvm物件的分布式集合,spark 就是圍繞rdd而構建的。rdd對物件的作業是非常快速的執行的,這依賴於rdd的計算是依據快取和儲存在記憶體中的模式進行。

rdd有兩組並行操作:轉換和動作。轉換是指返回指向新rdd的指標;動作是指在執行計算後返回值。

同時,rdd也有它惰性的一面,他們並不立即計算其結果,只有動作執行了,並且需要返回值時,才會進行計算轉換。

與pandas的dataframe有所區別的是,spark的rdd是一種無schema的資料結構。

因此我們可以混用任何型別的資料結構,比如陣列、字典、集合

data = sc.parallelize([(

'fst'

,none),

,['a',

'b']])

.collect(

)

今天接觸到了spark 第乙個方法:collect() 表示的是把資料返回到data上,方便我們取值,而返回的資料都會被序列化為乙個列表。

如果我們需要取數,那麼就直接呼叫列表方法就行。比如取出name的值,則只需要做: data[1]['name'],那麼我們就可以得到『spark』值了。

rdd從檔案讀取資料時,檔案的每一行形成了rdd中的乙個元素,這些後面會有實際例子分享給大家。至於rdd的高階函式轉換操作,明天再介紹給大家。

pyspark中讀取檔案後的RDD操作

本文記錄下在python環境中對rdd的一些操作方法 1.建立rdd 關於讀取檔案建立rdd的方法在前面文章已經介紹過來,這裡就不做介紹了。還有一種自定義的 data rdd sc.parallelize alina 26 tom 22 sky 12 blue 21 2.lambda 表示式 在rd...

Spark入門RDD操作

rdd resilient distributed datasets 彈性分布式資料集,是spark中的抽象資料結構型別,任何資料在spark中都被表示為rdd.從程式設計的角度來看,rdd可以簡單看成是乙個陣列.和普通陣列的區別是,rdd中的資料是分割槽儲存的,這樣不同分割槽的資料就可以分布在不同...

PySpark入門三 常用的函式 上

在jupyter notebook中如何使用pyspark?開啟anaconda prompt 並使用pip 安裝好pyspark第三方庫。pip install pyspark 導包 from pyspark import sparkcontext 建立會話 sc sparkcontext.get...