PySpark介紹

當要分析的資料大到一臺電腦沒辦法處理(可能是檔案過大沒辦法載入單臺電腦的記憶體、或是單臺運算時間太長)的時候,通常有兩種解決方法。1.購買一臺昂貴的超級電腦(96核CPU, 1TB Memory…) 2.購買多臺較便宜的一般電腦來分工處理原本的工作。

  • 第一種的解法,對于開發(fā)人員來說的好處是程式碼完全不用改直接丟上去跑。但對于企業(yè)來說為了少數工作花好幾百萬的經費購買超級電腦非常的不劃算,而且假設剛好你的資料量又超過1TB這時候原本的超級電腦就不能使用了,要再買更高級的超級電腦,也就是擴充性不佳
  • 利用多臺電腦打造一個運算群集(背后可能是1000臺16核心48GB的電腦這樣的等級), 此時你要多少運算資源都可以動態(tài)的調整,比方說某一個工作要100核心以及2TB的Memory, Spark都可以很快的配置資源,并且這個運算叢集是可以給全公司的人來使用,平均分攤下來的成本較低。而且這樣的群集的已很容易地增加以及減少里面的電腦數量。

Spark官方網站提到Spark的好處有

速度快

Spark比起Hadoop在運算上快了許多,主要是把資料暫存在記憶體以及把資料處理的部份優(yōu)化(ex:減少shuffle)

容易使用

Spark提供Scala,Python,R,Java的API介面,讓開發(fā)者可以利用自己擅長的開發(fā)語言來開發(fā)。主流上是使用Scala, Python這兩種

廣泛應用

可以在Spark上面使用SQL、即時串流(Streaming)、Spark的機器學習套件(MLlib)、圖論(計算圖形中任兩點的最短路徑)的套件

下圖為Spark python語言API工具PySpark簡要學習指南:
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容