Я пытаюсь создать код Spark Scala, который может читать любой файл с разным количеством столбцов.Могу ли я динамически написать код scala / spark, скомпилировать и выполнить его.мне действительно нужно SBT.Какой идеальный способ достичь этой цели.
когда я запускаю scala-код с использованием скрипта оболочки или scalac code.scala, он говорит:
hadoop@namenode1:/usr/local/scala/examples$ ./survey.sh
/usr/local/scala/examples/./survey.sh:6: error: not found: value spark
val survey = spark.read.format("com.databricks.spark.csv").option("header","true").option("nullValue","NA").option("timestampFormat","yyyy-MM-dd'T'HH:mm:ss").option("mode","failfast").option("inferchema","true").load("/tmp/survey.csv")
^
/usr/local/scala/examples/./survey.sh:19: error: not found: type paste
:paste
^
/usr/local/scala/examples/./survey.sh:37: error: not found: value udf
val parseGenderUDF = udf( parseGender _ )
^
three errors found
Я хочу что-то вроде
, чтобы динамически генерировать код file.scala с использованием скрипта оболочкизавершите его, используя
scalac file.scala
, затем выполните его
scala file.scala
Но возможно ли это.как это сделать.
hadoop@namenode1:/usr/local/spark/examples/src/main/scala/org/apache/spark/examples$ cat Survey.scala
import org.apache.spark.sql.{SparkSession}
object Survey {
def main(args: Array[String]) {
val spark= SparkSession.builder
.master("local")
.appName("Survey")
.getOrCreate()
val survey = spark.read.format("com.databricks.spark.csv").option("header","true").option("nullValue","NA").option("timestampFormat","yyyy-MM-dd'T'HH:mm:ss").option("mode","failfast").option("inferchema","true").load("/tmp/survey.csv")
survey.show()
}
}
ошибка при выполнении
hadoop@namenode1:/usr/local/spark/examples/src/main/scala/org/apache/spark/examples$ scalac Survey.scala
Survey.scala:1: error: object apache is not a member of package org
import org.apache.spark.sql.{SparkSession}
^
Survey.scala:5: error: not found: value SparkSession
val spark= SparkSession.builder
^
two errors found
hadoop@namenode1:/usr/local/spark/examples/src/main/scala/org/apache/spark/examples$