彈性分布式資料集,簡稱為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...