Я использую CDH 5.2. Я могу использовать spark-shell для выполнения команд.
- Как запустить файл (file.spark), содержащий искровые команды.
- Есть ли способ запускать / компилировать программы scala в CDH 5.2 без sbt?
заранее спасибо
Я использую CDH 5.2. Я могу использовать spark-shell для выполнения команд.
заранее спасибо
Чтобы загрузить внешний файл из искровой оболочки, просто выполните
:load PATH_TO_FILE
Это вызовет все в вашем файле.
У меня нет решения для вашего вопроса SBT, хотя извините :-)
В командной строке вы можете использовать
spark-shell -i file.scala
для запуска кода, написанного на file.scala
spark shell -h
- person hbogert; 04.08.2015
spark-submit [options] <app jar | python file> [app arguments]
- person OneCricketeer; 20.01.2017
Вы можете использовать sbt или maven для компиляции искровых программ. Просто добавьте искру как зависимость от maven
<repository>
<id>Spark repository</id>
<url>http://www.sparkjava.com/nexus/content/repositories/spark/</url>
</repository>
А потом зависимость:
<dependency>
<groupId>spark</groupId>
<artifactId>spark</artifactId>
<version>1.2.0</version>
</dependency>
Что касается запуска файла с помощью искровых команд: вы можете просто сделать это:
echo"
import org.apache.spark.sql.*
ssc = new SQLContext(sc)
ssc.sql("select * from mytable").collect
" > spark.input
Теперь запустите сценарий команд:
cat spark.input | spark-shell
Просто чтобы дать более перспективный ответ
Spark-shell - это scala repl
Вы можете ввести : help, чтобы увидеть список операций, которые возможны внутри оболочки scala.
scala> :help
All commands can be abbreviated, e.g., :he instead of :help.
:edit <id>|<line> edit history
:help [command] print this summary or command-specific help
:history [num] show the history (optional num is commands to show)
:h? <string> search the history
:imports [name name ...] show import history, identifying sources of names
:implicits [-v] show the implicits in scope
:javap <path|class> disassemble a file or class name
:line <id>|<line> place line(s) at the end of history
:load <path> interpret lines in a file
:paste [-raw] [path] enter paste mode or paste a file
:power enable power user mode
:quit exit the interpreter
:replay [options] reset the repl and replay all previous commands
:require <path> add a jar to the classpath
:reset [options] reset the repl to its initial state, forgetting all session entries
:save <path> save replayable session to a file
:sh <command line> run a shell command (result is implicitly => List[String])
:settings <options> update compiler options, if possible; see reset
:silent disable/enable automatic printing of results
:type [-v] <expr> display the type of an expression without evaluating it
:kind [-v] <expr> display the kind of expression's type
:warnings show the suppressed warnings from the most recent line which had any
: загрузить строки интерпретации в файл
Протестировано как на spark-shell
version 1.6.3
, так и на spark2-shell
version 2.3.0.2.6.5.179-4
, вы можете напрямую подключаться к стандартному вводу оболочки, например
spark-shell <<< "1+1"
или в вашем случае использования
spark-shell < file.spark
Вы можете запускать, как вы запускаете свой сценарий оболочки. Этот пример для запуска из примера среды командной строки
./bin/spark-shell
: - это путь к вашей искровой оболочке в bin /home/fold1/spark_program.py
: - Это путь, по которому находится ваша программа на Python.
So:
./bin.spark-shell /home/fold1/spark_prohram.py