zoukankan      html  css  js  c++  java
  • Apache Spark技术实战之5 -- SparkR的安装及使用

    欢迎转载,转载请注明出处,徽沪一郎。

    概要

    根据论坛上的信息,在Sparkrelease计划中,在Spark 1.3中有将SparkR纳入到发行版的可能。本文就提前展示一下如何安装及使用SparkR.

    SparkR的出现解决了R语言中无法级联扩展的难题,同时也极大的丰富了Spark在机器学习方面能够使用的Lib库。SparkR和Spark MLLIB将共同构建出Spark在机器学习方面的优势地位。

    使用SparkR能让用户同时使用Spark RDD提供的丰富Api,也可以调用R语言中丰富的Lib库。

    安装SparkR

    先决条件

    1. 已经安装好openjdk 7
    2. 安装好了R

    安装步骤:

    步骤1: 运行R Shell

    bash# R
    

    步骤2:在R shell中安装rJava

    install.packages("rJava")
    

    步骤3: 在R shell中安装devtools

    install.packages("devtools")
    

    步骤4: 安装好rJava及devtools,接下来安装SparkR

    library(devtools)
    install_github("amplab-extras/SparkR-pkg", subdir="pkg")
    

    使用SparkR来运行wordcount

    安装完SparkR之后,可以用wordcount来检验安装正确与否。

    步骤1:在R shell中加载SparkR

    library(SparkR)
    

    步骤2:初始化SparkContext及执行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]], "
    ")
    }
    

    如果想将SparkR运行于集群环境中,只需要将master=local,换成spark集群的监听地址即可

    小结

    时间匆忙,还有两件事情没有来得及细细分析。

    1. SparkR的代码实现
    2. 如果很好的将R中支持的数据挖掘算法与Spark并行化处理能力很好的结合

    参考资料

    1. https://github.com/amplab-extras/SparkR-pkg
  • 相关阅读:
    HTTP的三次握手
    HTTP协议的发展历史
    二分图 (最大匹配 + 最小点覆盖 + 最少路径覆盖 + 最大独立集)
    昂贵的聘礼 POJ
    Cow Contest POJ 3660 (Floyed ) (最短路专题)
    B-number HDU
    You Are the One HDU
    0 or 1 HDU
    Trie树模板 + 例题
    The Shortest Path in Nya Graph HDU
  • 原文地址:https://www.cnblogs.com/hseagle/p/3998853.html
Copyright © 2011-2022 走看看