web-dev-qa-db-ja.com

SPARK_HOME変数の設定方法は?

リンクからスパークリングウォーターの手順に従ってください http://h2o-release.s3.amazonaws.com/sparkling-water/rel-2.2/0/index.html

端末で実行:

〜/ InstallFile/SparklingWater/sparkling-water-2.2.0 $ bin/sparkling-Shell --conf "spark.executor.memory = 1g"

SPARK_HOME変数をSparkインストールに設定してください

6
roshan_ray

SPARK_HOME変数をインストールして設定する必要があります。UNIXターミナルでは、次のコードを実行して変数を設定します。

export SPARK_HOME="/path/to/spark"

この設定を維持するには、これを.bashrcの最後に追加する必要があります。

インストールについてはこれを参照してください https://www.tutorialspoint.com/Apache_spark/Apache_spark_installation.htm

8
Jader Martins

スパークリングウォーターを使用するマシンにsparkランタイムをダウンロードする必要があります。ローカルダウンロードまたはクラスター化されたspark= on Hadoop。

SPARK_HOME変数は、スパークリングウォーターがsparkランタイムを見つける場所となるフォルダー/フォルダーです。

次の設定SPARK_HOMEでは、Spark 2.1がローカルマシンにダウンロードされており、パスセットは解凍されたspark 2.1です。

SPARK_HOME=/Users/avkashchauhan/tools/spark-2.1.0-bin-hadoop2.6

$ pwd
 /Users/avkashchauhan/tools/sw2/sparkling-water-2.1.14

今、私は以下のようにsparkling-Shellを起動するとうまくいきます:

~/tools/sw2/sparkling-water-2.1.14 $ bin/sparkling-Shell                                                                                                                                                                                        

-----
  Spark master (MASTER)     : local[*]
  Spark home   (SPARK_HOME) : /Users/avkashchauhan/tools/spark-2.1.0-bin-hadoop2.6
  H2O build version         : 3.14.0.2 (weierstrass)
  Spark build version       : 2.1.1
  Scala version             : 2.11
----
3
AvkashChauhan

AnacondaでJupyter Notebookを使用しているときに、これを行うために呼び出される関数findspark.pyは次のことを行います。

def find():
    spark_home = os.environ.get('SPARK_HOME', None)

    if not spark_home:
        for path in [
            '/usr/local/opt/Apache-spark/libexec', # OS X Homebrew
            '/usr/lib/spark/' # AWS Amazon EMR
            # Any other common places to look?
        ]:
            if os.path.exists(path):
                spark_home = path
                break

    if not spark_home:
        raise ValueError("Couldn't find Spark, make sure SPARK_HOME env is set"
                         " or Spark is in an expected location (e.g. from homebrew installation).")

    return spark_home

したがって、次の手順に従います。

1. SPARK_HOMEおよびJava_HOMEを指定します

上記の関数で見たように、Windowsの場合は場所を指定する必要があります。次の関数は、これらの answer を少し変更したバージョンです。 Java_HOMEを指定する必要があるため、変更されています。これは、インストールしたディレクトリです。また、sparkディレクトリを作成しました。ここに、ダウンロードしたバージョンSparkを使用しています)を移動しました。この手順では、これらを確認できます- リンク

import os 
import sys

def configure_spark(spark_home=None, pyspark_python=None):
    spark_home = spark_home or "/path/to/default/spark/home"
    os.environ['SPARK_HOME'] = spark_home
    os.environ['Java_HOME'] = 'C:\Program Files\Java\jre1.8.0_231'

    # Add the PySpark directories to the Python path:
    sys.path.insert(1, os.path.join(spark_home, 'python'))
    sys.path.insert(1, os.path.join(spark_home, 'python', 'pyspark'))
    sys.path.insert(1, os.path.join(spark_home, 'python', 'build'))

    # If PySpark isn't specified, use currently running Python binary:
    pyspark_python = pyspark_python or sys.executable
    os.environ['PYSPARK_PYTHON'] = pyspark_python

configure_spark('C:\spark\spark-2.4.4-bin-hadoop2.6')

2. SparkContextを構成する

ローカルで作業する場合、次の方法でSparkContextを構成する必要があります:(これら link が役に立ちました)

import findspark
from pyspark.conf import SparkConf
from pyspark.context import SparkContext

# Find Spark Locally
location = findspark.find()
findspark.init(location, edit_rc=True)

# Start a SparkContext 
configure = SparkConf().set('spark.driver.Host','127.0.0.1')
sc = pyspark.SparkContext(master = 'local', appName='desiredName', conf=configure)

この手順は私にとってはうまくいきました、ありがとう!。