如何搭建SparkR的開發環境

2021-01-21 書圈


前文閱讀:

Windows和PC機上搭建Spark+Python開發環境的詳細步驟


今天,我主要講解「如何搭建SparkR 的開發環境」。考慮到 ①多數網友使用的是Windows作業系統、 ②在Windows和Linux中搭建SparkR 的開發環境的相似性以及 ③Linux環境下的操作比Windwos簡單,我們主要介紹「在Windows作業系統之上搭建SparkR 的開發環境」的方法。


SparkR 開發環境的搭建主要涉及安裝R、Rtools、RStudio、JDK、Spark、本地Hadoop庫以及運行Spark代碼等7個基本步驟。



1.1 【下載R】登錄CRAN官網或其鏡像站點,如清華大學CRAN鏡像站點(https://mirrors.tuna.tsinghua.edu.cn/CRAN/,選擇「Download R for Windows」,並在彈出的新窗口中選擇「install R for the first time」,下載R安裝軟體。

圖1

【注意事項】

建議從CRAN的國內鏡像站點下載R安裝包(考慮到下載的速度與穩定性)。

注意下載的R安裝程序應與您的作業系統版本一致(尤其是作業系統的位數32還是64?)。

本教程的示例下載的是「R3.3.3 for Windows」,下載到本地的文件為「R-3.3.3-win.exe」。


1.2 【安裝R】雙擊R的安裝文件「R-3.3.3-win」,按安裝嚮導進行操作即可。



圖2


【注意事項】

R的安裝路徑中最好不要有空格,不要安裝在「Program File」或「Program File(X86)」目錄下。

為了方便演示,本教程在C盤根目錄下新增了一個新文件夾「SparkR」,將步驟1~6的所有文件將統一安裝到此目錄。

本示例中的R安裝目錄為「C:\SparkR\R-3.3.3」。


1.3 【設置R的環境變量】將R的bin目錄(…\R-3.3.3\bin)添加到系統環境變量path中。


圖3


【注意事項】



1.4 【測試R的安裝是否成功】輸入命令cmd,進入Windows控制臺命令行,輸入命令r,系統顯示結果是否正確。


圖4


【注意事項】






2.1【下載Rtools下載Rtools的安裝程序,操作步驟與「1.1下載R」基本一致。

圖5


【注意事項】


2.2【安裝Rtools雙擊安裝Rtools33.exe文件,操作方法與1.2相同,操作步驟參見【1.2安裝R】」.


圖6


2.3【設置Rtools的環境變量】將…\Rtools\bin與…\Rtools\gcc-4.6.3\bin添加到系統環境變量中,操作方法與步驟1.3相同,操作步驟參見【1.3設置R的環境變量】.


圖7


2.4【測試Rtools安裝是否成功】輸入命令cmd,進入Windows控制臺命令行,輸入命令basename --help,系統顯示結果是否正確。


圖8






3.1【下載RStudio 從RStudio官網(https://www.rstudio.com/products/rstudio/download/)下載RStudio的安裝文件。


圖9


3.2【安裝RStudio雙擊安裝RStudio.exe文件,操作方法與1.2相同,操作步驟參見【1.2安裝R】」.


圖10



3.3【測試RStudio的安裝是否成功】在Windows開始菜單中選擇RStudio,打開RStudio。


圖11


【注意事項】





4.1【下載並安裝JDK http://www.oracle.com/technetwork/
java/javase/downloads/index.html,下載JavaSE,並安裝。

圖12


【注意事項】Java SE的版本,本教程安裝的是Java SE Development Kit 8u121。


4.2【設置JDK環境變量】首先,在「系統變量」中新建 JAVA_HOME 變量,變量值填寫jdk的安裝目錄(如C:\SparkR\JDK\bin);接著,在「系統變量」中的path變量,點擊「編輯」按鈕,分別將「 %JAVA_HOME%\bin」和「%JAVA_HOME%\jre\bin」添加到path變量值。


圖13


   【注意事項】如果path變量值在同一行中輸入,需要在原path的變量值末尾加個「;「,即填寫」%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin「 。


4.3 【測試JDK的安裝是否成功】輸入命令cmd,進入Windows控制臺命令行,輸入命令「java –version」,查看JDK的安裝及環境變量的設置是否正確。


圖14


【注意事項】如果系統顯示「'java' 不是內部或外部命令,也不是可運行的程序或批處理文件」的提示,請檢查JDK環境變量的設置,詳見4.2.。





5.1【下載Spark安裝程序】從Spark官網(http://spark.apache.org/downloads.html)下載Spark的安裝程序的壓縮包。

圖15


【注意事項】最新版本spark在windows下運行會出現一些問題,建議選擇2.0.2,本教程下載的Spark的安裝程序的壓縮包是spark-2.0.2-bin-hadoop2.7.tar.gz


5.2 【安裝Spark解壓Spark的安裝程序的壓縮包(如spark-2.0.2-bin-hadoop2.7.tar.gz),並將解壓後的內容複製到安裝目錄下(如本教程的安裝目錄為」 C:\SparkR」)的新建文件夾spark(用戶需要自己創建該文件夾)。


圖16


5.3【設置Spark的環境變量】首先,在系統環境變量中增加一個新的環境變量SPARK_HOME,並將其值設為spark程序目錄(如C:\SparkR\spark).接著,在系統環境變量中找到Path變臉個,將%SPARK_HOME%\bin添加至系統環境變量path中。


圖17

圖18


【注意事項】與JDK的環境變量設置相同,見「4.2【設置JavaSE環境變量】」。



 5.4 【測試SparkR輸入命令cmd,進入Windows控制臺,輸入命令SparkR,查看安裝結果是否正確。


圖19


【注意事項】如果發現如下發現警告:17/03/28 21:49:03 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable,意思就是沒有缺少本地hadoop庫,解決方法見步驟6.






6.1【下載本地hadoop庫】下載本地hadoop庫。如果你使用的是Win10版本的作業系統,可以從「連結: http://pan.baidu.com/s/1nuAfT9J 密碼: vdqk」下載此文件。


6.2【安裝本地hadoop】在程序安裝目錄下新建hadoop文件夾,將解壓後的內容複製到hadoop目錄下。


圖20



6.3 【設置本地hadoop庫的環境變量】首先,在系統環境變量中新增變量HADOOP_HOME,其值為步驟6.2中的hadoop安裝目錄(如C:\SparkR\hadoop)。接著,在系統環境變量的path中添加路徑%HADOOP_HOME%\bin。


圖21


圖22


【注意事項】操作方法1.3類似,操作步驟及注意事項參見【1.3設置R的環境變量】.


6.4【重新測試SparkR操作步驟與5.4一致,查看操作結果是否正確。


圖23



【注意事項】可能出現如下提示「

Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties

Setting default log level to "WARN".

To adjust logging level use sc.setLogLevel(newLevel).

    處理方法如下:複製…\spark\conf下的log4j.properties.template文件為log4j.properties,並修改log4j.properties文件,將第一個INFO改為WARN。


圖24


SparkR的正確測試結果如下:


圖25


【注意事項】在spark的\examples\src\main\r目錄下有四個SparkR示例代碼,分別為數據框操作、數據轉換、機器學習和SQL查詢。


圖26






 7.1【修改當前路徑】將當前路徑修改為spark文件夾。


圖27


【注意事項】將當前路徑改為spark,而不是SparkR。


7.2【運行SparkR代碼】bin\spark-submit examples\src\main\r\dataframe.R


圖28




8.1 【安裝SparkR包】將…\spark\R\lib中SparkR文件夾拷貝到…\R-3.3.2\library中。


圖29


8.2 【在RStudio打開SparkR文件並運行代碼】用Rstudio代開「…\spark\examples\src\main\r」 下的文件dataframe.R,並採用Ctrl+Enter 進行逐行執行或全部執行。


圖30




《數據科學理論與實踐》

作者:朝樂門

定價:59元

ISBN:9787302480549












相關焦點

  • 【SparkR編程系列教程】之一【如何搭建SparkR的開發環境】
    (1)如何搭建SparkR開發開發環境;(2)SparkR編程基礎知識講解(3)SparkR實例代碼詳解(4)基於SparkR的數據科學實戰。(註:本文內容為中國人民大學朝樂門老師的原創內容,轉載請註明出處及作者。
  • 初學編程者如何擺脫搭建開發環境的困擾?
    你是否也有過類似慘痛的經歷:一不小心設錯一個環境參數或路徑,代碼就死活也跑不起來;明明嚴格按照步驟搭建起來的伺服器,又或者跟別人一模一樣的環境,但就是運行不了……圖片來源於網絡本文就初學編程者面臨的最大問題:如何搭建開發環境,給出了非常實用的解決方法,幫助初學者跳過搭建開發環境這個複雜又令人頭疼的環節,直接進入編程的學習,從而更加享受學習編程的樂趣。
  • 「sparkr+sparkr mini」 打火機手電筒完美合體
    來自於美國的power practical一直致力於對充滿創意同時又價格實惠的能量產品的開發。「sparkr」與「sparkr mini」將他們「古怪的」設計特色與生產日常用品的願望相結合。這套造型別致的多功能全新系列作品能夠讓使用者們隨時隨地生火或照明。經過無數次的討論,power practical的工業設計師mckay nilson 開始著手模擬「sparkr」可能的外形。設計定稿後,整個團隊立即開始打造產品原型進行測試。
  • 嵌入式Linux開發環境的搭建之:嵌入式開發環境的搭建
    本文引用地址:http://www.eepw.com.cn/article/257141.htm5.1嵌入式開發環境的搭建5.1.1嵌入式交叉編譯環境的搭建linux作業系統文章專題:linux作業系統詳解(linux不再難懂)交叉編譯的概念在第4章中已經詳細講述過,搭建交叉編譯環境是嵌入式開發的第一步,也是必備的一步。
  • windows上python開發環境的搭建
    對於程序開發而言,需要的就是一個良好的開發環境。對於C,C++, java等靜態性語言而言,需要通過IDE(集成開發環境)來便利開發過程;對於perl, python這種動態性語言而言,其開發環境的搭建就顯得簡單多了,只需要安裝好對應的解釋器,以及選擇一個順手的編輯器即可。
  • 如何搭建校園氣象環境監測系統,關鍵看著幾點!
    如何搭建校園氣象環境監測系統,關鍵看著幾點!  當教育遇上智能化校園的變革,我們的孩子將會在什麼環境中獲得更好的成長?看似是一個複雜的問題,但實際上近年來有越來越多的學校關注校園智能環保這個話題。
  • 如何搭建酒店電商系統
    現在早已經是電商時代,很多酒店都想搭建一個線上的電商網站,吸收客源,轉化成交。 那麼,該如何搭建酒店電商系統呢?兩種版本各有優劣: 源碼版本酒店可將網站搭建在自己的伺服器上,系統、數據、源碼都是自己管理,安全,自主,後期可二次開發,但價格較高, SaaS版本,網站數據、系統源碼不在自己手裡,不可二次開發,但網站維護省心省力,價格也相對較低。 酒店根據自己的需求,選擇對應版本就行。
  • 交友直播APP源碼開發中,服務端與客戶端的環境搭建
    1、服務端在部署服務端環境其實包含很多東西的,最常用的web服務nginx,資料庫Mysql、Nosql,api開發最多的三種選擇:java環境,需要jdk,tomcat/jbossphp環境,需要安裝php,odplua環境,需要安裝lua、luajit考慮使用緩存技術,則主要包含redis和memcached。
  • 大數據學習環境搭建系列(二)虛擬機軟體Vmware的安裝
    後續文章將針對兩種分布式集群搭建方法進行教學,同時也將更加側重分布式集群的搭建。註:這裡推薦個人計算機配置:硬碟空間大於100G、內存大於等於8G、CPU大於兩核。虛擬機軟體虛擬機軟體簡介就目前而言,VMware Workstation是使用最為廣泛、功能最為強大的虛擬機軟體,主要用於IT開發和系統管理等商業環境, 而開源虛擬軟體Oracle VM VirtualBox,則在所有免費虛擬機軟體中表現較為突出,成為大多數教學
  • ...雲開發即將發布實時數據推送服務,再也不用自己搭建WebSocket了
    受訪嘉賓 | 周子傑作者 | Yonie小程序雲開發 - 實時數據推送是小程序雲開發即將發布的一個雲服務, 可以監聽雲資料庫的數據變更,實時推送到小程序端。省去了開發者搭建 WebSocket 的成本,是小程序中實時推送的高效實踐方案。
  • 如何自行搭建一個威脅感知大腦 SIEM?| 雷鋒網公開課
    在網絡安全的原始森林裡,SIEM就扮演這樣一個威脅感知大腦的角色。如何在合理成本下打造一個最為強大、合適的 SIEM 系統,是許多安全人員頭疼的問題。雷鋒網有幸邀請到了擁有十年安全產品經驗的百度安全專家兜哥,為大家講解如何使用開源軟體搭建企業的SIEM系統。
  • Python 快速搭建 RESTful API
    RESTful 應用場景RESTful 開發方式大多應用在前端和後端開發分離的環境中,前端和後端分離帶來的最大好處就是項目耦合度得到降低,前端通過 RESTful API 接口服務完成對數據的增刪改查,也就是常說的對資料庫的 CRUD在 Python 中如何實現快速高效地開發 RESTful API 呢?
  • 新手如何搭建SEM競價帳戶?
    往往有很多初步學習SEM競價的新手,不知道如何搭建SEM競價帳戶,下面小夢給大家分享一下SEM帳戶的整個流程以及新手如何搭建SEM競價帳戶等相關問題!以上認證完成之後,SEM帳戶就生效,可以進行搭建SEM帳戶並上線推廣了。SEM競價帳戶搭建就和造房子一樣,首先需要有個整體框架,然後再將細節部分一個一個補齊,最終形成一個完整的SEM帳戶,並定期對其進行優化。
  • 荷蘭豬應該如何給它搭建小窩
    天竺鼠也被稱作,豚鼠,在中國大家更喜歡叫它荷蘭豬,荷蘭豬長相可愛,性格溫順,已經風靡了中國的寵物界,是現在許多小孩和年輕人非常喜歡的一種家庭寵物當你把一隻荷蘭豬帶到了家裡荷蘭豬一定不會很快的適應新的環境,如果想讓自己的小荷蘭豬儘快的熟悉環境,
  • ES6 常用知識匯總,ES6模塊化如何使用,開發環境如何打包?
    ES6模塊化如何使用,開發環境如何打包?/demo'console.log(util1)fn1()fn2()2.開發環境配置BabelES6新語法需要進行編譯,即轉換為ES5或者更早版本的語法,這個時候就需要Babel來進行轉換Babel是什麼?
  • 產品經理的進階之路(2):如何搭建產品經理的知識體系?
    在上一期發布搭建屬於自己的知識體系之後,後臺收到了很多朋友的問題,今天我們就詳細來說說產品經理的知識體系有哪些內容。每一個產品經理,應該都需要根據自己的職業生涯規划去收集資料搭建自己的知識體系。下面是具體搭建知識體系的方法:1.
  • 眾安保險智能中心孫谷飛:如何搭建一個「體系化」的數據中臺?
    第二,加強數據安全管理,我們以集成系統應用的形式,儘量讓數據不要出安全的環境。使得數據在封閉的環境中,就能完成數據的消費。數據審批通過之後,並不是把數據下載下來開放使用,如果這樣,前面所有安全措施都會形同虛設,眾安以集成系統方式提供數據訪問,減少不可控的數據分發。
  • Windows系統環境搭建安裝Web伺服器(IIS)圖文教程
    阿里雲ECS雲伺服器Windows系統安裝WWW Web伺服器(IIS)圖文教程,阿里雲百科網分享:Windows搭建www伺服器教程伺服器:阿里雲ECS雲伺服器;系統環境:Windows Server 2008 R2 企業版64位;注意:ECS雲服務需要配置安全組開放
  • 電視OUT了 搭建影院虐心難點如何搞定(全文)_投影機_投影機應用...
    因為組成家庭影院的設備包括顯示產品和音響產品,有時根據用戶的互動需要還會設置藍光碟機或者遊戲機之類的,而組合中的每種產品都有很多可以選擇的型號,創意影院的搭建應從產品的合理選購開始。物美價廉人人愛,雖然大尺寸電視也同樣可以作為搭建家庭影院的顯示設備,但因為百吋以上電視機的售價通常超過六萬,所以在搭建家庭影院的過程中,很多消費者所看好的顯示設備還是家用投影機。2投影如何選?看戶型「下菜」    投影如何選?
  • omni錢包節點搭建
    開發已整合到Omni Core產品上。一.omni錢包節點搭建由於omni沒有裸露的錢包節點可用,如果您需要開發omni錢包,那麼就得搭建自己的錢包節點。2.錢包節點搭建2.1.安裝環境說明Centos系統C++ 和 javaOmniCore 0.3.1 fork bitcoin 0.13