2017-03-29 3 views
0

私は、外部バックエンドで発火する水を実行するステップをhereから実行していました。私はspark 1.4.1sparkling-water-1.4.16を使用しています。私は拡張h2o jarをビルドし、H2O_ORIGINAL_JARH2O_EXTENDED_JARシステム変数をエクスポートしました。私は外部H2Oバックエンドで発火する水を実行する

java -jar $H2O_EXTENDED_JAR -md5skip -name test 

とH2Oのバックエンドを開始しかし、私は

import org.apache.spark.h2o._ 
val conf = new H2OConf(sc).setExternalClusterMode().useManualClusterStart().setCloudName("test”) 
val hc = H2OContext.getOrCreate(sc, conf) 

H2OConfを取得しよう

./bin/sparkling-shell 

とその中を経由してスパークリングウォーターを起動したときには、と二行目で失敗します

<console>:24: error: trait H2OConf is abstract; cannot be instantiated 
    val conf = new H2OConf(sc).setExternalClusterMode().useManualClusterStart().setCloudName("test") 
      ^

私は--jarsパラメータを持つ新しくビルドされた拡張h2o jarを、炭酸水やスタンドアロンのスパークに進まずに追加しようとしました。誰にもヒントはありますか?

+0

チュートリアルのみです'sparkling-water-1.4.16'の時代にはまだクラスが抽象的だったため、このように使用できなくなりました。 – JaKu

+0

外部クラスタは2. + SWバージョンでのみサポートされるようになりました(SW1.6で拡張される予定です)。 1.4バージョンのSparkを使用する理由 - それは本当に古いです(Sparkエコシステムの現在の状態に関して)。 – Michal

+0

レガシーシステムが理由です。近いうちにアップグレードを計画していますが、今は十分な時間がありません。 – JaKu

答えて

0

これは2.0より前のバージョンのSparkではサポートされていません。

0

輝くjarファイルの最新バージョンをダウンロードして、火花シェルを起動中にそれを追加します。

./bin/sparkling-shell --master yarn-client --jars "<path to the jar located>" 

その後、拡張H2Oドライバを設定することで、コードを実行します。

import org.apache.spark.h2o._ 

val conf = new H2OConf(spark).setExternalClusterMode().useAutoClusterStart().setH2ODriverPath("//home//xyz//sparkling-water-2.2.5/bin//h2odriver-sw2.2.5-hdp2.6-extended.jar").setNumOfExternalH2ONodes(2).setMapperXmx("6G") 

val hc = H2OContext.getOrCreate(spark, conf) 
関連する問題