web-dev-qa-db-ja.com

SparkRのインストール

R-3.2.1の最新バージョンがあります。次に、RにSparkRをインストールします。実行後:

> install.packages("SparkR")

私は戻りました:

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)

また、Spark=をマシンにインストールしました

Spark 1.4.0

この問題を解決するにはどうすればよいですか?

46
Guforu

GitHubリポジトリから直接インストールできます。

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

使用するSpark=のバージョンに対応するタグ(上記の_v2.x.x_)を選択する必要があります。タグの完全なリストは projectページで見つけることができます または GitHub APIを使用してRから直接

_jsonlite::fromJSON("https://api.github.com/repos/Apache/spark/tags")$name
_

ダウンロードページからバイナリパッケージをダウンロードした場合 Rライブラリは_R/lib/SparkR_サブディレクトリにあります。 SparkRを直接インストールするために使用できます。例えば:

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

R libを_.libPaths_に追加することもできます( here から取得):

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

最後に、追加の手順なしでsparkR Shellを使用できます。

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

編集

Spark 2.1.0 Release Notes によると、CRANで今後利用可能になる予定です。

Apache Sparkリリースで構築されたスタンドアロンのインストール可能パッケージ。これはまもなくCRANに提出されます。

SPARK-15799 に従って進捗を確認できます。

Edit 2

SPARK-15799は統合されましたが、CRAN要件を満たすことは難しいことが判明しました(たとえば、 2.2.22.3.12.4.0 )、パッケージはその後削除されました(例: SparkRは2018-05-01にCRANから削除されましたCRAN SparkRパッケージは削除されましたか? )。結果として、元の投稿にリストされているメソッドは、依然として最も信頼できるソリューションです。

Edit 3

OK、 SparkR が再びCRANにバックアップされました、v2.4.1。 install.packages('SparkR')は再び機能するはずです(ミラーがこれを反映するには数日かかる場合があります)

66
zero323

SparkRには、Rパッケージだけでなく、Sparkバックエンド全体を取り込む必要があります。SparkRをアップグレードする場合は、Rパッケージだけでなく、Sparkをアップグレードします。 SparkRの場合、このブログ投稿が役立つかもしれません: https://blog.rstudio.org/2015/07/14/spark-1-4-for-rstudio/

それは言わなければならない:今日では、このすべてを非常に簡単にするため、sparklyrパッケージを参照したいと思うかもしれません。

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

また、SparkRよりも多くの機能を提供し、dplyrへの非常に素晴らしいインターフェイスも提供します。

10
cantdutchthis

EMRでSparkRをSpark 2.0.0で再生しようとしたときにも、同様の問題に直面しました。 EMRクラスターのsparkセッション:

  1. Rstudioサーバーのインストール:EMRクラスターが起動して実行した後、ユーザー「hadoop @」でマスターノードにsshし、rstudioサーバーをダウンロードします

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

yum installを使用してインストールします

Sudo yum install --nogpgcheck rstudio-server-rhel-0.99.903-x86_64.rpm

最後に、rstudio Webコンソールにアクセスするユーザーを追加します。

須藤す

Sudo useraddユーザー名

Sudo echo username:password | chpasswd

  1. Rstudio Webコンソールにアクセスするには、以下のように、マシンからEMRマスターノードへのSSHトンネルを作成する必要があります。

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

  1. ブラウザを開き、localhost:8787と入力してrstudio Webコンソールにアクセスし、username:passwordコンボを使用してログインします。

  2. 必要なRパッケージをインストールするには、最初に以下のようにlibcurlをマスターノードにインストールする必要があります。

須藤ヤムの更新

Sudo yum -y install libcurl-devel

  1. 以下に関する許可の問題を解決します。

須藤-u hdfs hadoop fs -mkdir/user /

須藤-u hdfs hadoop fs -chown/user /

  1. Spark EMRのバージョンを確認し、SPARK_HOMEを設定します:

spark-submit --version

export SPARK_HOME = '/ usr/lib/spark /'

  1. 次に、rstudioコンソールに以下のようにSparkRをインストールします。

install.packages( 'devtools')

devtools :: install_github('Apache/[email protected] '、subdir =' R/pkg ')

install.packages( 'sparklyr')

ライブラリ(SparkR)

ライブラリ(sparklyr)

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

sc <-spark_connect(master = "yarn-client")

3
Joarder Kamal

SparkRのバージョン2.1.2および2.3.0が [〜#〜] cran [〜#〜] のリポジトリで利用できるようになりました。次のようにバージョン2.3.0をインストールできます。

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

注:まず、対応するバージョンのApacheをダウンロードしてインストールする必要がありますSpark from download 、パッケージが正常に機能するようにします。

0
Rafael Díaz