转自http://blog.sina.com.cn/s/blog_614408630102vyom.html
原文地址:http://www.r-bloggers.com/installing-and-starting-sparkr-locally-on-windows-os-and-rstudio/
毋庸置疑,Spark已经成为最火的大数据工具,本文详细介绍安装SparkR的方法,让你在5分钟之内能在本地使用。
环境要求:java 6 + (下载地址:http://www.java.com/en/download/chrome.jsp)
R 及 Rstudio
Rtools (下载地址:https://github.com/stan-dev/rstan/wiki/Install-Rtools-for-Windows)
第一步:下载Spark
在浏览器打开 http://spark.apache.org/,点击右边的绿色按钮“Download Spark”
你会看到如下页面:
按照上面的 1到 3 创建下载链接。
在“2. Choose a package type” 选项中,选择一个 pre-built 的类型(如下图)。
因为我们打算在Windows下本地运行,所以选择 Pre-built package for Hadoop 2.6 and later 。
在“3. Choose a download type” 选择 “Direct Download” 。
选好之后,一个下载链接就在4. Download Spark”创建好了。
把这个压缩文件下载到你的电脑上。
第二步:解压缩安装文件
解压缩到路径“C:/Apache/Spark-1.4.1″
第三步:用命令行运行
打开命令行窗口(开始-搜索框中输入cmd),更改路径:
输入命令 “.\bin\sparkR”
成功后会看到一些日志,大约15s后,一切顺利的话,会有“Welcome to SparkR!”
设置环境变量:
在“我的电脑”右击,选择“属性”:
选择“Advanced system settings”
点击“Environment Variables”,在下面的“System variables“里面找到Path,并加入“C:\ProgramData\Oracle\Java\javapath;“
第四步:在Rstudio中运行
#(附一个例子)
# Set the system environment variables
Sys.setenv(SPARK_HOME = “C:/Apache/spark-1.4.1”)
.libPaths(c(file.path(Sys.getenv(“SPARK_HOME”), “R”, “lib”), .libPaths()))
library(SparkR)
sc <- sparkR.init(master = “local”)
sqlContext <- sparkRSQL.init(sc)
DF <- createDataFrame(sqlContext, faithful)
head(DF)
localDF <- data.frame(name=c(“John”, “Smith”, “Sarah”), age=c(19, 23, 18))
df <- createDataFrame(sqlContext, localDF)
printSchema(df)
path <- file.path(Sys.getenv(“SPARK_HOME”), “examples/src/main/resources/people.json”)
peopleDF <- jsonFile(sqlContext, path)
printSchema(peopleDF)
registerTempTable(peopleDF, “people”)
teenagers <- sql(sqlContext, “SELECT name FROM people WHERE age >= 13 AND age <= 19”)
teenagersLocalDF <- collect(teenagers)
print(teenagersLocalDF)
sparkR.stop()
# 另一个例子 wordcount————–
sc <- sparkR.init(master=”local”, “RwordCount”)
lines <- textFile(sc, “README.md”)
words <- flatMap(lines,
function(line) {
strsplit(line, " ")[[1]]
})
wordCount <- lapply(words, function(word) { list(word, 1L) })
counts <- reduceByKey(wordCount, “+”, 2L)
output <- collect(counts)
for (wordcount in output) {
cat(wordcount[[1]], “: “, wordcount[[2]], “\n”)
}
参考资料:
安装 http://thinkerou.com/2015-05/How-to-Build-Spark-on-Windows/
学习 http://www.danielemaasit.com/getting-started-with-sparkr/