Installatie van SparkR

Ik heb de laatste versie van R – 3.2.1. Nu wil ik SparkR op R installeren. Nadat ik heb uitgevoerd:

> install.packages("SparkR")

Ik ben terug:

Installing package into ‘/home/user/R/x86_64-pc-linux-gnu-library/3.2’
(as ‘lib’ is unspecified)
Warning in install.packages :
  package ‘SparkR’ is not available (for R version 3.2.1)

Ik heb Spark ook op mijn computer geïnstalleerd

Spark 1.4.0

Hoe kan ik dit probleem oplossen?


Antwoord 1, autoriteit 100%

U kunt rechtstreeks vanuit een GitHub-repository installeren:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('apache/[email protected]', subdir='R/pkg')

Je moet een tag kiezen (v2.x.xhierboven) die overeenkomt met de versie van Spark die je gebruikt. Je kunt een volledige lijst met tags vinden op de projectpaginaof rechtstreeks van R met behulp van GitHub-API:

jsonlite::fromJSON("https://api.github.com/repos/apache/spark/tags")$name

Als je een binair pakket hebt gedownload van een downloadpaginaR-bibliotheek bevindt zich in een R/lib/SparkRsubmap. Het kan worden gebruikt om SparkRrechtstreeks te installeren. Bijvoorbeeld:

$ export SPARK_HOME=/path/to/spark/directory
$ cd $SPARK_HOME/R/pkg/
$ R -e "devtools::install('.')"

Je kunt ook R lib toevoegen aan .libPaths(overgenomen van hier):

Sys.setenv(SPARK_HOME='/path/to/spark/directory')
.libPaths(c(file.path(Sys.getenv('SPARK_HOME'), 'R', 'lib'), .libPaths()))

Ten slotte kunt u de SparkR-shell gebruiken zonder extra stappen:

$ /path/to/spark/directory/bin/sparkR

Bewerken

Volgens Spark 2.1.0 release-opmerkingenzou in de toekomst beschikbaar moeten zijn op CRAN:

Zelfstandig installeerbaar pakket gebouwd met de Apache Spark-release. We zullen dit binnenkort indienen bij CRAN.

Je kunt SPARK-15799volgen om de voortgang te controleren.

p>

Bewerk 2

Hoewel SPARK-15799 is samengevoegd, bleek het voldoen aan de CRAN-vereisten een uitdaging (zie bijvoorbeeld discussies over 2.2.2, 2.3.1, 2.4.0), en de pakketten zijn vervolgens verwijderd (zie bijvoorbeeld SparkR is verwijderd uit CRAN op 01-05-2018, CRAN SparkR-pakket verwijderd?). Aangezien de resultaatmethoden die in het oorspronkelijke bericht worden vermeld, nog steeds de meest betrouwbare oplossingen zijn.

Bewerk 3

OK, SparkRstaat weer op CRAN, v2.4.1. install.packages('SparkR')zou weer moeten werken (het kan een paar dagen duren voordat de mirrors dit weergeven)


Antwoord 2, autoriteit 15%

SparkR vereist niet alleen een R-pakket, maar een volledige Spark-backend. Als u SparkR wilt upgraden, upgradet u Spark, niet alleen het R-pakket. Als je SparkR wilt gebruiken, dan kan deze blogpost je misschien helpen: https: //blog.rstudio.org/2015/07/14/spark-1-4-for-rstudio/.

Het moet echter gezegd worden: tegenwoordig wil je misschien verwijzen naar het sparklyr-pakket, omdat dit dit allemaal een stuk eenvoudiger maakt.

install.packages("devtools")
devtools::install_github("rstudio/sparklyr")
library(sparklyr)
spark_install(version = "1.6.2")
spark_install(version = "2.0.0")

Het biedt ook meer functionaliteit dan SparkR en een erg mooie interface voor dplyr.


Antwoord 3, autoriteit 4%

Ik kreeg ook te maken met een soortgelijk probleem toen ik met SparkR in EMR met Spark 2.0.0 probeerde te spelen. Ik zal hier de stappen plaatsen die ik heb gevolgd om rstudio-server, SparkR, sparklyr te installeren en uiteindelijk verbinding te maken met een Spark-sessie in een EMR-cluster:

  1. Installeer rstudio-server:
    Nadat het EMR-cluster actief is, ssh naar het hoofdknooppunt met gebruiker ‘[email protected]’ en download rstudio-server

wget https://download2.rstudio.org/ rstudio-server-rhel-0.99.903-x86_64.rpm

installeer dan met yum install

sudo yum install –nogpgcheck rstudio-server-rhel-0.99.903-x86_64.rpm

voeg ten slotte een gebruiker toe om toegang te krijgen tot de rstudio-webconsole als:

sudo su

sudo useradd gebruikersnaam

sudo echo gebruikersnaam:wachtwoord | chpasswd

  1. Om toegang te krijgen tot de rstudio-webconsole moet u een SSH-tunnel maken van uw machine naar het EMR-hoofdknooppunt zoals hieronder:

ssh -NL 8787:ec2-emr-master-node-ip.compute-1.amazonaws.com:8787 [email protected]&

  1. Open nu een willekeurige browser en typ localhost:8787om naar de rstudio-webconsole te gaan en gebruik de combinatie username:passwordom in te loggen.

  2. Om de vereiste R-pakketten te installeren, moet u eerst libcurlin het hoofdknooppunt installeren, zoals hieronder:

sudo yum-update

sudo yum -y install libcurl-devel

  1. Los toestemmingsproblemen op met:

sudo -u hdfs hadoop fs -mkdir /user/

sudo -u hdfs hadoop fs -chown /user/

  1. Controleer de Spark-versie in EMR en stel SPARK_HOMEin:

spark-submit –version

SPARK_HOME=’/usr/lib/spark/’ exporteren

  1. Installeer nu in de rstudio-console SparkRzoals hieronder:

install.packages(‘devtools’)

devtools::install_github(‘apache/[email protected]′, subdir=’R/pkg’)

install.packages(‘sparklyr’)

bibliotheek(SparkR)

bibliotheek(sparklyr)

Sys.setenv(SPARK_HOME=’/usr/lib/spark’)

sc <- spark_connect(master = “yarn-client”)


Antwoord 4

Nu zijn versies 2.1.2 en 2.3.0 van SparkR nu beschikbaar in de repository van CRAN, u kunt versie 2.3.0 als volgt installeren:

install.packages("https://cran.r-project.org/src/contrib/Archive/SparkR/SparkR_2.3.0.tar.gz", repos = NULL, type="source")

Opmerking:u moet eerst de bijbehorende versie van Apache Spark downloaden en installeren vanaf downloaden, zodat het pakket correct werkt.

Other episodes