Если вы используете scala, spark-submit
принимает файл jar, вам нужно будет создать проект scala с sbt
в качестве инструмента зависимости / построения, sbt
может взять весь ваш код и объединить его вфлягаВы можете следовать этому гиду .- Подобные подходы существуют для python и java
Update1: spark-shell
предназначен для использования в проведении быстрых экспериментов, когда вызывается spark-shell
, он поставляется с SparkSession
, который создается автоматически, поэтому, когда вы хотитечтобы достичь этого программно, вам нужно было бы вызывать его программно.
Например:
val sparkSession: SparkSession =
SparkSession.builder.appName("awesomeApp").getOrCreate()
// This import is needed to use the $-notation, and imported automatically in `spark-shell` by default
import sparkSession.implicits._
...
//code to generate/import/build your `movieTable` view/table
...
val queryOutputDf=sparkSession.sql(""" SELECT userid AS userid, rating AS rating, movieid AS movieid FROM default.movieTable""");
//the above output is a `dataframe`, it needs to be written to a file
queryOutputDf.rdd.map(_.toString()).saveAsTextFile("/path/to/a/file/with/good/name")
Это позволит достичь вашего намерения для одного запроса, вам придется циклически проходить запросы и передаватьэто к вышесказанному.