作者:Harry Zhu
連結:https://zhuanlan.zhihu.com/p/21574497
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
相關内容:
sparklyr包:實作Spark與R的接口,會用dplyr就能玩Spark
概述
大資料時代,做資料分析的人才輩出,Java、Scala、Go、Julia、Python、JavaScript都不斷湧現出很多資料分析的新工具,然而對于資料分析來說,這些工具都不是分析的核心,分析的核心在于對市場業務、對具體資料的了解。相信你也見過太多脫離具體應用場景和業務資料而空談算法的『資料分析大師』了。算法的文章在教科書、論文、已經各種文章裡面都是大把大把的,然而大道至簡,真正能将算法轉化為生産力解決實際問題才是關鍵。

作為統計學出身的人,真心無力折騰Java的設計模式、JS的異步回調,我們更傾向于把精力放在資料、模型、分析、拟合、預測、檢驗、報告等等。在SparkR之後,RStudio公司又推出了全新力作Sparklyr,全面繼承dplyr的操作規範。通過Sparklyr和Docker的完美結合,Spark的大資料計算引擎門檻進一步降低!不僅僅簡化了分布式計算的操作,還簡化了安裝部署的環節,我們隻幾乎不需要做什麼改動就可以直接運用R中的dplyr進行分布式的計算,幾乎不需要學習此前Scala風格的API。
什麼是Sparklyr
Sparklyr顧名思義就是 Spark + dplyr。首先,它實作了将dplyr的data frame所有操作規範對Spark計算引擎的完整封裝。其次,它是的R可以透過Spark的MLib機器學習庫拓展分布式機器學習算法的能力。最後,對于其他Spark功能,我們還可以通過`sparkapi`來調用所有Spark庫中的Scala接口。
目前,最新版本的RStudio 已經內建了Spark引擎,本文将帶你快速進入大資料分析領域。
什麼是Docker
Docker是類似于虛拟機的一種虛拟化軟體,讓我們可以在不同作業系統上運作相同的軟體。它主要解決了虛拟機安裝軟體速度比較慢的問題,相對于虛拟機,Docker的啟動速度是秒級的。本文将通過一個詳細的例子,指導各位R語言的愛好者快速安裝帶有Spark功能的RStudio軟體,快速開啟您的大資料之旅。
軟體安裝
鑒于大量資料分析使用者還是以Windows作業系統為主,或許還深度綁定了Excel這樣的資料分析神器,本文将放棄以Unix視角,采用Windows視角為各位看官介紹軟體安裝過程。
步驟一:安裝Windows版本Docker
你可以進入http://www.docker.com的官網首頁,看到軟體下載下傳連結,這裡需要您的作業系統在Windows 10及其以上版本。如果不想進入官網,也可以點選這個連結:https://download.docker.com/win/beta/InstallDocker.msi
下載下傳之後根據系統提示預設安裝即可,不得不說,Docker是一個神奇的軟體。
步驟二:啟動Docker軟體
點選軟體圖示即可啟動Docker軟體(最新版本号和此圖有可能并不一緻)。接着,您可以選擇打開系統自帶Powershell軟體,向Powershell中複制粘貼如下指令:
docker run -d -p 8787:8787 --name financer index.tenxcloud.com/7harryprince/sparkr-rstudio
複制
這時候隻需要耐心等待您的大資料分析系統安裝完成。(軟體大概會占用4G左右的空間,我已經為你預先為你一站式安裝了最新的 Shiny, R markdown,R notebook,jdk8,gcc5.3,R 3.3 以及其他資料分析常用的R包)
步驟三:通路RStuido軟體
一旦軟體完成安裝,你可以在Chrome或者Edge中輸入下面的位址通路到RStudio軟體:
localhost:8787
複制
最後,輸入預設賬号`harryzhu`,密碼`harryzhu`即可進入RStudio軟體。
推薦系統實戰
library(sparklyr)
library(dplyr)
Sys.setenv(SPARK_HOME="/opt/spark-1.6.0-bin-hadoop2.6")
Sys.getenv("SPARK_HOME")
sc = spark_connect("local")
mtcars_tbl <- copy_to(sc, mtcars,overwrite = TRUE)
複制
未完
求各位看官給點回報~~~
參考資料
- RStudio又搞出了個大殺器!sparklyr包:實作Spark與R的接口,會用dplyr就能玩Spark
- Using Spark with Shiny and R Markdown Slide
- https://channel9.msdn.com/Events/useR-international-R-User-conference/useR2016/Using-Spark-with-Shiny-and-R-Markdown Video
- https://blogs.msdn.microsoft.com/azuredatalake/2016/08/09/rapid-big-data-prototyping-with-microsoft-r-server-on-apache-spark-context-switching-spark-tuning/
- https://databricks.com/blog/2016/07/07/sparkr-tutorial-at-user-2016.html?twitter=@bigdata
- http://conferences.oreilly.com/strata/hadoop-big-data-ny/public/schedule/detail/52369?twitter=@bigdata
- Top 5 Mistakes When Writing Spark Applications
「歡迎下載下傳sparkrstuido鏡像」