當(dāng)前位置:首頁 > 智能硬件 > 人工智能AI
[導(dǎo)讀] Apache Spark是處理和使用大數(shù)據(jù)最廣泛的框架之一,Python是數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等領(lǐng)域最廣泛使用的編程語言之一。如果想要獲得更棒的機(jī)器學(xué)習(xí)能力,為什么不將Spark和Python一起

Apache Spark是處理和使用大數(shù)據(jù)最廣泛的框架之一,Python是數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等領(lǐng)域最廣泛使用的編程語言之一。如果想要獲得更棒的機(jī)器學(xué)習(xí)能力,為什么不將Spark和Python一起使用呢?

在國外,Apache Spark開發(fā)人員的平均年薪為110,000美元。毫無疑問,Spark在這個行業(yè)中被廣泛使用。由于其豐富的庫集,Python也被大多數(shù)數(shù)據(jù)科學(xué)家和分析專家使用。二者集成也并沒有那么困難,Spark用Scala語言開發(fā),這種語言與Java非常相似。它將程序代碼編譯為用于Spark大數(shù)據(jù)處理的JVM字節(jié)碼。為了集成Spark和Python,Apache Spark社區(qū)發(fā)布了PySpark。

Apache Spark是Apache Software FoundaTIon開發(fā)的用于實(shí)時處理的開源集群計(jì)算框架。Spark提供了一個接口,用于編程具有隱式數(shù)據(jù)并行和容錯功能的整個集群。

下面是Apache Spark的一些特性,它比其他框架更具優(yōu)勢:

速度:比傳統(tǒng)的大型數(shù)據(jù)處理框架快100倍。

強(qiáng)大的緩存:簡單的編程層提供強(qiáng)大的緩存和磁盤持久性功能。

部署:可以通過Mesos、Yarn或Spark自己的集群管理器進(jìn)行部署。

實(shí)時:內(nèi)存計(jì)算,實(shí)時計(jì)算且低延遲。

Polyglot:這是該框架最重要的特性之一,因?yàn)樗梢栽赟cala,Java,Python和R中編程。

雖然Spark是在Scala中設(shè)計(jì)的,但它的速度比Python快10倍,但只有當(dāng)使用的內(nèi)核數(shù)量少時,Scala才會體現(xiàn)出速度優(yōu)勢。由于現(xiàn)在大多數(shù)分析和處理都需要大量內(nèi)核,因此Scala的性能優(yōu)勢并不大。

對于程序員來說,由于其語法和標(biāo)準(zhǔn)庫豐富,Python相對來說更容易學(xué)習(xí)。而且,它是一種動態(tài)類型語言,這意味著RDD可以保存多種類型的對象。

盡管Scala擁有SparkMLlib,但它沒有足夠的庫和工具來實(shí)現(xiàn)機(jī)器學(xué)習(xí)和NLP。此外,Scala 缺乏數(shù)據(jù)可視化。

使用Python設(shè)置Spark(PySpark)

首先要下載Spark并安裝,一旦你解壓縮了spark文件,安裝并將其添加到 .bashrc文件路徑中,你需要輸入source .bashrc

要打開PySpark shell,需要輸入命令./bin/pyspark

PySpark SparkContext和數(shù)據(jù)流

用Python來連接Spark,可以使用RD4s并通過庫Py4j來實(shí)現(xiàn)。PySpark Shell將Python API鏈接到Spark Core并初始化Spark Context。SparkContext是Spark應(yīng)用程序的核心。

Spark Context設(shè)置內(nèi)部服務(wù)并建立到Spark執(zhí)行環(huán)境的連接。

驅(qū)動程序中的Spark Context對象協(xié)調(diào)所有分布式進(jìn)程并允許進(jìn)行資源分配。

集群管理器執(zhí)行程序,它們是具有邏輯的JVM進(jìn)程。

Spark Context對象將應(yīng)用程序發(fā)送給執(zhí)行者。

Spark Context在每個執(zhí)行器中執(zhí)行任務(wù)。

PySpark KDD用例

現(xiàn)在讓我們來看一個用例:數(shù)據(jù)來源為KDD'99 Cup(國際知識發(fā)現(xiàn)和數(shù)據(jù)挖掘工具競賽,國內(nèi)也有類似的競賽開放數(shù)據(jù)集,比如知乎)。這里我們將取數(shù)據(jù)集的一部分,因?yàn)樵紨?shù)據(jù)集太大。

創(chuàng)建RDD:

現(xiàn)在我們可以使用這個文件來創(chuàng)建我們的RDD。

過濾

假設(shè)我們要計(jì)算我們在數(shù)據(jù)集中有多少正常的相互作用。,可以按如下過濾我們的raw_data RDD。

計(jì)數(shù):

現(xiàn)在我們可以計(jì)算出新RDD中有多少元素。

輸出:

制圖:

在這種情況下,我們想要將數(shù)據(jù)文件作為CSV格式文件讀取。我們可以通過對RDD中的每個元素應(yīng)用lambda函數(shù)。如下所示,這里我們將使用map()和take()轉(zhuǎn)換。

輸出:

拆分:

現(xiàn)在,我們希望將RDD中的每個元素都用作鍵值對,其中鍵是標(biāo)記(例如正常值),值是表示CSV格式文件中行的整個元素列表。 我們可以按如下進(jìn)行,這里我們使用line.split()和map()。

輸出:

收集:

使用collect()動作,將RDD所有元素存入內(nèi)存。因此,使用大型RDD時必須小心使用。

輸出:

當(dāng)然,這比我們之前的任何操作花費(fèi)的時間都要長。每個具有RDD片段的Spark工作節(jié)點(diǎn)都必須進(jìn)行協(xié)調(diào),以便檢索其各部分內(nèi)容,然后將所有內(nèi)容集合到一起。

作為結(jié)合前面所有內(nèi)容的最后一個例子,我們希望收集所有常規(guī)交互作為鍵值對。

輸出:

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉